./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 803cd42f Calling Ultimate with: /root/.sdkman/candidates/java/current/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerTermination.xml -i ../sv-benchmarks/c/reducercommutativity/rangesum.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Termination-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(F end) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 4dc91bf2fc8981aab63c1ee768384f1c8f580edfe4618d65089a78f799b6ddb8 --- Real Ultimate output --- This is Ultimate 0.2.5-tmp.dk.eval-assert-order-craig-803cd42-m [2024-11-23 02:15:37,750 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-11-23 02:15:37,806 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Termination-32bit-Automizer_Default.epf [2024-11-23 02:15:37,811 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-11-23 02:15:37,812 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-11-23 02:15:37,840 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-11-23 02:15:37,840 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-11-23 02:15:37,841 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-11-23 02:15:37,841 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-11-23 02:15:37,842 INFO L153 SettingsManager]: * Use memory slicer=true [2024-11-23 02:15:37,842 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-11-23 02:15:37,842 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-11-23 02:15:37,842 INFO L153 SettingsManager]: * Use SBE=true [2024-11-23 02:15:37,843 INFO L151 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2024-11-23 02:15:37,843 INFO L153 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2024-11-23 02:15:37,843 INFO L153 SettingsManager]: * Use old map elimination=false [2024-11-23 02:15:37,844 INFO L153 SettingsManager]: * Use external solver (rank synthesis)=false [2024-11-23 02:15:37,844 INFO L153 SettingsManager]: * Use only trivial implications for array writes=true [2024-11-23 02:15:37,844 INFO L153 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2024-11-23 02:15:37,844 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-11-23 02:15:37,845 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2024-11-23 02:15:37,845 INFO L153 SettingsManager]: * sizeof long=4 [2024-11-23 02:15:37,845 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-11-23 02:15:37,846 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-11-23 02:15:37,846 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-11-23 02:15:37,846 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2024-11-23 02:15:37,846 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2024-11-23 02:15:37,847 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2024-11-23 02:15:37,847 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-11-23 02:15:37,847 INFO L153 SettingsManager]: * Check unreachability of reach_error function=false [2024-11-23 02:15:37,847 INFO L153 SettingsManager]: * sizeof long double=12 [2024-11-23 02:15:37,848 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-11-23 02:15:37,848 INFO L153 SettingsManager]: * Assume nondeterminstic values are in range=false [2024-11-23 02:15:37,848 INFO L153 SettingsManager]: * Use constant arrays=true [2024-11-23 02:15:37,848 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-11-23 02:15:37,849 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-11-23 02:15:37,849 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-11-23 02:15:37,849 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-11-23 02:15:37,849 INFO L151 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2024-11-23 02:15:37,850 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-23 02:15:38,041 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-11-23 02:15:38,058 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-11-23 02:15:38,061 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-11-23 02:15:38,063 INFO L270 PluginConnector]: Initializing CDTParser... [2024-11-23 02:15:38,063 INFO L274 PluginConnector]: CDTParser initialized [2024-11-23 02:15:38,064 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/reducercommutativity/rangesum.i [2024-11-23 02:15:39,440 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-11-23 02:15:39,627 INFO L384 CDTParser]: Found 1 translation units. [2024-11-23 02:15:39,628 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/reducercommutativity/rangesum.i [2024-11-23 02:15:39,635 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b60a282d9/98463b3fb1d145abb37389327366a1f9/FLAG67c434127 [2024-11-23 02:15:39,657 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b60a282d9/98463b3fb1d145abb37389327366a1f9 [2024-11-23 02:15:39,659 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-11-23 02:15:39,661 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2024-11-23 02:15:39,662 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-11-23 02:15:39,663 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-11-23 02:15:39,667 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-11-23 02:15:39,668 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 02:15:39" (1/1) ... [2024-11-23 02:15:39,670 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@3448eb5d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:15:39, skipping insertion in model container [2024-11-23 02:15:39,670 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 02:15:39" (1/1) ... [2024-11-23 02:15:39,688 INFO L175 MainTranslator]: Built tables and reachable declarations [2024-11-23 02:15:39,822 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-23 02:15:39,829 INFO L200 MainTranslator]: Completed pre-run [2024-11-23 02:15:39,845 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-23 02:15:39,858 INFO L204 MainTranslator]: Completed translation [2024-11-23 02:15:39,858 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:15:39 WrapperNode [2024-11-23 02:15:39,859 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-11-23 02:15:39,859 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-11-23 02:15:39,860 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-11-23 02:15:39,860 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-11-23 02:15:39,865 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:15:39" (1/1) ... [2024-11-23 02:15:39,870 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:15:39" (1/1) ... [2024-11-23 02:15:39,888 INFO L138 Inliner]: procedures = 17, calls = 23, calls flagged for inlining = 7, calls inlined = 7, statements flattened = 142 [2024-11-23 02:15:39,889 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-11-23 02:15:39,890 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-11-23 02:15:39,890 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-11-23 02:15:39,890 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-11-23 02:15:39,899 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:15:39" (1/1) ... [2024-11-23 02:15:39,899 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:15:39" (1/1) ... [2024-11-23 02:15:39,903 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:15:39" (1/1) ... [2024-11-23 02:15:39,916 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-23 02:15:39,917 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:15:39" (1/1) ... [2024-11-23 02:15:39,917 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:15:39" (1/1) ... [2024-11-23 02:15:39,922 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:15:39" (1/1) ... [2024-11-23 02:15:39,925 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:15:39" (1/1) ... [2024-11-23 02:15:39,926 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:15:39" (1/1) ... [2024-11-23 02:15:39,927 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:15:39" (1/1) ... [2024-11-23 02:15:39,929 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-11-23 02:15:39,930 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-11-23 02:15:39,930 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-11-23 02:15:39,930 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-11-23 02:15:39,930 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:15:39" (1/1) ... [2024-11-23 02:15:39,935 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:39,943 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:39,957 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-23 02:15:39,961 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-23 02:15:40,003 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-11-23 02:15:40,003 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-11-23 02:15:40,003 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2024-11-23 02:15:40,003 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2024-11-23 02:15:40,004 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2024-11-23 02:15:40,004 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2024-11-23 02:15:40,004 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-11-23 02:15:40,004 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-11-23 02:15:40,004 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2024-11-23 02:15:40,004 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#1 [2024-11-23 02:15:40,004 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2024-11-23 02:15:40,093 INFO L238 CfgBuilder]: Building ICFG [2024-11-23 02:15:40,096 INFO L264 CfgBuilder]: Building CFG for each procedure with an implementation [2024-11-23 02:15:40,344 INFO L? ?]: Removed 35 outVars from TransFormulas that were not future-live. [2024-11-23 02:15:40,344 INFO L287 CfgBuilder]: Performing block encoding [2024-11-23 02:15:40,354 INFO L311 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-11-23 02:15:40,354 INFO L316 CfgBuilder]: Removed 5 assume(true) statements. [2024-11-23 02:15:40,355 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 02:15:40 BoogieIcfgContainer [2024-11-23 02:15:40,355 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-11-23 02:15:40,355 INFO L112 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2024-11-23 02:15:40,356 INFO L270 PluginConnector]: Initializing BuchiAutomizer... [2024-11-23 02:15:40,359 INFO L274 PluginConnector]: BuchiAutomizer initialized [2024-11-23 02:15:40,359 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-11-23 02:15:40,360 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 23.11 02:15:39" (1/3) ... [2024-11-23 02:15:40,361 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@65122d16 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 23.11 02:15:40, skipping insertion in model container [2024-11-23 02:15:40,361 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-11-23 02:15:40,361 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 02:15:39" (2/3) ... [2024-11-23 02:15:40,362 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@65122d16 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 23.11 02:15:40, skipping insertion in model container [2024-11-23 02:15:40,362 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-11-23 02:15:40,362 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 02:15:40" (3/3) ... [2024-11-23 02:15:40,363 INFO L332 chiAutomizerObserver]: Analyzing ICFG rangesum.i [2024-11-23 02:15:40,416 INFO L300 stractBuchiCegarLoop]: Interprodecural is true [2024-11-23 02:15:40,416 INFO L301 stractBuchiCegarLoop]: Hoare is None [2024-11-23 02:15:40,417 INFO L302 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2024-11-23 02:15:40,418 INFO L303 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2024-11-23 02:15:40,418 INFO L304 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2024-11-23 02:15:40,419 INFO L305 stractBuchiCegarLoop]: Difference is false [2024-11-23 02:15:40,419 INFO L306 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2024-11-23 02:15:40,419 INFO L310 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2024-11-23 02:15:40,422 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-23 02:15:40,439 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 13 [2024-11-23 02:15:40,439 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:15:40,439 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:15:40,445 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2024-11-23 02:15:40,445 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2024-11-23 02:15:40,445 INFO L332 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2024-11-23 02:15:40,446 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-23 02:15:40,448 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 13 [2024-11-23 02:15:40,448 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:15:40,449 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:15:40,449 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2024-11-23 02:15:40,449 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2024-11-23 02:15:40,456 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-23 02:15:40,456 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-23 02:15:40,461 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:40,461 INFO L85 PathProgramCache]: Analyzing trace with hash 29858, now seen corresponding path program 1 times [2024-11-23 02:15:40,468 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:40,468 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [168801940] [2024-11-23 02:15:40,469 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:15:40,469 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:40,564 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:40,566 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:15:40,578 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:40,594 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:15:40,596 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:40,596 INFO L85 PathProgramCache]: Analyzing trace with hash 1379, now seen corresponding path program 1 times [2024-11-23 02:15:40,596 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:40,597 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2131039410] [2024-11-23 02:15:40,597 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:15:40,597 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:40,604 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:40,605 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:15:40,608 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:40,610 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:15:40,611 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:40,611 INFO L85 PathProgramCache]: Analyzing trace with hash 28693956, now seen corresponding path program 1 times [2024-11-23 02:15:40,612 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:40,612 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [245715587] [2024-11-23 02:15:40,612 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:15:40,612 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:40,631 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:40,631 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:15:40,642 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:40,645 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:15:40,994 INFO L204 LassoAnalysis]: Preferences: [2024-11-23 02:15:40,995 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-23 02:15:40,995 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-23 02:15:40,995 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-23 02:15:40,995 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-23 02:15:40,995 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:40,995 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-23 02:15:40,995 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-23 02:15:40,995 INFO L132 ssoRankerPreferences]: Filename of dumped script: rangesum.i_Iteration1_Lasso [2024-11-23 02:15:40,995 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-23 02:15:40,996 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-23 02:15:41,007 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:41,013 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:41,015 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:41,017 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:41,019 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:41,021 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:41,023 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:41,024 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:41,026 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:41,028 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:41,030 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:41,033 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:41,045 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:41,047 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:41,049 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:41,201 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:41,203 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:41,205 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:41,206 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:41,208 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:41,446 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-23 02:15:41,449 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-23 02:15:41,451 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:41,451 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:41,456 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-23 02:15:41,458 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-23 02:15:41,458 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:41,469 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:41,470 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-23 02:15:41,470 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:41,470 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:41,470 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:41,472 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-23 02:15:41,472 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-23 02:15:41,474 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:41,481 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-23 02:15:41,482 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:41,483 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:41,484 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-23 02:15:41,488 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-23 02:15:41,489 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:41,500 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:41,500 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-23 02:15:41,500 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:41,500 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:41,500 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:41,501 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-23 02:15:41,501 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-23 02:15:41,502 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:41,512 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (3)] Ended with exit code 0 [2024-11-23 02:15:41,513 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:41,513 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:41,515 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-23 02:15:41,516 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-23 02:15:41,518 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:41,529 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:41,529 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-23 02:15:41,530 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:41,530 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:41,530 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:41,531 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-23 02:15:41,531 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-23 02:15:41,533 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:41,540 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (4)] Forceful destruction successful, exit code 0 [2024-11-23 02:15:41,540 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:41,541 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:41,542 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-23 02:15:41,543 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-23 02:15:41,545 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:41,555 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:41,555 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-23 02:15:41,555 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:41,555 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:41,555 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:41,556 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-23 02:15:41,556 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-23 02:15:41,557 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:41,569 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-23 02:15:41,569 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:41,570 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:41,572 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-23 02:15:41,573 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-23 02:15:41,574 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:41,584 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:41,584 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-23 02:15:41,584 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:41,584 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:41,584 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:41,585 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-23 02:15:41,585 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-23 02:15:41,588 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:41,595 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (6)] Ended with exit code 0 [2024-11-23 02:15:41,595 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:41,596 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:41,598 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-23 02:15:41,599 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-23 02:15:41,600 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:41,610 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:41,610 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-23 02:15:41,610 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:41,610 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:41,611 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:41,611 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-23 02:15:41,611 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-23 02:15:41,612 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:41,625 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-23 02:15:41,626 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:41,626 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:41,629 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-23 02:15:41,630 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-23 02:15:41,631 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:41,641 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:41,642 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-23 02:15:41,642 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:41,642 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:41,642 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:41,643 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-23 02:15:41,643 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-23 02:15:41,644 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:41,665 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (8)] Ended with exit code 0 [2024-11-23 02:15:41,666 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:41,666 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:41,667 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-23 02:15:41,668 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-23 02:15:41,669 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:41,683 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:41,683 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-23 02:15:41,683 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:41,683 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:41,683 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:41,684 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-23 02:15:41,684 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-23 02:15:41,685 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:41,697 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-23 02:15:41,701 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:41,702 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:41,703 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-23 02:15:41,704 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-23 02:15:41,707 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:41,718 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:41,718 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-23 02:15:41,718 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:41,718 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:41,718 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:41,719 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-23 02:15:41,719 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-23 02:15:41,721 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:41,727 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (10)] Forceful destruction successful, exit code 0 [2024-11-23 02:15:41,728 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:41,728 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:41,730 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-23 02:15:41,744 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-23 02:15:41,749 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:41,766 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:41,766 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-23 02:15:41,766 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:41,766 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:41,766 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:41,767 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-23 02:15:41,767 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-23 02:15:41,772 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:41,785 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (11)] Forceful destruction successful, exit code 0 [2024-11-23 02:15:41,785 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:41,786 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:41,787 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-23 02:15:41,790 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-23 02:15:41,790 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:41,814 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:41,815 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:41,815 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:41,815 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:41,817 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-23 02:15:41,817 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-23 02:15:41,820 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:41,833 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (12)] Ended with exit code 0 [2024-11-23 02:15:41,833 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:41,833 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:41,834 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-23 02:15:41,840 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-23 02:15:41,841 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:41,852 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:41,852 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:41,852 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:41,852 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:41,854 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-23 02:15:41,855 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-23 02:15:41,862 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:41,869 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (13)] Forceful destruction successful, exit code 0 [2024-11-23 02:15:41,870 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:41,870 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:41,871 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-23 02:15:41,872 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-23 02:15:41,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-23 02:15:41,884 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:41,884 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:41,884 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:41,884 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:41,890 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-23 02:15:41,890 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-23 02:15:41,893 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:41,906 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (14)] Ended with exit code 0 [2024-11-23 02:15:41,907 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:41,907 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:41,909 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-23 02:15:41,910 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-23 02:15:41,914 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:41,924 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:41,925 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-23 02:15:41,925 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:41,925 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:41,925 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:41,926 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-23 02:15:41,926 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-23 02:15:41,927 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:41,933 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (15)] Forceful destruction successful, exit code 0 [2024-11-23 02:15:41,933 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:41,933 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:41,936 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-23 02:15:41,939 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-23 02:15:41,939 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:41,950 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:41,950 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-23 02:15:41,950 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:41,950 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:41,950 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:41,951 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-23 02:15:41,951 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-23 02:15:41,952 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:41,959 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (16)] Ended with exit code 0 [2024-11-23 02:15:41,959 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:41,959 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:41,960 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-23 02:15:41,963 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-23 02:15:41,964 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:41,974 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:41,974 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:41,974 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:41,974 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:41,981 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-23 02:15:41,981 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-23 02:15:41,988 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:41,994 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-23 02:15:41,994 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:41,995 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:41,996 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-23 02:15:41,997 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-23 02:15:41,998 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:42,009 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:42,010 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:42,010 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:42,010 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:42,012 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-23 02:15:42,012 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-23 02:15:42,017 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:42,023 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-23 02:15:42,024 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:42,025 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:42,027 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-23 02:15:42,028 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-23 02:15:42,029 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:42,039 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:42,040 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-23 02:15:42,040 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:42,040 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:42,040 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:42,041 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-23 02:15:42,041 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-23 02:15:42,042 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:42,048 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-23 02:15:42,049 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:42,049 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:42,050 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-23 02:15:42,052 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-23 02:15:42,053 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:42,063 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:42,063 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:42,063 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:42,063 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:42,065 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-23 02:15:42,065 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-23 02:15:42,068 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:42,075 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-23 02:15:42,075 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:42,076 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:42,077 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-23 02:15:42,082 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-23 02:15:42,086 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:42,096 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:42,097 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:42,097 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:42,097 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:42,101 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-23 02:15:42,101 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-23 02:15:42,111 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-23 02:15:42,132 INFO L443 ModelExtractionUtils]: Simplification made 12 calls to the SMT solver. [2024-11-23 02:15:42,132 INFO L444 ModelExtractionUtils]: 1 out of 19 variables were initially zero. Simplification set additionally 14 variables to zero. [2024-11-23 02:15:42,134 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:42,134 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:42,136 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-23 02:15:42,138 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-23 02:15:42,142 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-23 02:15:42,166 INFO L438 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2024-11-23 02:15:42,166 INFO L474 LassoAnalysis]: Proved termination. [2024-11-23 02:15:42,167 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-23 02:15:42,173 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-23 02:15:42,191 INFO L156 tatePredicateManager]: 8 out of 8 supporting invariants were superfluous and have been removed [2024-11-23 02:15:42,198 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: #length [2024-11-23 02:15:42,198 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array IdentifierExpression[#length,GLOBAL] [2024-11-23 02:15:42,200 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: ~x!offset [2024-11-23 02:15:42,217 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:42,232 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:15:42,234 INFO L255 TraceCheckSpWp]: Trace formula consists of 43 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-11-23 02:15:42,235 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:15:42,249 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:15:42,249 INFO L255 TraceCheckSpWp]: Trace formula consists of 13 conjuncts, 4 conjuncts are in the unsatisfiable core [2024-11-23 02:15:42,250 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:15:42,264 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-23 02:15:42,289 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-23 02:15:42,291 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-23 02:15:42,325 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-23 02:15:42,327 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-23 02:15:42,331 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-23 02:15:42,331 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 52 transitions. [2024-11-23 02:15:42,332 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 52 transitions. Stem has 3 letters. Loop has 2 letters. [2024-11-23 02:15:42,333 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-23 02:15:42,333 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 52 transitions. Stem has 5 letters. Loop has 2 letters. [2024-11-23 02:15:42,333 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-23 02:15:42,333 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 52 transitions. Stem has 3 letters. Loop has 4 letters. [2024-11-23 02:15:42,333 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-23 02:15:42,333 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 65 states and 100 transitions. [2024-11-23 02:15:42,336 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 11 [2024-11-23 02:15:42,338 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 65 states to 23 states and 36 transitions. [2024-11-23 02:15:42,339 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 20 [2024-11-23 02:15:42,339 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 21 [2024-11-23 02:15:42,339 INFO L73 IsDeterministic]: Start isDeterministic. Operand 23 states and 36 transitions. [2024-11-23 02:15:42,339 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2024-11-23 02:15:42,339 INFO L218 hiAutomatonCegarLoop]: Abstraction has 23 states and 36 transitions. [2024-11-23 02:15:42,351 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 23 states and 36 transitions. [2024-11-23 02:15:42,356 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 23 to 23. [2024-11-23 02:15:42,356 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-23 02:15:42,357 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 36 transitions. [2024-11-23 02:15:42,358 INFO L240 hiAutomatonCegarLoop]: Abstraction has 23 states and 36 transitions. [2024-11-23 02:15:42,358 INFO L425 stractBuchiCegarLoop]: Abstraction has 23 states and 36 transitions. [2024-11-23 02:15:42,358 INFO L332 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2024-11-23 02:15:42,358 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 23 states and 36 transitions. [2024-11-23 02:15:42,358 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 11 [2024-11-23 02:15:42,359 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:15:42,359 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:15:42,359 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1] [2024-11-23 02:15:42,359 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-23 02:15:42,359 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-23 02:15:42,359 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-23 02:15:42,360 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:42,360 INFO L85 PathProgramCache]: Analyzing trace with hash 28693898, now seen corresponding path program 1 times [2024-11-23 02:15:42,360 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:42,360 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1016912839] [2024-11-23 02:15:42,360 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:15:42,360 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:42,368 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:15:42,422 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-23 02:15:42,422 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:15:42,422 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1016912839] [2024-11-23 02:15:42,423 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1016912839] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-23 02:15:42,423 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-23 02:15:42,423 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-11-23 02:15:42,423 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [517707719] [2024-11-23 02:15:42,423 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-23 02:15:42,425 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:15:42,425 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:42,425 INFO L85 PathProgramCache]: Analyzing trace with hash 56764, now seen corresponding path program 1 times [2024-11-23 02:15:42,425 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:42,425 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1983756319] [2024-11-23 02:15:42,425 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:15:42,425 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:42,431 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:42,431 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:15:42,434 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:42,435 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:15:42,466 INFO L204 LassoAnalysis]: Preferences: [2024-11-23 02:15:42,466 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-23 02:15:42,466 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-23 02:15:42,466 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-23 02:15:42,466 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2024-11-23 02:15:42,466 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:42,466 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-23 02:15:42,466 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-23 02:15:42,466 INFO L132 ssoRankerPreferences]: Filename of dumped script: rangesum.i_Iteration2_Loop [2024-11-23 02:15:42,466 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-23 02:15:42,466 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-23 02:15:42,467 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:42,472 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:42,506 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-23 02:15:42,507 INFO L365 LassoAnalysis]: Checking for nontermination... [2024-11-23 02:15:42,508 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:42,508 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:42,510 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-23 02:15:42,511 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-23 02:15:42,512 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2024-11-23 02:15:42,513 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-11-23 02:15:42,531 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-23 02:15:42,531 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:42,532 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:42,533 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-23 02:15:42,534 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-23 02:15:42,536 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2024-11-23 02:15:42,536 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-11-23 02:15:42,634 INFO L405 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2024-11-23 02:15:42,640 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-23 02:15:42,640 INFO L204 LassoAnalysis]: Preferences: [2024-11-23 02:15:42,640 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-23 02:15:42,640 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-23 02:15:42,640 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-23 02:15:42,640 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-23 02:15:42,640 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:42,641 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-23 02:15:42,641 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-23 02:15:42,641 INFO L132 ssoRankerPreferences]: Filename of dumped script: rangesum.i_Iteration2_Loop [2024-11-23 02:15:42,641 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-23 02:15:42,641 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-23 02:15:42,642 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:42,649 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:42,689 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-23 02:15:42,689 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-23 02:15:42,689 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:42,689 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:42,692 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-23 02:15:42,693 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-23 02:15:42,694 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:42,705 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:42,705 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-23 02:15:42,705 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:42,705 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:42,705 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:42,706 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-23 02:15:42,706 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-23 02:15:42,708 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-23 02:15:42,711 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2024-11-23 02:15:42,711 INFO L444 ModelExtractionUtils]: 0 out of 4 variables were initially zero. Simplification set additionally 1 variables to zero. [2024-11-23 02:15:42,711 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:42,711 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:42,719 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-23 02:15:42,724 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-23 02:15:42,724 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-23 02:15:42,724 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2024-11-23 02:15:42,724 INFO L474 LassoAnalysis]: Proved termination. [2024-11-23 02:15:42,724 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-23 02:15:42,732 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (25)] Forceful destruction successful, exit code 0 [2024-11-23 02:15:42,733 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2024-11-23 02:15:42,746 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:42,760 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:15:42,761 INFO L255 TraceCheckSpWp]: Trace formula consists of 58 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-11-23 02:15:42,761 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:15:42,768 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:15:42,769 WARN L253 TraceCheckSpWp]: Trace formula consists of 6 conjuncts, 5 conjuncts are in the unsatisfiable core [2024-11-23 02:15:42,769 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:15:42,819 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-23 02:15:42,819 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-23 02:15:42,820 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-23 02:15:42,855 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-23 02:15:42,855 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-23 02:15:42,856 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-23 02:15:42,856 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 36 transitions. [2024-11-23 02:15:42,856 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 36 transitions. Stem has 5 letters. Loop has 3 letters. [2024-11-23 02:15:42,856 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-23 02:15:42,856 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 36 transitions. Stem has 8 letters. Loop has 3 letters. [2024-11-23 02:15:42,857 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-23 02:15:42,857 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 36 transitions. Stem has 5 letters. Loop has 6 letters. [2024-11-23 02:15:42,857 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-23 02:15:42,857 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 45 states and 74 transitions. [2024-11-23 02:15:42,858 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 11 [2024-11-23 02:15:42,859 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 45 states to 31 states and 48 transitions. [2024-11-23 02:15:42,860 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 22 [2024-11-23 02:15:42,860 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 24 [2024-11-23 02:15:42,860 INFO L73 IsDeterministic]: Start isDeterministic. Operand 31 states and 48 transitions. [2024-11-23 02:15:42,860 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:15:42,860 INFO L218 hiAutomatonCegarLoop]: Abstraction has 31 states and 48 transitions. [2024-11-23 02:15:42,860 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 31 states and 48 transitions. [2024-11-23 02:15:42,862 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 31 to 29. [2024-11-23 02:15:42,862 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-23 02:15:42,862 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 45 transitions. [2024-11-23 02:15:42,862 INFO L240 hiAutomatonCegarLoop]: Abstraction has 29 states and 45 transitions. [2024-11-23 02:15:42,863 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:15:42,864 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-11-23 02:15:42,865 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-11-23 02:15:42,865 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-23 02:15:42,897 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:15:42,897 INFO L93 Difference]: Finished difference Result 30 states and 43 transitions. [2024-11-23 02:15:42,897 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 30 states and 43 transitions. [2024-11-23 02:15:42,898 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 11 [2024-11-23 02:15:42,898 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 30 states to 30 states and 43 transitions. [2024-11-23 02:15:42,898 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 22 [2024-11-23 02:15:42,898 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 22 [2024-11-23 02:15:42,898 INFO L73 IsDeterministic]: Start isDeterministic. Operand 30 states and 43 transitions. [2024-11-23 02:15:42,898 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:15:42,898 INFO L218 hiAutomatonCegarLoop]: Abstraction has 30 states and 43 transitions. [2024-11-23 02:15:42,899 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 30 states and 43 transitions. [2024-11-23 02:15:42,900 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 30 to 29. [2024-11-23 02:15:42,901 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-23 02:15:42,901 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 42 transitions. [2024-11-23 02:15:42,901 INFO L240 hiAutomatonCegarLoop]: Abstraction has 29 states and 42 transitions. [2024-11-23 02:15:42,901 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-11-23 02:15:42,902 INFO L425 stractBuchiCegarLoop]: Abstraction has 29 states and 42 transitions. [2024-11-23 02:15:42,902 INFO L332 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2024-11-23 02:15:42,902 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 29 states and 42 transitions. [2024-11-23 02:15:42,903 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 11 [2024-11-23 02:15:42,903 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:15:42,903 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:15:42,903 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1] [2024-11-23 02:15:42,903 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-23 02:15:42,903 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-23 02:15:42,904 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-23 02:15:42,904 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:42,904 INFO L85 PathProgramCache]: Analyzing trace with hash 123162479, now seen corresponding path program 1 times [2024-11-23 02:15:42,904 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:42,904 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1561926890] [2024-11-23 02:15:42,904 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:15:42,904 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:42,915 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:15:42,988 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-23 02:15:42,989 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:15:42,989 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1561926890] [2024-11-23 02:15:42,989 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1561926890] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-23 02:15:42,989 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2051198863] [2024-11-23 02:15:42,989 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:15:42,989 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-23 02:15:42,989 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:42,991 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-23 02:15:42,993 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-23 02:15:43,034 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:15:43,035 INFO L255 TraceCheckSpWp]: Trace formula consists of 70 conjuncts, 4 conjuncts are in the unsatisfiable core [2024-11-23 02:15:43,036 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:15:43,069 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-23 02:15:43,069 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-23 02:15:43,084 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-23 02:15:43,084 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2051198863] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-23 02:15:43,084 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-23 02:15:43,084 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4, 4] total 7 [2024-11-23 02:15:43,084 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2117447360] [2024-11-23 02:15:43,084 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-23 02:15:43,085 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:15:43,085 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:43,085 INFO L85 PathProgramCache]: Analyzing trace with hash 59702, now seen corresponding path program 1 times [2024-11-23 02:15:43,085 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:43,085 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [526679400] [2024-11-23 02:15:43,085 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:15:43,085 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:43,090 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:43,090 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:15:43,093 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:43,095 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:15:43,160 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:15:43,161 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2024-11-23 02:15:43,161 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=22, Unknown=0, NotChecked=0, Total=42 [2024-11-23 02:15:43,161 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-23 02:15:43,213 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:15:43,213 INFO L93 Difference]: Finished difference Result 32 states and 45 transitions. [2024-11-23 02:15:43,214 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 32 states and 45 transitions. [2024-11-23 02:15:43,214 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 11 [2024-11-23 02:15:43,214 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 32 states to 32 states and 45 transitions. [2024-11-23 02:15:43,215 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 22 [2024-11-23 02:15:43,215 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 22 [2024-11-23 02:15:43,215 INFO L73 IsDeterministic]: Start isDeterministic. Operand 32 states and 45 transitions. [2024-11-23 02:15:43,215 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:15:43,215 INFO L218 hiAutomatonCegarLoop]: Abstraction has 32 states and 45 transitions. [2024-11-23 02:15:43,228 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states and 45 transitions. [2024-11-23 02:15:43,229 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 31. [2024-11-23 02:15:43,230 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-23 02:15:43,230 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 44 transitions. [2024-11-23 02:15:43,230 INFO L240 hiAutomatonCegarLoop]: Abstraction has 31 states and 44 transitions. [2024-11-23 02:15:43,237 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-23 02:15:43,243 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-11-23 02:15:43,244 INFO L425 stractBuchiCegarLoop]: Abstraction has 31 states and 44 transitions. [2024-11-23 02:15:43,244 INFO L332 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2024-11-23 02:15:43,244 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 31 states and 44 transitions. [2024-11-23 02:15:43,245 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 11 [2024-11-23 02:15:43,245 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:15:43,245 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:15:43,245 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [2, 2, 1, 1, 1, 1, 1, 1] [2024-11-23 02:15:43,245 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-23 02:15:43,246 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-23 02:15:43,246 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-23 02:15:43,246 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:43,246 INFO L85 PathProgramCache]: Analyzing trace with hash -1898228851, now seen corresponding path program 2 times [2024-11-23 02:15:43,246 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:43,247 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [20685339] [2024-11-23 02:15:43,247 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-23 02:15:43,248 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-23 02:15:43,248 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:43,275 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-23 02:15:43,280 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:15:43,280 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:15:43,292 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:43,295 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:15:43,296 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:43,296 INFO L85 PathProgramCache]: Analyzing trace with hash 59702, now seen corresponding path program 2 times [2024-11-23 02:15:43,296 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:43,296 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1419280546] [2024-11-23 02:15:43,296 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-23 02:15:43,296 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:43,302 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2024-11-23 02:15:43,304 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:15:43,304 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:15:43,310 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:43,312 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:15:43,313 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:43,313 INFO L85 PathProgramCache]: Analyzing trace with hash 1698716202, now seen corresponding path program 1 times [2024-11-23 02:15:43,313 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:43,313 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1034778036] [2024-11-23 02:15:43,314 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:15:43,314 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:43,332 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:15:43,412 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-23 02:15:43,412 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:15:43,413 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1034778036] [2024-11-23 02:15:43,413 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1034778036] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-23 02:15:43,413 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-23 02:15:43,413 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-11-23 02:15:43,413 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [700213898] [2024-11-23 02:15:43,413 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-23 02:15:43,485 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:15:43,486 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-11-23 02:15:43,486 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2024-11-23 02:15:43,487 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-23 02:15:43,539 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:15:43,539 INFO L93 Difference]: Finished difference Result 40 states and 51 transitions. [2024-11-23 02:15:43,539 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 40 states and 51 transitions. [2024-11-23 02:15:43,540 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 11 [2024-11-23 02:15:43,542 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 40 states to 39 states and 50 transitions. [2024-11-23 02:15:43,543 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 28 [2024-11-23 02:15:43,543 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 28 [2024-11-23 02:15:43,543 INFO L73 IsDeterministic]: Start isDeterministic. Operand 39 states and 50 transitions. [2024-11-23 02:15:43,543 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:15:43,543 INFO L218 hiAutomatonCegarLoop]: Abstraction has 39 states and 50 transitions. [2024-11-23 02:15:43,543 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 39 states and 50 transitions. [2024-11-23 02:15:43,544 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 39 to 36. [2024-11-23 02:15:43,546 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-23 02:15:43,546 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 47 transitions. [2024-11-23 02:15:43,547 INFO L240 hiAutomatonCegarLoop]: Abstraction has 36 states and 47 transitions. [2024-11-23 02:15:43,547 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-11-23 02:15:43,547 INFO L425 stractBuchiCegarLoop]: Abstraction has 36 states and 47 transitions. [2024-11-23 02:15:43,549 INFO L332 stractBuchiCegarLoop]: ======== Iteration 5 ============ [2024-11-23 02:15:43,549 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 36 states and 47 transitions. [2024-11-23 02:15:43,549 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 11 [2024-11-23 02:15:43,549 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:15:43,549 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:15:43,550 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1] [2024-11-23 02:15:43,551 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-23 02:15:43,551 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-23 02:15:43,552 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-23 02:15:43,552 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:43,552 INFO L85 PathProgramCache]: Analyzing trace with hash 1698718124, now seen corresponding path program 1 times [2024-11-23 02:15:43,552 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:43,552 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1692550946] [2024-11-23 02:15:43,552 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:15:43,552 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:43,569 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:43,569 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:15:43,579 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:43,583 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:15:43,587 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:43,587 INFO L85 PathProgramCache]: Analyzing trace with hash 59702, now seen corresponding path program 3 times [2024-11-23 02:15:43,587 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:43,587 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [588855799] [2024-11-23 02:15:43,588 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-23 02:15:43,588 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:43,591 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) [2024-11-23 02:15:43,592 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:15:43,593 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:15:43,595 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:43,597 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:15:43,598 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:43,598 INFO L85 PathProgramCache]: Analyzing trace with hash -1087986773, now seen corresponding path program 1 times [2024-11-23 02:15:43,599 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:43,599 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [833985152] [2024-11-23 02:15:43,599 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:15:43,599 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:43,616 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:15:43,715 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-23 02:15:43,716 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:15:43,716 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [833985152] [2024-11-23 02:15:43,716 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [833985152] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-23 02:15:43,716 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [526067890] [2024-11-23 02:15:43,716 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:15:43,716 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-23 02:15:43,717 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:43,718 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-23 02:15:43,719 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-23 02:15:43,763 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:15:43,764 INFO L255 TraceCheckSpWp]: Trace formula consists of 97 conjuncts, 8 conjuncts are in the unsatisfiable core [2024-11-23 02:15:43,765 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:15:43,833 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-23 02:15:43,833 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-23 02:15:43,884 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-23 02:15:43,884 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [526067890] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-23 02:15:43,886 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-23 02:15:43,886 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8, 8] total 13 [2024-11-23 02:15:43,886 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [725023904] [2024-11-23 02:15:43,886 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-23 02:15:43,948 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:15:43,949 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2024-11-23 02:15:43,949 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=49, Invalid=133, Unknown=0, NotChecked=0, Total=182 [2024-11-23 02:15:43,949 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-23 02:15:44,166 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:15:44,166 INFO L93 Difference]: Finished difference Result 75 states and 94 transitions. [2024-11-23 02:15:44,166 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 75 states and 94 transitions. [2024-11-23 02:15:44,167 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 13 [2024-11-23 02:15:44,168 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 75 states to 64 states and 82 transitions. [2024-11-23 02:15:44,168 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 45 [2024-11-23 02:15:44,168 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 51 [2024-11-23 02:15:44,168 INFO L73 IsDeterministic]: Start isDeterministic. Operand 64 states and 82 transitions. [2024-11-23 02:15:44,168 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:15:44,168 INFO L218 hiAutomatonCegarLoop]: Abstraction has 64 states and 82 transitions. [2024-11-23 02:15:44,168 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 64 states and 82 transitions. [2024-11-23 02:15:44,170 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 64 to 60. [2024-11-23 02:15:44,170 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-23 02:15:44,171 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 60 states to 60 states and 78 transitions. [2024-11-23 02:15:44,171 INFO L240 hiAutomatonCegarLoop]: Abstraction has 60 states and 78 transitions. [2024-11-23 02:15:44,171 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2024-11-23 02:15:44,172 INFO L425 stractBuchiCegarLoop]: Abstraction has 60 states and 78 transitions. [2024-11-23 02:15:44,172 INFO L332 stractBuchiCegarLoop]: ======== Iteration 6 ============ [2024-11-23 02:15:44,172 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 60 states and 78 transitions. [2024-11-23 02:15:44,173 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 13 [2024-11-23 02:15:44,173 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:15:44,173 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:15:44,173 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [3, 3, 2, 1, 1, 1, 1, 1, 1, 1] [2024-11-23 02:15:44,173 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-23 02:15:44,173 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-23 02:15:44,173 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-23 02:15:44,174 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:44,174 INFO L85 PathProgramCache]: Analyzing trace with hash -154124210, now seen corresponding path program 2 times [2024-11-23 02:15:44,174 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:44,174 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1018109950] [2024-11-23 02:15:44,174 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-23 02:15:44,174 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:44,187 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-23 02:15:44,187 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:15:44,187 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:15:44,193 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:44,196 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:15:44,198 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:44,198 INFO L85 PathProgramCache]: Analyzing trace with hash 59702, now seen corresponding path program 4 times [2024-11-23 02:15:44,198 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:44,198 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1010714166] [2024-11-23 02:15:44,198 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-23 02:15:44,199 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:44,202 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-23 02:15:44,203 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:15:44,203 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:15:44,205 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:44,207 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:15:44,209 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:44,209 INFO L85 PathProgramCache]: Analyzing trace with hash -194270775, now seen corresponding path program 2 times [2024-11-23 02:15:44,209 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:44,209 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1707138169] [2024-11-23 02:15:44,209 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-23 02:15:44,209 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:44,225 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-23 02:15:44,225 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:15:44,327 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 0 proven. 5 refuted. 0 times theorem prover too weak. 9 trivial. 0 not checked. [2024-11-23 02:15:44,328 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:15:44,328 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1707138169] [2024-11-23 02:15:44,328 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1707138169] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-23 02:15:44,328 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [81462741] [2024-11-23 02:15:44,329 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-23 02:15:44,329 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-23 02:15:44,329 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:44,335 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-23 02:15:44,338 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-23 02:15:44,384 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-23 02:15:44,384 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:15:44,385 INFO L255 TraceCheckSpWp]: Trace formula consists of 108 conjuncts, 4 conjuncts are in the unsatisfiable core [2024-11-23 02:15:44,386 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:15:44,438 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-23 02:15:44,438 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-23 02:15:44,566 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-23 02:15:44,567 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [81462741] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-23 02:15:44,567 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-23 02:15:44,567 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5, 5] total 11 [2024-11-23 02:15:44,567 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [330679196] [2024-11-23 02:15:44,567 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-23 02:15:44,616 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:15:44,617 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2024-11-23 02:15:44,617 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=30, Invalid=80, Unknown=0, NotChecked=0, Total=110 [2024-11-23 02:15:44,617 INFO L87 Difference]: Start difference. First operand 60 states and 78 transitions. cyclomatic complexity: 25 Second operand has 11 states, 11 states have (on average 2.909090909090909) internal successors, (32), 11 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:15:44,732 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:15:44,732 INFO L93 Difference]: Finished difference Result 75 states and 89 transitions. [2024-11-23 02:15:44,732 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 75 states and 89 transitions. [2024-11-23 02:15:44,733 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 15 [2024-11-23 02:15:44,734 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 75 states to 73 states and 87 transitions. [2024-11-23 02:15:44,734 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 57 [2024-11-23 02:15:44,734 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 57 [2024-11-23 02:15:44,734 INFO L73 IsDeterministic]: Start isDeterministic. Operand 73 states and 87 transitions. [2024-11-23 02:15:44,734 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:15:44,734 INFO L218 hiAutomatonCegarLoop]: Abstraction has 73 states and 87 transitions. [2024-11-23 02:15:44,735 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 73 states and 87 transitions. [2024-11-23 02:15:44,737 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 73 to 68. [2024-11-23 02:15:44,737 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-23 02:15:44,737 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 82 transitions. [2024-11-23 02:15:44,737 INFO L240 hiAutomatonCegarLoop]: Abstraction has 68 states and 82 transitions. [2024-11-23 02:15:44,738 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-11-23 02:15:44,738 INFO L425 stractBuchiCegarLoop]: Abstraction has 68 states and 82 transitions. [2024-11-23 02:15:44,738 INFO L332 stractBuchiCegarLoop]: ======== Iteration 7 ============ [2024-11-23 02:15:44,738 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 68 states and 82 transitions. [2024-11-23 02:15:44,739 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 13 [2024-11-23 02:15:44,739 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:15:44,739 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:15:44,739 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [3, 3, 3, 2, 2, 1, 1, 1, 1, 1] [2024-11-23 02:15:44,739 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-23 02:15:44,739 INFO L745 eck$LassoCheckResult]: Stem: 1051#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 1040#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 1032#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 1033#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 1047#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 1048#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 1049#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 1060#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 1045#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 1046#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 1018#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 1019#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1043#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 1056#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1044#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1024#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 1025#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1074#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1022#L30 [2024-11-23 02:15:44,740 INFO L747 eck$LassoCheckResult]: Loop: 1022#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 1023#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1073#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1022#L30 [2024-11-23 02:15:44,740 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:44,740 INFO L85 PathProgramCache]: Analyzing trace with hash -194268853, now seen corresponding path program 3 times [2024-11-23 02:15:44,740 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:44,740 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1584321197] [2024-11-23 02:15:44,740 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-23 02:15:44,741 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:44,760 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2024-11-23 02:15:44,761 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:15:44,761 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:15:44,766 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:44,772 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:15:44,773 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:44,773 INFO L85 PathProgramCache]: Analyzing trace with hash 59702, now seen corresponding path program 5 times [2024-11-23 02:15:44,773 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:44,773 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1894094310] [2024-11-23 02:15:44,773 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-23 02:15:44,773 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:44,781 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2024-11-23 02:15:44,781 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:15:44,781 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:15:44,783 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:44,788 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:15:44,789 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:44,789 INFO L85 PathProgramCache]: Analyzing trace with hash -2142422100, now seen corresponding path program 3 times [2024-11-23 02:15:44,789 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:44,789 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1999737835] [2024-11-23 02:15:44,789 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-23 02:15:44,789 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:44,811 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2024-11-23 02:15:44,812 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:15:44,887 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 0 proven. 14 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2024-11-23 02:15:44,887 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:15:44,887 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1999737835] [2024-11-23 02:15:44,887 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1999737835] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-23 02:15:44,887 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1963313328] [2024-11-23 02:15:44,887 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-23 02:15:44,887 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-23 02:15:44,888 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:44,893 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-23 02:15:44,894 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-23 02:15:44,939 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2024-11-23 02:15:44,939 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:15:44,940 INFO L255 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 10 conjuncts are in the unsatisfiable core [2024-11-23 02:15:44,941 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:15:45,020 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-23 02:15:45,020 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-23 02:15:45,086 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-23 02:15:45,086 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1963313328] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-23 02:15:45,086 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-23 02:15:45,086 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 10, 10] total 15 [2024-11-23 02:15:45,086 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1988375350] [2024-11-23 02:15:45,086 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-23 02:15:45,155 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:15:45,156 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2024-11-23 02:15:45,156 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=65, Invalid=175, Unknown=0, NotChecked=0, Total=240 [2024-11-23 02:15:45,156 INFO L87 Difference]: Start difference. First operand 68 states and 82 transitions. cyclomatic complexity: 21 Second operand has 16 states, 15 states have (on average 2.6666666666666665) internal successors, (40), 16 states have internal predecessors, (40), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:15:45,376 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:15:45,376 INFO L93 Difference]: Finished difference Result 112 states and 131 transitions. [2024-11-23 02:15:45,377 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 112 states and 131 transitions. [2024-11-23 02:15:45,379 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 15 [2024-11-23 02:15:45,380 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 112 states to 98 states and 117 transitions. [2024-11-23 02:15:45,380 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 74 [2024-11-23 02:15:45,380 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 80 [2024-11-23 02:15:45,380 INFO L73 IsDeterministic]: Start isDeterministic. Operand 98 states and 117 transitions. [2024-11-23 02:15:45,381 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:15:45,381 INFO L218 hiAutomatonCegarLoop]: Abstraction has 98 states and 117 transitions. [2024-11-23 02:15:45,381 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 98 states and 117 transitions. [2024-11-23 02:15:45,384 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 98 to 91. [2024-11-23 02:15:45,384 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-23 02:15:45,385 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 91 states to 91 states and 109 transitions. [2024-11-23 02:15:45,385 INFO L240 hiAutomatonCegarLoop]: Abstraction has 91 states and 109 transitions. [2024-11-23 02:15:45,385 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2024-11-23 02:15:45,386 INFO L425 stractBuchiCegarLoop]: Abstraction has 91 states and 109 transitions. [2024-11-23 02:15:45,386 INFO L332 stractBuchiCegarLoop]: ======== Iteration 8 ============ [2024-11-23 02:15:45,386 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 91 states and 109 transitions. [2024-11-23 02:15:45,386 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 13 [2024-11-23 02:15:45,386 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:15:45,386 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:15:45,387 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [4, 4, 3, 2, 2, 1, 1, 1, 1, 1] [2024-11-23 02:15:45,387 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-23 02:15:45,387 INFO L745 eck$LassoCheckResult]: Stem: 1369#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 1359#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 1355#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 1356#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 1365#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 1366#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 1367#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 1406#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 1405#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 1404#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 1403#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 1402#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 1401#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 1400#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1345#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 1346#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1399#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1394#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 1392#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1389#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1390#L30 [2024-11-23 02:15:45,387 INFO L747 eck$LassoCheckResult]: Loop: 1390#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 1393#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1391#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1390#L30 [2024-11-23 02:15:45,387 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:45,387 INFO L85 PathProgramCache]: Analyzing trace with hash -326653975, now seen corresponding path program 4 times [2024-11-23 02:15:45,387 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:45,388 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2037769106] [2024-11-23 02:15:45,388 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-23 02:15:45,388 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:45,399 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-23 02:15:45,399 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:15:45,399 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:15:45,407 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:45,409 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:15:45,410 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:45,410 INFO L85 PathProgramCache]: Analyzing trace with hash 59702, now seen corresponding path program 6 times [2024-11-23 02:15:45,410 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:45,410 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2047775491] [2024-11-23 02:15:45,410 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-23 02:15:45,410 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:45,413 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 1 check-sat command(s) [2024-11-23 02:15:45,413 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:15:45,413 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:15:45,414 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:45,415 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:15:45,416 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:45,416 INFO L85 PathProgramCache]: Analyzing trace with hash 1047353422, now seen corresponding path program 4 times [2024-11-23 02:15:45,416 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:45,416 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [683806854] [2024-11-23 02:15:45,416 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-23 02:15:45,416 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:45,423 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-23 02:15:45,423 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:15:45,516 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-23 02:15:45,516 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:15:45,516 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [683806854] [2024-11-23 02:15:45,516 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [683806854] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-23 02:15:45,516 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [605429657] [2024-11-23 02:15:45,516 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-23 02:15:45,516 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-23 02:15:45,516 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:45,519 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-23 02:15:45,519 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-23 02:15:45,560 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-23 02:15:45,560 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:15:45,561 INFO L255 TraceCheckSpWp]: Trace formula consists of 83 conjuncts, 9 conjuncts are in the unsatisfiable core [2024-11-23 02:15:45,562 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:15:45,612 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-23 02:15:45,612 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-23 02:15:45,662 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-23 02:15:45,662 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [605429657] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-23 02:15:45,662 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-23 02:15:45,663 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2024-11-23 02:15:45,663 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1037108340] [2024-11-23 02:15:45,663 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-23 02:15:45,712 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:15:45,712 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2024-11-23 02:15:45,712 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=59, Invalid=151, Unknown=0, NotChecked=0, Total=210 [2024-11-23 02:15:45,713 INFO L87 Difference]: Start difference. First operand 91 states and 109 transitions. cyclomatic complexity: 25 Second operand has 15 states, 14 states have (on average 2.5) internal successors, (35), 15 states have internal predecessors, (35), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:15:45,869 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:15:45,869 INFO L93 Difference]: Finished difference Result 114 states and 136 transitions. [2024-11-23 02:15:45,869 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 114 states and 136 transitions. [2024-11-23 02:15:45,870 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 13 [2024-11-23 02:15:45,871 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 114 states to 110 states and 132 transitions. [2024-11-23 02:15:45,871 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 89 [2024-11-23 02:15:45,871 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 89 [2024-11-23 02:15:45,871 INFO L73 IsDeterministic]: Start isDeterministic. Operand 110 states and 132 transitions. [2024-11-23 02:15:45,871 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:15:45,871 INFO L218 hiAutomatonCegarLoop]: Abstraction has 110 states and 132 transitions. [2024-11-23 02:15:45,871 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 110 states and 132 transitions. [2024-11-23 02:15:45,874 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 110 to 105. [2024-11-23 02:15:45,875 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 105 states, 105 states have (on average 1.2095238095238094) internal successors, (127), 104 states have internal predecessors, (127), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:15:45,875 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 105 states to 105 states and 127 transitions. [2024-11-23 02:15:45,875 INFO L240 hiAutomatonCegarLoop]: Abstraction has 105 states and 127 transitions. [2024-11-23 02:15:45,875 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2024-11-23 02:15:45,876 INFO L425 stractBuchiCegarLoop]: Abstraction has 105 states and 127 transitions. [2024-11-23 02:15:45,876 INFO L332 stractBuchiCegarLoop]: ======== Iteration 9 ============ [2024-11-23 02:15:45,876 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 105 states and 127 transitions. [2024-11-23 02:15:45,877 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 13 [2024-11-23 02:15:45,877 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:15:45,877 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:15:45,877 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [4, 4, 4, 3, 3, 1, 1, 1, 1, 1] [2024-11-23 02:15:45,877 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-23 02:15:45,877 INFO L745 eck$LassoCheckResult]: Stem: 1733#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 1718#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 1710#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 1711#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 1728#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 1729#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 1730#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 1741#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 1726#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 1727#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 1758#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 1757#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 1755#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 1752#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1702#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 1703#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1724#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1725#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 1756#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1744#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1745#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 1748#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1749#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1753#L30 [2024-11-23 02:15:45,877 INFO L747 eck$LassoCheckResult]: Loop: 1753#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 1785#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1786#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1753#L30 [2024-11-23 02:15:45,878 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:45,878 INFO L85 PathProgramCache]: Analyzing trace with hash 1047355344, now seen corresponding path program 5 times [2024-11-23 02:15:45,878 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:45,878 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [257706086] [2024-11-23 02:15:45,878 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-23 02:15:45,878 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:45,888 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 5 check-sat command(s) [2024-11-23 02:15:45,888 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:15:45,888 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:15:45,893 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:45,895 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:15:45,896 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:45,896 INFO L85 PathProgramCache]: Analyzing trace with hash 59702, now seen corresponding path program 7 times [2024-11-23 02:15:45,896 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:45,896 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1690991779] [2024-11-23 02:15:45,896 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2024-11-23 02:15:45,896 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:45,898 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:45,899 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:15:45,900 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:45,901 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:15:45,901 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:45,901 INFO L85 PathProgramCache]: Analyzing trace with hash -1174322425, now seen corresponding path program 5 times [2024-11-23 02:15:45,901 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:45,901 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [69461776] [2024-11-23 02:15:45,901 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-23 02:15:45,901 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:45,915 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 5 check-sat command(s) [2024-11-23 02:15:45,915 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:15:46,045 INFO L134 CoverageAnalysis]: Checked inductivity of 38 backedges. 22 proven. 16 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-23 02:15:46,046 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:15:46,046 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [69461776] [2024-11-23 02:15:46,046 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [69461776] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-23 02:15:46,046 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1062374638] [2024-11-23 02:15:46,046 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-23 02:15:46,046 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-23 02:15:46,047 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:46,052 INFO L229 MonitoredProcess]: Starting monitored process 32 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-23 02:15:46,053 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (32)] Waiting until timeout for monitored process [2024-11-23 02:15:46,113 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 5 check-sat command(s) [2024-11-23 02:15:46,113 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:15:46,114 INFO L255 TraceCheckSpWp]: Trace formula consists of 127 conjuncts, 12 conjuncts are in the unsatisfiable core [2024-11-23 02:15:46,115 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:15:46,217 INFO L134 CoverageAnalysis]: Checked inductivity of 38 backedges. 22 proven. 16 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-23 02:15:46,218 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-23 02:15:46,291 INFO L134 CoverageAnalysis]: Checked inductivity of 38 backedges. 22 proven. 16 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-23 02:15:46,292 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1062374638] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-23 02:15:46,292 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-23 02:15:46,292 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12, 12] total 17 [2024-11-23 02:15:46,292 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [546903785] [2024-11-23 02:15:46,292 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-23 02:15:46,352 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:15:46,352 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2024-11-23 02:15:46,352 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=83, Invalid=223, Unknown=0, NotChecked=0, Total=306 [2024-11-23 02:15:46,353 INFO L87 Difference]: Start difference. First operand 105 states and 127 transitions. cyclomatic complexity: 29 Second operand has 18 states, 17 states have (on average 2.3529411764705883) internal successors, (40), 18 states have internal predecessors, (40), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:15:46,580 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:15:46,580 INFO L93 Difference]: Finished difference Result 165 states and 196 transitions. [2024-11-23 02:15:46,580 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 165 states and 196 transitions. [2024-11-23 02:15:46,581 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 15 [2024-11-23 02:15:46,582 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 165 states to 148 states and 179 transitions. [2024-11-23 02:15:46,582 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 116 [2024-11-23 02:15:46,582 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 125 [2024-11-23 02:15:46,582 INFO L73 IsDeterministic]: Start isDeterministic. Operand 148 states and 179 transitions. [2024-11-23 02:15:46,582 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:15:46,583 INFO L218 hiAutomatonCegarLoop]: Abstraction has 148 states and 179 transitions. [2024-11-23 02:15:46,583 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 148 states and 179 transitions. [2024-11-23 02:15:46,586 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 148 to 131. [2024-11-23 02:15:46,586 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 131 states, 131 states have (on average 1.2213740458015268) internal successors, (160), 130 states have internal predecessors, (160), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:15:46,586 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 131 states to 131 states and 160 transitions. [2024-11-23 02:15:46,587 INFO L240 hiAutomatonCegarLoop]: Abstraction has 131 states and 160 transitions. [2024-11-23 02:15:46,587 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2024-11-23 02:15:46,587 INFO L425 stractBuchiCegarLoop]: Abstraction has 131 states and 160 transitions. [2024-11-23 02:15:46,588 INFO L332 stractBuchiCegarLoop]: ======== Iteration 10 ============ [2024-11-23 02:15:46,588 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 131 states and 160 transitions. [2024-11-23 02:15:46,588 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 13 [2024-11-23 02:15:46,588 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:15:46,588 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:15:46,589 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [5, 5, 4, 3, 3, 1, 1, 1, 1, 1] [2024-11-23 02:15:46,589 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-23 02:15:46,589 INFO L745 eck$LassoCheckResult]: Stem: 2175#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 2163#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 2159#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 2160#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 2171#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 2172#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 2173#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 2227#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 2226#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 2224#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 2223#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 2222#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 2221#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 2220#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 2218#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 2216#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 2213#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2214#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2169#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 2170#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2219#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2202#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 2149#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2150#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2179#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 2217#L30 [2024-11-23 02:15:46,589 INFO L747 eck$LassoCheckResult]: Loop: 2217#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 2208#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2209#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 2217#L30 [2024-11-23 02:15:46,589 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:46,590 INFO L85 PathProgramCache]: Analyzing trace with hash -185017358, now seen corresponding path program 6 times [2024-11-23 02:15:46,590 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:46,590 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [458044111] [2024-11-23 02:15:46,590 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-23 02:15:46,590 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:46,603 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 6 check-sat command(s) [2024-11-23 02:15:46,603 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:15:46,603 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:15:46,612 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:46,614 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:15:46,615 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:46,615 INFO L85 PathProgramCache]: Analyzing trace with hash 59702, now seen corresponding path program 8 times [2024-11-23 02:15:46,615 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:46,615 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1078060514] [2024-11-23 02:15:46,615 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-23 02:15:46,615 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:46,617 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2024-11-23 02:15:46,618 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:15:46,618 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:15:46,619 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:46,620 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:15:46,620 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:46,620 INFO L85 PathProgramCache]: Analyzing trace with hash -1409041499, now seen corresponding path program 6 times [2024-11-23 02:15:46,620 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:46,620 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1111114413] [2024-11-23 02:15:46,620 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-23 02:15:46,621 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:46,636 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 6 check-sat command(s) [2024-11-23 02:15:46,636 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:15:46,636 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:15:46,642 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:46,645 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:15:47,566 INFO L204 LassoAnalysis]: Preferences: [2024-11-23 02:15:47,566 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-23 02:15:47,566 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-23 02:15:47,566 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-23 02:15:47,566 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-23 02:15:47,566 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:47,566 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-23 02:15:47,566 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-23 02:15:47,566 INFO L132 ssoRankerPreferences]: Filename of dumped script: rangesum.i_Iteration10_Lasso [2024-11-23 02:15:47,567 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-23 02:15:47,567 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-23 02:15:47,568 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:47,724 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:47,726 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:47,727 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:47,729 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:47,730 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:47,732 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:47,733 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:47,735 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:47,736 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:47,738 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:47,739 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:47,741 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:47,742 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:47,744 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:47,745 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:47,748 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:47,755 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:47,756 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:47,758 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:47,759 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:47,761 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:47,762 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:47,764 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:47,765 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:47,766 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:47,768 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:47,769 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:47,772 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:48,030 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-23 02:15:48,030 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-23 02:15:48,030 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:48,031 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:48,033 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-23 02:15:48,034 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-23 02:15:48,036 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:48,046 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:48,047 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:48,047 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:48,047 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:48,048 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-23 02:15:48,048 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-23 02:15:48,051 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:48,059 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (33)] Forceful destruction successful, exit code 0 [2024-11-23 02:15:48,059 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:48,059 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:48,063 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-23 02:15:48,064 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-23 02:15:48,065 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:48,075 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:48,075 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:48,075 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:48,075 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:48,077 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-23 02:15:48,077 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-23 02:15:48,080 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:48,086 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (34)] Forceful destruction successful, exit code 0 [2024-11-23 02:15:48,087 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:48,087 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:48,090 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-23 02:15:48,092 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-23 02:15:48,093 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:48,103 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:48,103 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:48,103 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:48,103 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:48,105 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-23 02:15:48,105 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-23 02:15:48,109 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:48,117 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-23 02:15:48,118 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:48,118 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:48,119 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-23 02:15:48,120 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-23 02:15:48,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-23 02:15:48,131 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:48,131 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:48,132 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:48,132 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:48,135 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-23 02:15:48,135 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-23 02:15:48,143 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-23 02:15:48,170 INFO L443 ModelExtractionUtils]: Simplification made 13 calls to the SMT solver. [2024-11-23 02:15:48,170 INFO L444 ModelExtractionUtils]: 2 out of 19 variables were initially zero. Simplification set additionally 14 variables to zero. [2024-11-23 02:15:48,170 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:48,170 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:48,172 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-23 02:15:48,173 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-23 02:15:48,173 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-23 02:15:48,185 INFO L438 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2024-11-23 02:15:48,185 INFO L474 LassoAnalysis]: Proved termination. [2024-11-23 02:15:48,185 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-23 02:15:48,192 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (36)] Ended with exit code 0 [2024-11-23 02:15:48,208 INFO L156 tatePredicateManager]: 8 out of 8 supporting invariants were superfluous and have been removed [2024-11-23 02:15:48,224 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:48,249 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:15:48,250 INFO L255 TraceCheckSpWp]: Trace formula consists of 126 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-11-23 02:15:48,251 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:15:48,276 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:15:48,277 INFO L255 TraceCheckSpWp]: Trace formula consists of 14 conjuncts, 4 conjuncts are in the unsatisfiable core [2024-11-23 02:15:48,277 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:15:48,289 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-23 02:15:48,289 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-23 02:15:48,290 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 131 states and 160 transitions. cyclomatic complexity: 36 Second operand has 4 states, 4 states have (on average 3.5) internal successors, (14), 4 states have internal predecessors, (14), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:15:48,308 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 131 states and 160 transitions. cyclomatic complexity: 36. Second operand has 4 states, 4 states have (on average 3.5) internal successors, (14), 4 states have internal predecessors, (14), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Result 162 states and 193 transitions. Complement of second has 7 states. [2024-11-23 02:15:48,311 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-23 02:15:48,312 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-23 02:15:48,312 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 12 transitions. [2024-11-23 02:15:48,312 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 12 transitions. Stem has 25 letters. Loop has 3 letters. [2024-11-23 02:15:48,312 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-23 02:15:48,312 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 12 transitions. Stem has 28 letters. Loop has 3 letters. [2024-11-23 02:15:48,313 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-23 02:15:48,313 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 12 transitions. Stem has 25 letters. Loop has 6 letters. [2024-11-23 02:15:48,313 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-23 02:15:48,313 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 162 states and 193 transitions. [2024-11-23 02:15:48,314 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 10 [2024-11-23 02:15:48,314 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 162 states to 144 states and 175 transitions. [2024-11-23 02:15:48,314 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 89 [2024-11-23 02:15:48,315 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 119 [2024-11-23 02:15:48,315 INFO L73 IsDeterministic]: Start isDeterministic. Operand 144 states and 175 transitions. [2024-11-23 02:15:48,315 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:15:48,315 INFO L218 hiAutomatonCegarLoop]: Abstraction has 144 states and 175 transitions. [2024-11-23 02:15:48,315 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 144 states and 175 transitions. [2024-11-23 02:15:48,319 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 144 to 132. [2024-11-23 02:15:48,323 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 132 states, 132 states have (on average 1.2348484848484849) internal successors, (163), 131 states have internal predecessors, (163), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:15:48,324 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 132 states to 132 states and 163 transitions. [2024-11-23 02:15:48,324 INFO L240 hiAutomatonCegarLoop]: Abstraction has 132 states and 163 transitions. [2024-11-23 02:15:48,324 INFO L425 stractBuchiCegarLoop]: Abstraction has 132 states and 163 transitions. [2024-11-23 02:15:48,324 INFO L332 stractBuchiCegarLoop]: ======== Iteration 11 ============ [2024-11-23 02:15:48,324 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 132 states and 163 transitions. [2024-11-23 02:15:48,325 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 10 [2024-11-23 02:15:48,325 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:15:48,325 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:15:48,325 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-23 02:15:48,325 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2024-11-23 02:15:48,326 INFO L745 eck$LassoCheckResult]: Stem: 2609#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 2597#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 2589#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 2590#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 2605#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 2606#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 2603#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 2604#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 2575#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 2576#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 2694#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2692#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2693#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 2696#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2695#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2682#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 2587#L29-4 assume !(0 != rangesum_~cnt~0#1);rangesum_#res#1 := 0; 2588#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 2598#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 2577#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2578#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2649#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 2642#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2641#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2616#L29-8 assume !(rangesum_~i~1#1 < ~N~0); 2607#L29-9 assume !(0 != rangesum_~cnt~0#1);rangesum_#res#1 := 0; 2608#rangesum_returnLabel#2 main_#t~ret9#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret2~0#1 := main_#t~ret9#1;havoc main_#t~ret9#1;call main_#t~mem10#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem10#1;havoc main_#t~mem10#1;main_~i~2#1 := 0; 2594#L57-3 [2024-11-23 02:15:48,326 INFO L747 eck$LassoCheckResult]: Loop: 2594#L57-3 assume !!(main_~i~2#1 < ~N~0 - 1);call main_#t~mem11#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset + 4 * (1 + main_~i~2#1), 4);call write~int#1(main_#t~mem11#1, main_~#x~0#1.base, main_~#x~0#1.offset + 4 * main_~i~2#1, 4);havoc main_#t~mem11#1; 2595#L57-2 main_#t~post12#1 := main_~i~2#1;main_~i~2#1 := 1 + main_#t~post12#1;havoc main_#t~post12#1; 2594#L57-3 [2024-11-23 02:15:48,326 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:48,330 INFO L85 PathProgramCache]: Analyzing trace with hash -1751120697, now seen corresponding path program 1 times [2024-11-23 02:15:48,330 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:48,330 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1200330179] [2024-11-23 02:15:48,330 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:15:48,331 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:48,342 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:48,342 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:15:48,351 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:48,354 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:15:48,355 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:48,358 INFO L85 PathProgramCache]: Analyzing trace with hash 3427, now seen corresponding path program 1 times [2024-11-23 02:15:48,358 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:48,358 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [496286124] [2024-11-23 02:15:48,358 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:15:48,358 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:48,361 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:48,363 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:15:48,365 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:48,366 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:15:48,366 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:48,366 INFO L85 PathProgramCache]: Analyzing trace with hash 800192681, now seen corresponding path program 1 times [2024-11-23 02:15:48,366 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:48,366 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [453188230] [2024-11-23 02:15:48,366 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:15:48,366 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:48,375 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:48,375 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:15:48,381 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:48,384 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:15:48,615 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-23 02:15:49,222 INFO L204 LassoAnalysis]: Preferences: [2024-11-23 02:15:49,223 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-23 02:15:49,223 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-23 02:15:49,223 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-23 02:15:49,223 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-23 02:15:49,223 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:49,223 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-23 02:15:49,223 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-23 02:15:49,223 INFO L132 ssoRankerPreferences]: Filename of dumped script: rangesum.i_Iteration11_Lasso [2024-11-23 02:15:49,223 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-23 02:15:49,223 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-23 02:15:49,224 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:49,226 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:49,227 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:49,229 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:49,230 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:49,231 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:49,234 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:49,235 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:49,236 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:49,238 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:49,239 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:49,241 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:49,374 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:49,376 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:49,377 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:49,379 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:49,380 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:49,382 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:49,383 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:49,389 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:49,391 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:49,393 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:49,394 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:49,395 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:49,397 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:49,398 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:49,399 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:49,401 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:49,402 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:49,404 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:49,405 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:49,407 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:49,656 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-23 02:15:49,656 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-23 02:15:49,656 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:49,656 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:49,661 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-23 02:15:49,662 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-23 02:15:49,663 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:49,673 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:49,674 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-23 02:15:49,674 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:49,674 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:49,674 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:49,674 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-23 02:15:49,674 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-23 02:15:49,675 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:49,681 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-23 02:15:49,682 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:49,682 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:49,683 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-23 02:15:49,684 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-23 02:15:49,685 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:49,695 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:49,695 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-23 02:15:49,695 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:49,695 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:49,695 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:49,696 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-23 02:15:49,696 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-23 02:15:49,697 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:49,703 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-23 02:15:49,707 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:49,707 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:49,709 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-23 02:15:49,712 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-23 02:15:49,713 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:49,724 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:49,724 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-23 02:15:49,724 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:49,724 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:49,724 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:49,725 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-23 02:15:49,725 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-23 02:15:49,726 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:49,732 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-23 02:15:49,733 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:49,733 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:49,734 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-23 02:15:49,735 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-23 02:15:49,736 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:49,746 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:49,746 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-23 02:15:49,746 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:49,746 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:49,746 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:49,747 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-23 02:15:49,747 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-23 02:15:49,748 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:49,754 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (41)] Ended with exit code 0 [2024-11-23 02:15:49,754 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:49,755 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:49,756 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-23 02:15:49,757 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-23 02:15:49,758 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:49,767 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:49,768 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-23 02:15:49,768 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:49,768 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:49,768 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:49,768 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-23 02:15:49,768 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-23 02:15:49,769 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:49,775 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (42)] Forceful destruction successful, exit code 0 [2024-11-23 02:15:49,776 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:49,776 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:49,777 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-23 02:15:49,778 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-23 02:15:49,779 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:49,789 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:49,789 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:49,789 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:49,789 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:49,790 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-23 02:15:49,790 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-23 02:15:49,793 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:49,799 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-23 02:15:49,799 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:49,799 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:49,801 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-23 02:15:49,804 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-23 02:15:49,806 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:49,816 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:49,816 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-23 02:15:49,816 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:49,816 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:49,816 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:49,817 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-23 02:15:49,817 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-23 02:15:49,818 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:49,823 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (44)] Forceful destruction successful, exit code 0 [2024-11-23 02:15:49,824 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:49,824 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:49,825 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-23 02:15:49,826 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-23 02:15:49,827 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:49,837 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:49,837 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-23 02:15:49,837 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:49,837 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:49,837 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:49,842 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-23 02:15:49,842 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-23 02:15:49,844 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:49,850 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-23 02:15:49,851 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:49,851 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:49,852 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-23 02:15:49,853 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-23 02:15:49,854 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:49,863 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:49,864 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-23 02:15:49,864 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:49,864 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:49,864 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:49,864 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-23 02:15:49,865 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-23 02:15:49,866 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:49,871 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-23 02:15:49,872 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:49,872 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:49,873 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-23 02:15:49,874 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-23 02:15:49,875 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:49,885 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:49,885 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-23 02:15:49,885 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:49,885 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:49,885 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:49,886 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-23 02:15:49,886 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-23 02:15:49,887 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:49,893 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (47)] Forceful destruction successful, exit code 0 [2024-11-23 02:15:49,894 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:49,894 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:49,896 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-23 02:15:49,897 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-23 02:15:49,898 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:49,908 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:49,908 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-23 02:15:49,908 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:49,908 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:49,908 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:49,909 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-23 02:15:49,909 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-23 02:15:49,910 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:49,915 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-23 02:15:49,916 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:49,916 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:49,918 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-23 02:15:49,919 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-23 02:15:49,920 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:49,930 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:49,930 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:49,930 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:49,931 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:49,932 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-23 02:15:49,932 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-23 02:15:49,934 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:49,940 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (49)] Forceful destruction successful, exit code 0 [2024-11-23 02:15:49,940 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:49,940 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:49,942 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-23 02:15:49,943 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-23 02:15:49,944 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:49,954 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:49,954 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:49,954 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:49,954 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:49,956 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-23 02:15:49,956 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-23 02:15:49,959 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:49,967 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (50)] Ended with exit code 0 [2024-11-23 02:15:49,967 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:49,967 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:49,969 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-23 02:15:49,971 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-23 02:15:49,971 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:49,981 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:49,981 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:49,981 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:49,981 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:49,983 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-23 02:15:49,983 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-23 02:15:49,985 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-23 02:15:49,991 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (51)] Forceful destruction successful, exit code 0 [2024-11-23 02:15:49,991 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:49,992 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:49,993 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-23 02:15:49,994 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-23 02:15:49,995 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:50,005 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:50,006 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:50,006 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:50,006 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:50,008 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-23 02:15:50,008 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-23 02:15:50,015 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-23 02:15:50,042 INFO L443 ModelExtractionUtils]: Simplification made 13 calls to the SMT solver. [2024-11-23 02:15:50,042 INFO L444 ModelExtractionUtils]: 1 out of 16 variables were initially zero. Simplification set additionally 11 variables to zero. [2024-11-23 02:15:50,042 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:50,042 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:50,046 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-23 02:15:50,051 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-23 02:15:50,051 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-23 02:15:50,063 INFO L438 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2024-11-23 02:15:50,063 INFO L474 LassoAnalysis]: Proved termination. [2024-11-23 02:15:50,063 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(v_rep(select #length ULTIMATE.start_main_~#x~0#1.base)_3, ULTIMATE.start_main_~i~2#1, ULTIMATE.start_main_~#x~0#1.offset) = 1*v_rep(select #length ULTIMATE.start_main_~#x~0#1.base)_3 - 4*ULTIMATE.start_main_~i~2#1 - 1*ULTIMATE.start_main_~#x~0#1.offset Supporting invariants [] [2024-11-23 02:15:50,069 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (52)] Forceful destruction successful, exit code 0 [2024-11-23 02:15:50,078 INFO L156 tatePredicateManager]: 5 out of 5 supporting invariants were superfluous and have been removed [2024-11-23 02:15:50,079 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: #length [2024-11-23 02:15:50,079 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array IdentifierExpression[#length,GLOBAL] [2024-11-23 02:15:50,079 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: ~#x~0!offset [2024-11-23 02:15:50,088 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:50,112 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:15:50,113 INFO L255 TraceCheckSpWp]: Trace formula consists of 146 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-11-23 02:15:50,114 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:15:50,140 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:15:50,140 INFO L255 TraceCheckSpWp]: Trace formula consists of 15 conjuncts, 4 conjuncts are in the unsatisfiable core [2024-11-23 02:15:50,140 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:15:50,155 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-23 02:15:50,155 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-23 02:15:50,155 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 132 states and 163 transitions. cyclomatic complexity: 38 Second operand has 3 states, 3 states have (on average 7.0) internal successors, (21), 3 states have internal predecessors, (21), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:15:50,180 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 132 states and 163 transitions. cyclomatic complexity: 38. Second operand has 3 states, 3 states have (on average 7.0) internal successors, (21), 3 states have internal predecessors, (21), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Result 136 states and 170 transitions. Complement of second has 5 states. [2024-11-23 02:15:50,180 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-23 02:15:50,181 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-23 02:15:50,181 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 25 transitions. [2024-11-23 02:15:50,181 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states and 25 transitions. Stem has 27 letters. Loop has 2 letters. [2024-11-23 02:15:50,181 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-23 02:15:50,182 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states and 25 transitions. Stem has 29 letters. Loop has 2 letters. [2024-11-23 02:15:50,183 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-23 02:15:50,183 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states and 25 transitions. Stem has 27 letters. Loop has 4 letters. [2024-11-23 02:15:50,183 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-23 02:15:50,183 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 136 states and 170 transitions. [2024-11-23 02:15:50,184 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-23 02:15:50,184 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 136 states to 67 states and 85 transitions. [2024-11-23 02:15:50,184 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 39 [2024-11-23 02:15:50,184 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 40 [2024-11-23 02:15:50,184 INFO L73 IsDeterministic]: Start isDeterministic. Operand 67 states and 85 transitions. [2024-11-23 02:15:50,184 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:15:50,184 INFO L218 hiAutomatonCegarLoop]: Abstraction has 67 states and 85 transitions. [2024-11-23 02:15:50,184 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 67 states and 85 transitions. [2024-11-23 02:15:50,186 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 67 to 67. [2024-11-23 02:15:50,186 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 67 states, 67 states have (on average 1.2686567164179106) internal successors, (85), 66 states have internal predecessors, (85), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:15:50,186 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 67 states to 67 states and 85 transitions. [2024-11-23 02:15:50,186 INFO L240 hiAutomatonCegarLoop]: Abstraction has 67 states and 85 transitions. [2024-11-23 02:15:50,186 INFO L425 stractBuchiCegarLoop]: Abstraction has 67 states and 85 transitions. [2024-11-23 02:15:50,187 INFO L332 stractBuchiCegarLoop]: ======== Iteration 12 ============ [2024-11-23 02:15:50,187 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 67 states and 85 transitions. [2024-11-23 02:15:50,187 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-23 02:15:50,187 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:15:50,187 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:15:50,188 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [5, 5, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-23 02:15:50,188 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-23 02:15:50,188 INFO L745 eck$LassoCheckResult]: Stem: 3001#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 2991#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 2985#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 2986#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 2997#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 2998#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 2999#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 3018#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 3016#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 3014#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 3013#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 3011#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 3006#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 3005#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 2970#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 2971#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 2978#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2979#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3004#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 3007#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2977#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2994#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 2981#L29-4 assume !(0 != rangesum_~cnt~0#1);rangesum_#res#1 := 0; 2982#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 2992#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3024#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3023#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2993#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 2972#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2973#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3027#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3028#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3026#L29-7 [2024-11-23 02:15:50,188 INFO L747 eck$LassoCheckResult]: Loop: 3026#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3029#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3025#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 3026#L29-7 [2024-11-23 02:15:50,189 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:50,189 INFO L85 PathProgramCache]: Analyzing trace with hash 1475256012, now seen corresponding path program 1 times [2024-11-23 02:15:50,189 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:50,189 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [497124258] [2024-11-23 02:15:50,189 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:15:50,189 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:50,202 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:15:50,324 INFO L134 CoverageAnalysis]: Checked inductivity of 37 backedges. 3 proven. 9 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2024-11-23 02:15:50,324 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:15:50,325 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [497124258] [2024-11-23 02:15:50,325 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [497124258] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-23 02:15:50,325 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [390954815] [2024-11-23 02:15:50,325 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:15:50,325 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-23 02:15:50,325 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:50,327 INFO L229 MonitoredProcess]: Starting monitored process 54 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-23 02:15:50,329 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (54)] Waiting until timeout for monitored process [2024-11-23 02:15:50,395 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:15:50,397 INFO L255 TraceCheckSpWp]: Trace formula consists of 166 conjuncts, 10 conjuncts are in the unsatisfiable core [2024-11-23 02:15:50,398 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:15:50,507 INFO L134 CoverageAnalysis]: Checked inductivity of 37 backedges. 16 proven. 14 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2024-11-23 02:15:50,507 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-23 02:15:50,611 INFO L134 CoverageAnalysis]: Checked inductivity of 37 backedges. 16 proven. 14 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2024-11-23 02:15:50,611 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [390954815] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-23 02:15:50,611 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-23 02:15:50,611 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 11, 11] total 24 [2024-11-23 02:15:50,611 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [40361529] [2024-11-23 02:15:50,611 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-23 02:15:50,612 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:15:50,612 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:50,612 INFO L85 PathProgramCache]: Analyzing trace with hash 88157, now seen corresponding path program 1 times [2024-11-23 02:15:50,612 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:50,612 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [6132049] [2024-11-23 02:15:50,612 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:15:50,612 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:50,615 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:50,615 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:15:50,617 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:50,618 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:15:50,677 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:15:50,678 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 24 interpolants. [2024-11-23 02:15:50,678 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=101, Invalid=451, Unknown=0, NotChecked=0, Total=552 [2024-11-23 02:15:50,678 INFO L87 Difference]: Start difference. First operand 67 states and 85 transitions. cyclomatic complexity: 24 Second operand has 24 states, 24 states have (on average 2.6666666666666665) internal successors, (64), 24 states have internal predecessors, (64), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:15:50,941 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:15:50,942 INFO L93 Difference]: Finished difference Result 90 states and 106 transitions. [2024-11-23 02:15:50,942 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 90 states and 106 transitions. [2024-11-23 02:15:50,946 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 16 [2024-11-23 02:15:50,947 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 90 states to 82 states and 96 transitions. [2024-11-23 02:15:50,947 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 49 [2024-11-23 02:15:50,947 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 49 [2024-11-23 02:15:50,947 INFO L73 IsDeterministic]: Start isDeterministic. Operand 82 states and 96 transitions. [2024-11-23 02:15:50,950 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:15:50,950 INFO L218 hiAutomatonCegarLoop]: Abstraction has 82 states and 96 transitions. [2024-11-23 02:15:50,950 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 82 states and 96 transitions. [2024-11-23 02:15:50,951 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 82 to 69. [2024-11-23 02:15:50,955 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-23 02:15:50,955 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 69 states to 69 states and 81 transitions. [2024-11-23 02:15:50,956 INFO L240 hiAutomatonCegarLoop]: Abstraction has 69 states and 81 transitions. [2024-11-23 02:15:50,956 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2024-11-23 02:15:50,956 INFO L425 stractBuchiCegarLoop]: Abstraction has 69 states and 81 transitions. [2024-11-23 02:15:50,956 INFO L332 stractBuchiCegarLoop]: ======== Iteration 13 ============ [2024-11-23 02:15:50,956 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 69 states and 81 transitions. [2024-11-23 02:15:50,957 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 11 [2024-11-23 02:15:50,957 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:15:50,960 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:15:50,961 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-23 02:15:50,961 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-23 02:15:50,961 INFO L745 eck$LassoCheckResult]: Stem: 3386#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 3377#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 3372#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 3373#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 3382#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 3383#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 3384#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 3403#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 3402#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 3400#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 3398#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 3397#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 3394#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 3393#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 3356#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 3357#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 3379#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3418#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3417#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 3364#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3365#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3419#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 3412#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3396#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3395#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 3362#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 3363#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3401#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 3399#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 3390#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3391#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 3368#L29-4 assume !(0 != rangesum_~cnt~0#1);rangesum_#res#1 := 0; 3369#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 3378#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3358#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3359#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3387#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3416#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3415#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3414#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3413#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3407#L29-7 [2024-11-23 02:15:50,961 INFO L747 eck$LassoCheckResult]: Loop: 3407#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3411#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3410#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3407#L29-7 [2024-11-23 02:15:50,965 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:50,965 INFO L85 PathProgramCache]: Analyzing trace with hash 584366359, now seen corresponding path program 1 times [2024-11-23 02:15:50,966 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:50,966 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1983336589] [2024-11-23 02:15:50,966 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:15:50,966 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:50,992 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-23 02:15:51,011 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:15:51,078 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-23 02:15:51,079 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:15:51,079 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1983336589] [2024-11-23 02:15:51,079 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1983336589] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-23 02:15:51,079 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1895937930] [2024-11-23 02:15:51,079 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:15:51,080 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-23 02:15:51,080 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:51,081 INFO L229 MonitoredProcess]: Starting monitored process 55 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-23 02:15:51,083 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (55)] Waiting until timeout for monitored process [2024-11-23 02:15:51,155 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:15:51,156 INFO L255 TraceCheckSpWp]: Trace formula consists of 194 conjuncts, 4 conjuncts are in the unsatisfiable core [2024-11-23 02:15:51,157 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:15:51,183 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-23 02:15:51,184 INFO L307 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2024-11-23 02:15:51,184 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1895937930] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-23 02:15:51,184 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2024-11-23 02:15:51,184 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [5] total 6 [2024-11-23 02:15:51,184 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [333974326] [2024-11-23 02:15:51,184 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-23 02:15:51,185 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:15:51,185 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:51,185 INFO L85 PathProgramCache]: Analyzing trace with hash 88159, now seen corresponding path program 1 times [2024-11-23 02:15:51,185 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:51,185 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1745774043] [2024-11-23 02:15:51,185 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:15:51,186 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:51,189 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:51,189 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:15:51,190 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:51,192 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:15:51,221 INFO L204 LassoAnalysis]: Preferences: [2024-11-23 02:15:51,221 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-23 02:15:51,221 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-23 02:15:51,222 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-23 02:15:51,222 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2024-11-23 02:15:51,222 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:51,222 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-23 02:15:51,222 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-23 02:15:51,222 INFO L132 ssoRankerPreferences]: Filename of dumped script: rangesum.i_Iteration13_Loop [2024-11-23 02:15:51,222 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-23 02:15:51,222 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-23 02:15:51,223 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:51,229 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:51,263 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-23 02:15:51,263 INFO L365 LassoAnalysis]: Checking for nontermination... [2024-11-23 02:15:51,263 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:51,263 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:51,265 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-23 02:15:51,266 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-23 02:15:51,267 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2024-11-23 02:15:51,267 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-11-23 02:15:51,284 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (56)] Forceful destruction successful, exit code 0 [2024-11-23 02:15:51,285 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:51,285 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:51,287 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-23 02:15:51,288 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-23 02:15:51,289 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2024-11-23 02:15:51,289 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-11-23 02:15:51,447 INFO L405 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2024-11-23 02:15:51,453 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (57)] Forceful destruction successful, exit code 0 [2024-11-23 02:15:51,454 INFO L204 LassoAnalysis]: Preferences: [2024-11-23 02:15:51,454 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-23 02:15:51,454 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-23 02:15:51,454 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-23 02:15:51,455 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-23 02:15:51,455 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:51,455 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-23 02:15:51,455 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-23 02:15:51,455 INFO L132 ssoRankerPreferences]: Filename of dumped script: rangesum.i_Iteration13_Loop [2024-11-23 02:15:51,455 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-23 02:15:51,455 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-23 02:15:51,455 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:51,462 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:51,493 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-23 02:15:51,494 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-23 02:15:51,494 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:51,494 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:51,495 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-23 02:15:51,496 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-23 02:15:51,497 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:51,507 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:51,507 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-23 02:15:51,507 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:51,507 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:51,507 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:51,508 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-23 02:15:51,508 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-23 02:15:51,510 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-23 02:15:51,515 INFO L443 ModelExtractionUtils]: Simplification made 4 calls to the SMT solver. [2024-11-23 02:15:51,515 INFO L444 ModelExtractionUtils]: 0 out of 4 variables were initially zero. Simplification set additionally 1 variables to zero. [2024-11-23 02:15:51,515 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:51,515 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:51,517 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-23 02:15:51,518 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-23 02:15:51,519 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-23 02:15:51,519 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2024-11-23 02:15:51,519 INFO L474 LassoAnalysis]: Proved termination. [2024-11-23 02:15:51,519 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(~N~0, ULTIMATE.start_rangesum_~i~1#1) = 1*~N~0 - 2*ULTIMATE.start_rangesum_~i~1#1 Supporting invariants [] [2024-11-23 02:15:51,525 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (58)] Ended with exit code 0 [2024-11-23 02:15:51,526 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2024-11-23 02:15:51,535 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:51,562 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:15:51,564 INFO L255 TraceCheckSpWp]: Trace formula consists of 194 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-11-23 02:15:51,565 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:15:51,600 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:15:51,601 WARN L253 TraceCheckSpWp]: Trace formula consists of 6 conjuncts, 5 conjuncts are in the unsatisfiable core [2024-11-23 02:15:51,601 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:15:51,618 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-23 02:15:51,618 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-23 02:15:51,618 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-23 02:15:51,641 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-23 02:15:51,642 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-23 02:15:51,646 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-23 02:15:51,646 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 22 transitions. [2024-11-23 02:15:51,647 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 22 transitions. Stem has 41 letters. Loop has 3 letters. [2024-11-23 02:15:51,647 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-23 02:15:51,647 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 22 transitions. Stem has 44 letters. Loop has 3 letters. [2024-11-23 02:15:51,647 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-23 02:15:51,647 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 22 transitions. Stem has 41 letters. Loop has 6 letters. [2024-11-23 02:15:51,647 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-23 02:15:51,647 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 80 states and 93 transitions. [2024-11-23 02:15:51,648 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-23 02:15:51,648 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 80 states to 76 states and 89 transitions. [2024-11-23 02:15:51,648 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 35 [2024-11-23 02:15:51,649 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 36 [2024-11-23 02:15:51,649 INFO L73 IsDeterministic]: Start isDeterministic. Operand 76 states and 89 transitions. [2024-11-23 02:15:51,649 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:15:51,649 INFO L218 hiAutomatonCegarLoop]: Abstraction has 76 states and 89 transitions. [2024-11-23 02:15:51,649 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 76 states and 89 transitions. [2024-11-23 02:15:51,650 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 76 to 72. [2024-11-23 02:15:51,650 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-23 02:15:51,650 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 72 states to 72 states and 84 transitions. [2024-11-23 02:15:51,650 INFO L240 hiAutomatonCegarLoop]: Abstraction has 72 states and 84 transitions. [2024-11-23 02:15:51,650 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:15:51,651 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-11-23 02:15:51,651 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=17, Unknown=0, NotChecked=0, Total=30 [2024-11-23 02:15:51,651 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-23 02:15:51,677 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:15:51,677 INFO L93 Difference]: Finished difference Result 105 states and 126 transitions. [2024-11-23 02:15:51,677 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 105 states and 126 transitions. [2024-11-23 02:15:51,678 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 12 [2024-11-23 02:15:51,678 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 105 states to 105 states and 126 transitions. [2024-11-23 02:15:51,678 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 51 [2024-11-23 02:15:51,678 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 51 [2024-11-23 02:15:51,678 INFO L73 IsDeterministic]: Start isDeterministic. Operand 105 states and 126 transitions. [2024-11-23 02:15:51,679 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:15:51,679 INFO L218 hiAutomatonCegarLoop]: Abstraction has 105 states and 126 transitions. [2024-11-23 02:15:51,679 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 105 states and 126 transitions. [2024-11-23 02:15:51,680 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 105 to 72. [2024-11-23 02:15:51,680 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-23 02:15:51,680 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 72 states to 72 states and 82 transitions. [2024-11-23 02:15:51,680 INFO L240 hiAutomatonCegarLoop]: Abstraction has 72 states and 82 transitions. [2024-11-23 02:15:51,681 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-11-23 02:15:51,681 INFO L425 stractBuchiCegarLoop]: Abstraction has 72 states and 82 transitions. [2024-11-23 02:15:51,681 INFO L332 stractBuchiCegarLoop]: ======== Iteration 14 ============ [2024-11-23 02:15:51,681 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 72 states and 82 transitions. [2024-11-23 02:15:51,681 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-23 02:15:51,681 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:15:51,682 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:15:51,682 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-23 02:15:51,682 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-23 02:15:51,683 INFO L745 eck$LassoCheckResult]: Stem: 3995#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 3983#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 3976#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 3977#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 3991#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 3992#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 3993#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 4012#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 4011#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 4010#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 4009#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 4008#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 4006#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 4005#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 3960#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 3961#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 3988#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4025#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4024#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 3968#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3969#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4026#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 4022#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4021#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4019#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 3966#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 3967#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4017#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 4007#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 4002#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4003#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 3972#L29-4 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 3973#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 3984#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4018#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3996#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3997#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3964#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3965#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3986#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3987#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4020#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3985#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3962#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 3963#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4016#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4014#L30-2 [2024-11-23 02:15:51,683 INFO L747 eck$LassoCheckResult]: Loop: 4014#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 4015#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4013#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4014#L30-2 [2024-11-23 02:15:51,683 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:51,683 INFO L85 PathProgramCache]: Analyzing trace with hash -1458082658, now seen corresponding path program 1 times [2024-11-23 02:15:51,684 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:51,684 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1708515537] [2024-11-23 02:15:51,684 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:15:51,684 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:51,707 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unknown [2024-11-23 02:15:51,709 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2102327673] [2024-11-23 02:15:51,709 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:15:51,710 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-23 02:15:51,710 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:51,712 INFO L229 MonitoredProcess]: Starting monitored process 60 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-23 02:15:51,712 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (60)] Waiting until timeout for monitored process [2024-11-23 02:15:51,789 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:51,790 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:15:51,808 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:51,822 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:15:51,823 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:51,823 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 2 times [2024-11-23 02:15:51,823 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:51,823 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1048907337] [2024-11-23 02:15:51,823 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-23 02:15:51,824 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:51,827 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2024-11-23 02:15:51,827 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:15:51,827 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:15:51,828 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:51,830 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:15:51,830 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:51,830 INFO L85 PathProgramCache]: Analyzing trace with hash 1558822002, now seen corresponding path program 2 times [2024-11-23 02:15:51,830 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:51,830 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2049783374] [2024-11-23 02:15:51,830 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-23 02:15:51,830 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:51,847 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-23 02:15:51,847 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:15:52,064 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-23 02:15:52,065 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:15:52,065 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2049783374] [2024-11-23 02:15:52,065 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2049783374] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-23 02:15:52,065 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1926204928] [2024-11-23 02:15:52,065 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-23 02:15:52,065 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-23 02:15:52,066 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:52,068 INFO L229 MonitoredProcess]: Starting monitored process 61 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-23 02:15:52,070 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (61)] Waiting until timeout for monitored process [2024-11-23 02:15:52,140 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-23 02:15:52,140 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:15:52,141 INFO L255 TraceCheckSpWp]: Trace formula consists of 220 conjuncts, 14 conjuncts are in the unsatisfiable core [2024-11-23 02:15:52,142 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:15:52,183 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-23 02:15:52,381 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-23 02:15:52,382 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-23 02:15:52,553 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-23 02:15:52,554 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1926204928] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-23 02:15:52,554 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-23 02:15:52,554 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 14, 14] total 25 [2024-11-23 02:15:52,554 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1378266482] [2024-11-23 02:15:52,554 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-23 02:15:52,604 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:15:52,607 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 26 interpolants. [2024-11-23 02:15:52,608 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=134, Invalid=516, Unknown=0, NotChecked=0, Total=650 [2024-11-23 02:15:52,608 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-23 02:15:53,288 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:15:53,288 INFO L93 Difference]: Finished difference Result 241 states and 268 transitions. [2024-11-23 02:15:53,289 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 241 states and 268 transitions. [2024-11-23 02:15:53,290 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 19 [2024-11-23 02:15:53,290 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 241 states to 154 states and 179 transitions. [2024-11-23 02:15:53,290 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 81 [2024-11-23 02:15:53,291 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 81 [2024-11-23 02:15:53,291 INFO L73 IsDeterministic]: Start isDeterministic. Operand 154 states and 179 transitions. [2024-11-23 02:15:53,291 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:15:53,291 INFO L218 hiAutomatonCegarLoop]: Abstraction has 154 states and 179 transitions. [2024-11-23 02:15:53,291 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 154 states and 179 transitions. [2024-11-23 02:15:53,292 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 154 to 109. [2024-11-23 02:15:53,293 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-23 02:15:53,293 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 109 states to 109 states and 124 transitions. [2024-11-23 02:15:53,293 INFO L240 hiAutomatonCegarLoop]: Abstraction has 109 states and 124 transitions. [2024-11-23 02:15:53,293 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 32 states. [2024-11-23 02:15:53,294 INFO L425 stractBuchiCegarLoop]: Abstraction has 109 states and 124 transitions. [2024-11-23 02:15:53,294 INFO L332 stractBuchiCegarLoop]: ======== Iteration 15 ============ [2024-11-23 02:15:53,294 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 109 states and 124 transitions. [2024-11-23 02:15:53,294 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 9 [2024-11-23 02:15:53,294 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:15:53,295 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:15:53,295 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-23 02:15:53,295 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-23 02:15:53,295 INFO L745 eck$LassoCheckResult]: Stem: 4676#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 4661#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 4650#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 4651#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 4673#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 4674#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 4671#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 4672#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 4697#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 4696#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 4695#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 4694#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 4693#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 4692#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 4686#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 4685#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 4635#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 4636#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 4668#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4706#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4705#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 4643#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4644#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4730#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 4689#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4688#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4687#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 4641#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 4642#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4729#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 4728#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 4701#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4704#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 4699#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 4700#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4690#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 4691#L29-4 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 4662#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 4663#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4637#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4638#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4727#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4639#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4640#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4731#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4716#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4717#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4711#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4712#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 4723#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4718#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4719#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 4702#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4703#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4707#L30-2 [2024-11-23 02:15:53,296 INFO L747 eck$LassoCheckResult]: Loop: 4707#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 4708#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4743#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4707#L30-2 [2024-11-23 02:15:53,296 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:53,296 INFO L85 PathProgramCache]: Analyzing trace with hash -1976417725, now seen corresponding path program 3 times [2024-11-23 02:15:53,296 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:53,296 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1624252128] [2024-11-23 02:15:53,296 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-23 02:15:53,297 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:53,326 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 6 check-sat command(s) [2024-11-23 02:15:53,326 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:15:53,497 INFO L134 CoverageAnalysis]: Checked inductivity of 122 backedges. 2 proven. 33 refuted. 0 times theorem prover too weak. 87 trivial. 0 not checked. [2024-11-23 02:15:53,498 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:15:53,498 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1624252128] [2024-11-23 02:15:53,498 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1624252128] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-23 02:15:53,498 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1993678471] [2024-11-23 02:15:53,498 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-23 02:15:53,498 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-23 02:15:53,498 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:53,500 INFO L229 MonitoredProcess]: Starting monitored process 62 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-23 02:15:53,501 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (62)] Waiting until timeout for monitored process [2024-11-23 02:15:53,593 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 6 check-sat command(s) [2024-11-23 02:15:53,593 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:15:53,594 INFO L255 TraceCheckSpWp]: Trace formula consists of 228 conjuncts, 9 conjuncts are in the unsatisfiable core [2024-11-23 02:15:53,596 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:15:53,738 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-23 02:15:53,738 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-23 02:15:53,844 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-23 02:15:53,845 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1993678471] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-23 02:15:53,845 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-23 02:15:53,845 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 9, 8] total 20 [2024-11-23 02:15:53,845 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1416387261] [2024-11-23 02:15:53,845 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-23 02:15:53,845 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:15:53,845 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:53,845 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 3 times [2024-11-23 02:15:53,845 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:53,845 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [660794339] [2024-11-23 02:15:53,846 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-23 02:15:53,846 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:53,849 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) [2024-11-23 02:15:53,849 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:15:53,849 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:15:53,850 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:53,851 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:15:53,906 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:15:53,907 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2024-11-23 02:15:53,907 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=120, Invalid=300, Unknown=0, NotChecked=0, Total=420 [2024-11-23 02:15:53,907 INFO L87 Difference]: Start difference. First operand 109 states and 124 transitions. cyclomatic complexity: 25 Second operand has 21 states, 20 states have (on average 3.5) internal successors, (70), 21 states have internal predecessors, (70), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:15:54,118 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:15:54,119 INFO L93 Difference]: Finished difference Result 181 states and 201 transitions. [2024-11-23 02:15:54,119 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 181 states and 201 transitions. [2024-11-23 02:15:54,120 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 10 [2024-11-23 02:15:54,120 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 181 states to 164 states and 184 transitions. [2024-11-23 02:15:54,120 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 98 [2024-11-23 02:15:54,120 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 101 [2024-11-23 02:15:54,121 INFO L73 IsDeterministic]: Start isDeterministic. Operand 164 states and 184 transitions. [2024-11-23 02:15:54,121 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:15:54,121 INFO L218 hiAutomatonCegarLoop]: Abstraction has 164 states and 184 transitions. [2024-11-23 02:15:54,121 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 164 states and 184 transitions. [2024-11-23 02:15:54,122 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 164 to 122. [2024-11-23 02:15:54,122 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 122 states, 122 states have (on average 1.139344262295082) internal successors, (139), 121 states have internal predecessors, (139), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:15:54,123 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 122 states to 122 states and 139 transitions. [2024-11-23 02:15:54,123 INFO L240 hiAutomatonCegarLoop]: Abstraction has 122 states and 139 transitions. [2024-11-23 02:15:54,123 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2024-11-23 02:15:54,123 INFO L425 stractBuchiCegarLoop]: Abstraction has 122 states and 139 transitions. [2024-11-23 02:15:54,123 INFO L332 stractBuchiCegarLoop]: ======== Iteration 16 ============ [2024-11-23 02:15:54,124 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 122 states and 139 transitions. [2024-11-23 02:15:54,124 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 9 [2024-11-23 02:15:54,124 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:15:54,124 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:15:54,125 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [6, 6, 5, 5, 5, 5, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-23 02:15:54,125 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-23 02:15:54,125 INFO L745 eck$LassoCheckResult]: Stem: 5313#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 5303#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 5294#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 5295#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 5309#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 5310#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 5311#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 5325#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 5324#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 5323#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 5322#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 5321#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 5320#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 5319#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 5318#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 5317#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 5276#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 5277#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 5342#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5341#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5340#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 5339#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5338#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5337#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 5336#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5335#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5332#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 5331#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 5330#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5326#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 5327#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 5285#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5306#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 5289#L29-4 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 5290#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 5304#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5278#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5279#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5314#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5379#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5315#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5305#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5280#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5281#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5362#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5378#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 5377#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5350#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5347#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 5346#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5345#L29-8 assume !(rangesum_~i~1#1 < ~N~0); 5312#L29-9 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 5292#rangesum_returnLabel#2 main_#t~ret9#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret2~0#1 := main_#t~ret9#1;havoc main_#t~ret9#1;call main_#t~mem10#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem10#1;havoc main_#t~mem10#1;main_~i~2#1 := 0; 5293#L57-3 assume !(main_~i~2#1 < ~N~0 - 1); 5287#L57-4 havoc main_~i~2#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, main_~#x~0#1.offset + 4 * (~N~0 - 1), 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 5288#L29-13 [2024-11-23 02:15:54,125 INFO L747 eck$LassoCheckResult]: Loop: 5288#L29-13 assume !!(rangesum_~i~1#1 < ~N~0); 5291#L30-4 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5296#L29-12 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5288#L29-13 [2024-11-23 02:15:54,126 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:54,126 INFO L85 PathProgramCache]: Analyzing trace with hash -1725320802, now seen corresponding path program 1 times [2024-11-23 02:15:54,126 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:54,126 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1567523835] [2024-11-23 02:15:54,126 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:15:54,126 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:54,138 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:15:54,188 INFO L134 CoverageAnalysis]: Checked inductivity of 106 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 106 trivial. 0 not checked. [2024-11-23 02:15:54,188 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:15:54,188 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1567523835] [2024-11-23 02:15:54,188 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1567523835] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-23 02:15:54,188 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-23 02:15:54,189 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-11-23 02:15:54,189 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1460627446] [2024-11-23 02:15:54,189 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-23 02:15:54,189 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:15:54,189 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:54,189 INFO L85 PathProgramCache]: Analyzing trace with hash 120316, now seen corresponding path program 1 times [2024-11-23 02:15:54,189 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:54,189 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [996237763] [2024-11-23 02:15:54,190 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-23 02:15:54,190 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:54,192 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:54,192 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:15:54,193 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:54,194 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:15:54,219 INFO L204 LassoAnalysis]: Preferences: [2024-11-23 02:15:54,219 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-23 02:15:54,219 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-23 02:15:54,219 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-23 02:15:54,219 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2024-11-23 02:15:54,219 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:54,220 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-23 02:15:54,220 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-23 02:15:54,220 INFO L132 ssoRankerPreferences]: Filename of dumped script: rangesum.i_Iteration16_Loop [2024-11-23 02:15:54,220 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-23 02:15:54,220 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-23 02:15:54,220 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:54,222 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:54,256 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-23 02:15:54,257 INFO L365 LassoAnalysis]: Checking for nontermination... [2024-11-23 02:15:54,257 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:54,257 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:54,259 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-23 02:15:54,260 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-23 02:15:54,261 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2024-11-23 02:15:54,261 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-11-23 02:15:54,272 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2024-11-23 02:15:54,273 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_rangesum_#t~post4#1=0} Honda state: {ULTIMATE.start_rangesum_#t~post4#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2024-11-23 02:15:54,278 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (63)] Forceful destruction successful, exit code 0 [2024-11-23 02:15:54,279 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:54,279 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:54,281 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-23 02:15:54,282 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-23 02:15:54,282 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2024-11-23 02:15:54,282 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-11-23 02:15:54,299 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (64)] Forceful destruction successful, exit code 0 [2024-11-23 02:15:54,299 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:54,299 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:54,301 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-23 02:15:54,302 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-23 02:15:54,303 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2024-11-23 02:15:54,303 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-11-23 02:15:54,396 INFO L405 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2024-11-23 02:15:54,401 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-23 02:15:54,402 INFO L204 LassoAnalysis]: Preferences: [2024-11-23 02:15:54,402 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-23 02:15:54,402 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-23 02:15:54,402 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-23 02:15:54,402 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-23 02:15:54,402 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:54,402 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-23 02:15:54,402 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-23 02:15:54,402 INFO L132 ssoRankerPreferences]: Filename of dumped script: rangesum.i_Iteration16_Loop [2024-11-23 02:15:54,402 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-23 02:15:54,402 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-23 02:15:54,403 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:54,409 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-23 02:15:54,438 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-23 02:15:54,439 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-23 02:15:54,439 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:54,439 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:54,441 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-23 02:15:54,442 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-23 02:15:54,443 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-23 02:15:54,453 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-23 02:15:54,453 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-23 02:15:54,453 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-23 02:15:54,453 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-23 02:15:54,453 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-23 02:15:54,454 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-23 02:15:54,454 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-23 02:15:54,456 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-23 02:15:54,459 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2024-11-23 02:15:54,459 INFO L444 ModelExtractionUtils]: 0 out of 4 variables were initially zero. Simplification set additionally 1 variables to zero. [2024-11-23 02:15:54,459 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-23 02:15:54,459 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:54,461 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-23 02:15:54,462 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-23 02:15:54,463 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-23 02:15:54,463 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2024-11-23 02:15:54,463 INFO L474 LassoAnalysis]: Proved termination. [2024-11-23 02:15:54,463 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-23 02:15:54,469 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (66)] Forceful destruction successful, exit code 0 [2024-11-23 02:15:54,470 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2024-11-23 02:15:54,479 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:54,516 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:15:54,518 INFO L255 TraceCheckSpWp]: Trace formula consists of 267 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-11-23 02:15:54,519 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:15:54,563 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:15:54,563 WARN L253 TraceCheckSpWp]: Trace formula consists of 6 conjuncts, 5 conjuncts are in the unsatisfiable core [2024-11-23 02:15:54,563 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:15:54,601 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-23 02:15:54,601 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-23 02:15:54,602 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 122 states and 139 transitions. cyclomatic complexity: 27 Second operand has 4 states, 4 states have (on average 6.5) internal successors, (26), 4 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:15:54,625 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 122 states and 139 transitions. cyclomatic complexity: 27. Second operand has 4 states, 4 states have (on average 6.5) internal successors, (26), 4 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Result 139 states and 160 transitions. Complement of second has 8 states. [2024-11-23 02:15:54,626 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-23 02:15:54,626 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-23 02:15:54,626 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 31 transitions. [2024-11-23 02:15:54,627 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 31 transitions. Stem has 55 letters. Loop has 3 letters. [2024-11-23 02:15:54,627 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-23 02:15:54,627 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 31 transitions. Stem has 58 letters. Loop has 3 letters. [2024-11-23 02:15:54,627 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-23 02:15:54,627 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 31 transitions. Stem has 55 letters. Loop has 6 letters. [2024-11-23 02:15:54,646 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-23 02:15:54,647 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 139 states and 160 transitions. [2024-11-23 02:15:54,648 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-23 02:15:54,648 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 139 states to 95 states and 106 transitions. [2024-11-23 02:15:54,648 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 32 [2024-11-23 02:15:54,648 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 33 [2024-11-23 02:15:54,648 INFO L73 IsDeterministic]: Start isDeterministic. Operand 95 states and 106 transitions. [2024-11-23 02:15:54,648 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:15:54,648 INFO L218 hiAutomatonCegarLoop]: Abstraction has 95 states and 106 transitions. [2024-11-23 02:15:54,650 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 95 states and 106 transitions. [2024-11-23 02:15:54,651 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 95 to 94. [2024-11-23 02:15:54,651 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 94 states, 94 states have (on average 1.1170212765957446) internal successors, (105), 93 states have internal predecessors, (105), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:15:54,652 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 94 states to 94 states and 105 transitions. [2024-11-23 02:15:54,652 INFO L240 hiAutomatonCegarLoop]: Abstraction has 94 states and 105 transitions. [2024-11-23 02:15:54,652 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:15:54,652 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-11-23 02:15:54,652 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2024-11-23 02:15:54,652 INFO L87 Difference]: Start difference. First operand 94 states and 105 transitions. Second operand has 4 states, 4 states have (on average 5.75) internal successors, (23), 4 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:15:54,653 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-23 02:15:54,689 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:15:54,689 INFO L93 Difference]: Finished difference Result 95 states and 105 transitions. [2024-11-23 02:15:54,689 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 95 states and 105 transitions. [2024-11-23 02:15:54,690 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-23 02:15:54,690 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 95 states to 95 states and 105 transitions. [2024-11-23 02:15:54,690 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 32 [2024-11-23 02:15:54,690 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 32 [2024-11-23 02:15:54,690 INFO L73 IsDeterministic]: Start isDeterministic. Operand 95 states and 105 transitions. [2024-11-23 02:15:54,690 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:15:54,691 INFO L218 hiAutomatonCegarLoop]: Abstraction has 95 states and 105 transitions. [2024-11-23 02:15:54,691 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 95 states and 105 transitions. [2024-11-23 02:15:54,692 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 95 to 94. [2024-11-23 02:15:54,692 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 94 states, 94 states have (on average 1.1063829787234043) internal successors, (104), 93 states have internal predecessors, (104), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:15:54,693 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 94 states to 94 states and 104 transitions. [2024-11-23 02:15:54,693 INFO L240 hiAutomatonCegarLoop]: Abstraction has 94 states and 104 transitions. [2024-11-23 02:15:54,693 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-11-23 02:15:54,694 INFO L425 stractBuchiCegarLoop]: Abstraction has 94 states and 104 transitions. [2024-11-23 02:15:54,694 INFO L332 stractBuchiCegarLoop]: ======== Iteration 17 ============ [2024-11-23 02:15:54,694 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 94 states and 104 transitions. [2024-11-23 02:15:54,695 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-23 02:15:54,695 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:15:54,695 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:15:54,695 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-23 02:15:54,695 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-23 02:15:54,696 INFO L745 eck$LassoCheckResult]: Stem: 5963#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 5952#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 5945#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 5946#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 5959#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 5960#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 5961#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 5987#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 5984#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 5983#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 5982#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 5980#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 5978#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 5977#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 5973#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 5972#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 5926#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 5927#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 5936#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5937#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5957#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 5958#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6013#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6012#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 6010#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6007#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6008#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 5993#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5992#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5990#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 5934#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 5935#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5981#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 5979#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 5975#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5976#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 5974#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 5970#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5971#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 5941#L29-4 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 5942#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 5953#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5928#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5929#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5964#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 6015#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6014#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5956#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5930#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5931#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6018#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 6004#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6003#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5954#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5955#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 6001#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6000#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5999#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 5998#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5997#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5995#L30-2 [2024-11-23 02:15:54,696 INFO L747 eck$LassoCheckResult]: Loop: 5995#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 5996#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5994#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5995#L30-2 [2024-11-23 02:15:54,696 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:54,696 INFO L85 PathProgramCache]: Analyzing trace with hash 380293024, now seen corresponding path program 4 times [2024-11-23 02:15:54,696 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:54,696 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1908743272] [2024-11-23 02:15:54,696 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-23 02:15:54,697 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:54,722 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-23 02:15:54,723 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:15:54,970 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-23 02:15:54,970 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:15:54,970 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1908743272] [2024-11-23 02:15:54,970 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1908743272] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-23 02:15:54,971 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [735303078] [2024-11-23 02:15:54,971 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-23 02:15:54,971 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-23 02:15:54,971 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:54,973 INFO L229 MonitoredProcess]: Starting monitored process 68 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-23 02:15:54,974 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (68)] Waiting until timeout for monitored process [2024-11-23 02:15:55,072 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-23 02:15:55,072 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:15:55,074 INFO L255 TraceCheckSpWp]: Trace formula consists of 251 conjuncts, 16 conjuncts are in the unsatisfiable core [2024-11-23 02:15:55,075 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:15:55,242 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-23 02:15:55,243 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-23 02:15:55,358 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-23 02:15:55,359 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [735303078] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-23 02:15:55,359 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-23 02:15:55,359 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 17, 17] total 24 [2024-11-23 02:15:55,359 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1885448249] [2024-11-23 02:15:55,359 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-23 02:15:55,360 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:15:55,360 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:55,360 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 4 times [2024-11-23 02:15:55,360 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:55,360 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [898795857] [2024-11-23 02:15:55,360 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-23 02:15:55,361 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:55,364 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-23 02:15:55,365 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:15:55,365 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:15:55,371 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:55,375 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:15:55,473 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:15:55,473 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 24 interpolants. [2024-11-23 02:15:55,474 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=143, Invalid=409, Unknown=0, NotChecked=0, Total=552 [2024-11-23 02:15:55,474 INFO L87 Difference]: Start difference. First operand 94 states and 104 transitions. cyclomatic complexity: 18 Second operand has 24 states, 24 states have (on average 2.7083333333333335) internal successors, (65), 24 states have internal predecessors, (65), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:15:55,661 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:15:55,661 INFO L93 Difference]: Finished difference Result 123 states and 133 transitions. [2024-11-23 02:15:55,661 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 123 states and 133 transitions. [2024-11-23 02:15:55,661 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-23 02:15:55,662 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 123 states to 97 states and 107 transitions. [2024-11-23 02:15:55,662 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 32 [2024-11-23 02:15:55,662 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 32 [2024-11-23 02:15:55,662 INFO L73 IsDeterministic]: Start isDeterministic. Operand 97 states and 107 transitions. [2024-11-23 02:15:55,665 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:15:55,665 INFO L218 hiAutomatonCegarLoop]: Abstraction has 97 states and 107 transitions. [2024-11-23 02:15:55,665 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 97 states and 107 transitions. [2024-11-23 02:15:55,666 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 97 to 96. [2024-11-23 02:15:55,667 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 96 states, 96 states have (on average 1.1041666666666667) internal successors, (106), 95 states have internal predecessors, (106), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:15:55,668 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 96 states to 96 states and 106 transitions. [2024-11-23 02:15:55,668 INFO L240 hiAutomatonCegarLoop]: Abstraction has 96 states and 106 transitions. [2024-11-23 02:15:55,668 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2024-11-23 02:15:55,668 INFO L425 stractBuchiCegarLoop]: Abstraction has 96 states and 106 transitions. [2024-11-23 02:15:55,668 INFO L332 stractBuchiCegarLoop]: ======== Iteration 18 ============ [2024-11-23 02:15:55,668 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 96 states and 106 transitions. [2024-11-23 02:15:55,669 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-23 02:15:55,669 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:15:55,669 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:15:55,672 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-23 02:15:55,672 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-23 02:15:55,673 INFO L745 eck$LassoCheckResult]: Stem: 6560#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 6551#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 6541#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 6542#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 6556#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 6557#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 6558#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 6602#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 6600#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 6597#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 6595#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 6593#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 6591#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 6589#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 6587#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 6586#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 6567#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 6566#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 6524#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 6525#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 6554#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6611#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6610#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 6609#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6608#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6555#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 6532#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6533#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6565#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 6574#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6573#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6568#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 6530#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 6531#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6576#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 6575#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 6571#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6572#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 6570#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 6563#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6564#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 6536#L29-4 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 6537#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 6552#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 6526#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6527#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6553#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 6528#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6529#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6561#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 6607#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6604#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6603#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 6601#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6598#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6596#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 6594#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 6592#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6590#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 6588#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 6585#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6584#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 6582#L30-2 [2024-11-23 02:15:55,673 INFO L747 eck$LassoCheckResult]: Loop: 6582#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 6583#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6581#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 6582#L30-2 [2024-11-23 02:15:55,674 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:55,674 INFO L85 PathProgramCache]: Analyzing trace with hash 466985150, now seen corresponding path program 5 times [2024-11-23 02:15:55,674 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:55,674 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1490333477] [2024-11-23 02:15:55,674 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-23 02:15:55,674 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:55,764 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 8 check-sat command(s) [2024-11-23 02:15:55,768 INFO L228 tOrderPrioritization]: Conjunction of SSA is unknown [2024-11-23 02:15:55,770 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1729746807] [2024-11-23 02:15:55,770 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-23 02:15:55,770 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-23 02:15:55,770 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:55,772 INFO L229 MonitoredProcess]: Starting monitored process 69 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-23 02:15:55,796 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (69)] Waiting until timeout for monitored process [2024-11-23 02:15:55,911 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 8 check-sat command(s) [2024-11-23 02:15:55,911 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:15:55,911 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:15:55,950 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:55,968 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:15:55,969 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:55,969 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 5 times [2024-11-23 02:15:55,969 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:55,969 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1416553681] [2024-11-23 02:15:55,969 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-23 02:15:55,969 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:55,973 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2024-11-23 02:15:55,973 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:15:55,973 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:15:55,974 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:55,975 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:15:55,976 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:55,976 INFO L85 PathProgramCache]: Analyzing trace with hash 555586642, now seen corresponding path program 6 times [2024-11-23 02:15:55,976 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:55,976 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [157886058] [2024-11-23 02:15:55,976 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-23 02:15:55,976 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:56,014 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 8 check-sat command(s) [2024-11-23 02:15:56,015 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:15:56,301 INFO L134 CoverageAnalysis]: Checked inductivity of 189 backedges. 51 proven. 82 refuted. 0 times theorem prover too weak. 56 trivial. 0 not checked. [2024-11-23 02:15:56,301 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:15:56,301 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [157886058] [2024-11-23 02:15:56,301 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [157886058] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-23 02:15:56,301 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [896278983] [2024-11-23 02:15:56,301 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-23 02:15:56,302 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-23 02:15:56,302 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:56,304 INFO L229 MonitoredProcess]: Starting monitored process 70 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-23 02:15:56,305 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (70)] Waiting until timeout for monitored process [2024-11-23 02:15:56,437 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 8 check-sat command(s) [2024-11-23 02:15:56,438 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:15:56,439 INFO L255 TraceCheckSpWp]: Trace formula consists of 274 conjuncts, 18 conjuncts are in the unsatisfiable core [2024-11-23 02:15:56,440 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:15:56,811 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-23 02:15:56,811 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-23 02:15:56,985 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-23 02:15:56,986 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [896278983] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-23 02:15:56,986 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-23 02:15:56,986 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 18, 18] total 33 [2024-11-23 02:15:56,986 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [649662713] [2024-11-23 02:15:56,986 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-23 02:15:57,051 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:15:57,052 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 34 interpolants. [2024-11-23 02:15:57,056 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=276, Invalid=846, Unknown=0, NotChecked=0, Total=1122 [2024-11-23 02:15:57,057 INFO L87 Difference]: Start difference. First operand 96 states and 106 transitions. cyclomatic complexity: 18 Second operand has 34 states, 33 states have (on average 3.0303030303030303) internal successors, (100), 34 states have internal predecessors, (100), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:15:57,987 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:15:57,987 INFO L93 Difference]: Finished difference Result 594 states and 677 transitions. [2024-11-23 02:15:57,987 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 594 states and 677 transitions. [2024-11-23 02:15:57,990 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-23 02:15:57,994 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 594 states to 255 states and 287 transitions. [2024-11-23 02:15:57,997 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 93 [2024-11-23 02:15:57,997 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 152 [2024-11-23 02:15:57,997 INFO L73 IsDeterministic]: Start isDeterministic. Operand 255 states and 287 transitions. [2024-11-23 02:15:57,998 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:15:57,998 INFO L218 hiAutomatonCegarLoop]: Abstraction has 255 states and 287 transitions. [2024-11-23 02:15:57,998 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 255 states and 287 transitions. [2024-11-23 02:15:57,999 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 255 to 218. [2024-11-23 02:15:58,004 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 218 states, 218 states have (on average 1.1376146788990826) internal successors, (248), 217 states have internal predecessors, (248), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:15:58,006 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 218 states to 218 states and 248 transitions. [2024-11-23 02:15:58,006 INFO L240 hiAutomatonCegarLoop]: Abstraction has 218 states and 248 transitions. [2024-11-23 02:15:58,006 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 49 states. [2024-11-23 02:15:58,007 INFO L425 stractBuchiCegarLoop]: Abstraction has 218 states and 248 transitions. [2024-11-23 02:15:58,007 INFO L332 stractBuchiCegarLoop]: ======== Iteration 19 ============ [2024-11-23 02:15:58,007 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 218 states and 248 transitions. [2024-11-23 02:15:58,008 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-23 02:15:58,008 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:15:58,008 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:15:58,009 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [11, 10, 8, 8, 8, 7, 7, 5, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-23 02:15:58,009 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-23 02:15:58,009 INFO L745 eck$LassoCheckResult]: Stem: 7739#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 7728#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 7720#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 7721#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 7735#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 7736#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 7737#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 7759#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 7757#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 7756#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 7755#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 7754#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 7753#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 7752#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 7751#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 7749#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 7746#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 7745#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 7699#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 7700#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 7817#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7744#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7734#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 7709#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7710#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7816#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 7815#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7814#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7813#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 7812#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7811#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7810#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 7809#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7808#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7806#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 7807#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 7906#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7905#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 7903#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 7901#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7900#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 7899#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 7780#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7760#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 7713#L29-4 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 7714#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 7729#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7890#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7889#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7888#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7887#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7886#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7885#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7884#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7883#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7882#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7881#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7880#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7879#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7878#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7876#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7873#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7871#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7869#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7731#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7703#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7705#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7742#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7897#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7874#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7872#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7870#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 7868#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7866#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7864#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 7862#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7860#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7830#L30-2 [2024-11-23 02:15:58,009 INFO L747 eck$LassoCheckResult]: Loop: 7830#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 7855#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7829#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7830#L30-2 [2024-11-23 02:15:58,009 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:58,009 INFO L85 PathProgramCache]: Analyzing trace with hash -1731509455, now seen corresponding path program 7 times [2024-11-23 02:15:58,010 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:58,010 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2060253638] [2024-11-23 02:15:58,010 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2024-11-23 02:15:58,010 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:58,026 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:15:58,307 INFO L134 CoverageAnalysis]: Checked inductivity of 286 backedges. 73 proven. 68 refuted. 0 times theorem prover too weak. 145 trivial. 0 not checked. [2024-11-23 02:15:58,307 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:15:58,307 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2060253638] [2024-11-23 02:15:58,307 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2060253638] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-23 02:15:58,307 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1434582581] [2024-11-23 02:15:58,307 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2024-11-23 02:15:58,308 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-23 02:15:58,308 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:58,310 INFO L229 MonitoredProcess]: Starting monitored process 71 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-23 02:15:58,311 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (71)] Waiting until timeout for monitored process [2024-11-23 02:15:58,400 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:15:58,401 INFO L255 TraceCheckSpWp]: Trace formula consists of 282 conjuncts, 18 conjuncts are in the unsatisfiable core [2024-11-23 02:15:58,402 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:15:58,586 INFO L134 CoverageAnalysis]: Checked inductivity of 286 backedges. 92 proven. 49 refuted. 0 times theorem prover too weak. 145 trivial. 0 not checked. [2024-11-23 02:15:58,586 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-23 02:15:58,710 INFO L134 CoverageAnalysis]: Checked inductivity of 286 backedges. 92 proven. 49 refuted. 0 times theorem prover too weak. 145 trivial. 0 not checked. [2024-11-23 02:15:58,710 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1434582581] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-23 02:15:58,710 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-23 02:15:58,710 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 19, 19] total 29 [2024-11-23 02:15:58,711 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1773381144] [2024-11-23 02:15:58,711 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-23 02:15:58,711 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:15:58,711 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:58,711 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 6 times [2024-11-23 02:15:58,711 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:58,711 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1277763633] [2024-11-23 02:15:58,712 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-23 02:15:58,712 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:58,715 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 1 check-sat command(s) [2024-11-23 02:15:58,715 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:15:58,715 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:15:58,716 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:15:58,717 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:15:58,787 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:15:58,788 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 29 interpolants. [2024-11-23 02:15:58,788 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=194, Invalid=618, Unknown=0, NotChecked=0, Total=812 [2024-11-23 02:15:58,788 INFO L87 Difference]: Start difference. First operand 218 states and 248 transitions. cyclomatic complexity: 38 Second operand has 29 states, 29 states have (on average 2.7586206896551726) internal successors, (80), 29 states have internal predecessors, (80), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:15:58,956 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:15:58,956 INFO L93 Difference]: Finished difference Result 236 states and 266 transitions. [2024-11-23 02:15:58,956 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 236 states and 266 transitions. [2024-11-23 02:15:58,957 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-23 02:15:58,958 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 236 states to 221 states and 251 transitions. [2024-11-23 02:15:58,958 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 118 [2024-11-23 02:15:58,958 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 118 [2024-11-23 02:15:58,958 INFO L73 IsDeterministic]: Start isDeterministic. Operand 221 states and 251 transitions. [2024-11-23 02:15:58,958 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:15:58,958 INFO L218 hiAutomatonCegarLoop]: Abstraction has 221 states and 251 transitions. [2024-11-23 02:15:58,958 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 221 states and 251 transitions. [2024-11-23 02:15:58,960 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 221 to 220. [2024-11-23 02:15:58,960 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-23 02:15:58,961 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 220 states to 220 states and 250 transitions. [2024-11-23 02:15:58,961 INFO L240 hiAutomatonCegarLoop]: Abstraction has 220 states and 250 transitions. [2024-11-23 02:15:58,964 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2024-11-23 02:15:58,964 INFO L425 stractBuchiCegarLoop]: Abstraction has 220 states and 250 transitions. [2024-11-23 02:15:58,964 INFO L332 stractBuchiCegarLoop]: ======== Iteration 20 ============ [2024-11-23 02:15:58,964 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 220 states and 250 transitions. [2024-11-23 02:15:58,965 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-23 02:15:58,965 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:15:58,965 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:15:58,965 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-23 02:15:58,965 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-23 02:15:58,966 INFO L745 eck$LassoCheckResult]: Stem: 8679#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 8668#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 8658#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 8659#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 8675#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 8676#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 8677#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 8718#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 8715#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 8713#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 8710#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 8708#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 8706#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 8704#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 8702#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 8701#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 8699#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 8695#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 8687#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 8686#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 8641#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 8642#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 8763#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8761#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8674#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 8649#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8650#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8685#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 8758#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8757#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8756#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 8755#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8754#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8753#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 8752#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8751#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8749#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 8750#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 8782#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8781#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 8772#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 8770#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8768#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 8766#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 8694#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8693#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 8653#L29-4 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 8654#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 8669#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8852#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8680#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8671#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8645#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8646#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8681#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8860#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8859#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8858#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8857#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8842#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8841#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8839#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8819#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8820#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8838#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8835#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8836#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8837#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8834#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8832#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8829#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8830#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8853#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8851#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 8850#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8848#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8846#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 8844#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8843#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8788#L30-2 [2024-11-23 02:15:58,966 INFO L747 eck$LassoCheckResult]: Loop: 8788#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 8786#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8787#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8788#L30-2 [2024-11-23 02:15:58,966 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:15:58,966 INFO L85 PathProgramCache]: Analyzing trace with hash 1872040403, now seen corresponding path program 8 times [2024-11-23 02:15:58,966 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:15:58,966 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1883695570] [2024-11-23 02:15:58,966 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-23 02:15:58,967 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:15:58,985 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-23 02:15:58,985 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:15:59,606 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-23 02:15:59,607 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:15:59,607 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1883695570] [2024-11-23 02:15:59,607 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1883695570] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-23 02:15:59,607 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [376052198] [2024-11-23 02:15:59,607 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-23 02:15:59,608 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-23 02:15:59,608 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:15:59,610 INFO L229 MonitoredProcess]: Starting monitored process 72 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-23 02:15:59,611 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (72)] Waiting until timeout for monitored process [2024-11-23 02:15:59,708 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-23 02:15:59,709 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:15:59,710 INFO L255 TraceCheckSpWp]: Trace formula consists of 293 conjuncts, 20 conjuncts are in the unsatisfiable core [2024-11-23 02:15:59,711 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:16:00,181 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-23 02:16:00,182 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-23 02:16:00,726 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-23 02:16:00,726 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [376052198] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-23 02:16:00,726 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-23 02:16:00,726 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [25, 21, 21] total 53 [2024-11-23 02:16:00,726 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2124993192] [2024-11-23 02:16:00,727 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-23 02:16:00,727 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:16:00,727 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:16:00,727 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 7 times [2024-11-23 02:16:00,727 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:16:00,727 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1622893190] [2024-11-23 02:16:00,728 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2024-11-23 02:16:00,728 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:16:00,731 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:16:00,731 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:16:00,732 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:16:00,734 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:16:00,821 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:16:00,821 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 53 interpolants. [2024-11-23 02:16:00,822 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=422, Invalid=2334, Unknown=0, NotChecked=0, Total=2756 [2024-11-23 02:16:00,822 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-23 02:16:01,621 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:16:01,621 INFO L93 Difference]: Finished difference Result 317 states and 340 transitions. [2024-11-23 02:16:01,622 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 317 states and 340 transitions. [2024-11-23 02:16:01,623 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-23 02:16:01,626 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 317 states to 197 states and 216 transitions. [2024-11-23 02:16:01,626 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 96 [2024-11-23 02:16:01,626 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 96 [2024-11-23 02:16:01,627 INFO L73 IsDeterministic]: Start isDeterministic. Operand 197 states and 216 transitions. [2024-11-23 02:16:01,627 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:16:01,627 INFO L218 hiAutomatonCegarLoop]: Abstraction has 197 states and 216 transitions. [2024-11-23 02:16:01,627 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 197 states and 216 transitions. [2024-11-23 02:16:01,630 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 197 to 184. [2024-11-23 02:16:01,631 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-23 02:16:01,631 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 184 states to 184 states and 203 transitions. [2024-11-23 02:16:01,631 INFO L240 hiAutomatonCegarLoop]: Abstraction has 184 states and 203 transitions. [2024-11-23 02:16:01,631 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2024-11-23 02:16:01,632 INFO L425 stractBuchiCegarLoop]: Abstraction has 184 states and 203 transitions. [2024-11-23 02:16:01,632 INFO L332 stractBuchiCegarLoop]: ======== Iteration 21 ============ [2024-11-23 02:16:01,632 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 184 states and 203 transitions. [2024-11-23 02:16:01,633 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-23 02:16:01,633 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:16:01,633 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:16:01,634 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-23 02:16:01,634 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-23 02:16:01,634 INFO L745 eck$LassoCheckResult]: Stem: 9758#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 9747#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 9737#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 9738#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 9754#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 9755#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 9756#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 9786#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 9785#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 9784#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 9783#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 9782#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 9781#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 9780#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 9779#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 9778#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 9777#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 9776#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 9775#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 9774#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 9766#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 9765#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 9720#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 9721#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 9816#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9814#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9753#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 9728#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9729#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9764#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 9811#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9810#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9809#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 9808#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9807#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9806#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 9805#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9804#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9802#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 9803#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 9901#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9900#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 9899#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 9898#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9897#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 9896#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 9769#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9768#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 9732#L29-4 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 9733#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 9748#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9887#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9885#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9883#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9881#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9879#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9877#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9875#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9874#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9872#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9870#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9868#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9866#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9864#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9861#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9862#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9724#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9725#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9760#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9889#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9888#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9750#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9751#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9873#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9871#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9869#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 9867#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9865#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9863#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 9860#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9858#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9840#L30-2 [2024-11-23 02:16:01,634 INFO L747 eck$LassoCheckResult]: Loop: 9840#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 9855#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9839#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9840#L30-2 [2024-11-23 02:16:01,634 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:16:01,635 INFO L85 PathProgramCache]: Analyzing trace with hash -1155153931, now seen corresponding path program 9 times [2024-11-23 02:16:01,635 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:16:01,635 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [186726696] [2024-11-23 02:16:01,635 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-23 02:16:01,635 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:16:01,700 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 10 check-sat command(s) [2024-11-23 02:16:01,704 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:16:02,146 INFO L134 CoverageAnalysis]: Checked inductivity of 318 backedges. 49 proven. 98 refuted. 0 times theorem prover too weak. 171 trivial. 0 not checked. [2024-11-23 02:16:02,146 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:16:02,147 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [186726696] [2024-11-23 02:16:02,147 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [186726696] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-23 02:16:02,147 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1516774040] [2024-11-23 02:16:02,147 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-23 02:16:02,147 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-23 02:16:02,147 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:16:02,149 INFO L229 MonitoredProcess]: Starting monitored process 73 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-23 02:16:02,151 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (73)] Waiting until timeout for monitored process [2024-11-23 02:16:02,316 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 10 check-sat command(s) [2024-11-23 02:16:02,316 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:16:02,318 INFO L255 TraceCheckSpWp]: Trace formula consists of 300 conjuncts, 20 conjuncts are in the unsatisfiable core [2024-11-23 02:16:02,320 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:16:02,607 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-23 02:16:02,607 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-23 02:16:02,819 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-23 02:16:02,820 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1516774040] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-23 02:16:02,820 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-23 02:16:02,820 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 21, 21] total 43 [2024-11-23 02:16:02,820 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [231762797] [2024-11-23 02:16:02,820 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-23 02:16:02,820 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:16:02,820 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:16:02,820 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 8 times [2024-11-23 02:16:02,820 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:16:02,821 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1971290534] [2024-11-23 02:16:02,821 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-23 02:16:02,821 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:16:02,824 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2024-11-23 02:16:02,824 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:16:02,824 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:16:02,825 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:16:02,826 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:16:02,911 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:16:02,911 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 43 interpolants. [2024-11-23 02:16:02,911 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=364, Invalid=1442, Unknown=0, NotChecked=0, Total=1806 [2024-11-23 02:16:02,912 INFO L87 Difference]: Start difference. First operand 184 states and 203 transitions. cyclomatic complexity: 27 Second operand has 43 states, 43 states have (on average 2.604651162790698) internal successors, (112), 43 states have internal predecessors, (112), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:16:03,465 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:16:03,465 INFO L93 Difference]: Finished difference Result 249 states and 272 transitions. [2024-11-23 02:16:03,465 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 249 states and 272 transitions. [2024-11-23 02:16:03,466 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-23 02:16:03,467 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 249 states to 244 states and 265 transitions. [2024-11-23 02:16:03,467 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 127 [2024-11-23 02:16:03,467 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 127 [2024-11-23 02:16:03,467 INFO L73 IsDeterministic]: Start isDeterministic. Operand 244 states and 265 transitions. [2024-11-23 02:16:03,467 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:16:03,467 INFO L218 hiAutomatonCegarLoop]: Abstraction has 244 states and 265 transitions. [2024-11-23 02:16:03,468 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 244 states and 265 transitions. [2024-11-23 02:16:03,469 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 244 to 202. [2024-11-23 02:16:03,469 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-23 02:16:03,470 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 202 states to 202 states and 219 transitions. [2024-11-23 02:16:03,470 INFO L240 hiAutomatonCegarLoop]: Abstraction has 202 states and 219 transitions. [2024-11-23 02:16:03,470 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 37 states. [2024-11-23 02:16:03,470 INFO L425 stractBuchiCegarLoop]: Abstraction has 202 states and 219 transitions. [2024-11-23 02:16:03,471 INFO L332 stractBuchiCegarLoop]: ======== Iteration 22 ============ [2024-11-23 02:16:03,471 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 202 states and 219 transitions. [2024-11-23 02:16:03,471 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-23 02:16:03,471 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:16:03,471 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:16:03,472 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-23 02:16:03,472 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-23 02:16:03,472 INFO L745 eck$LassoCheckResult]: Stem: 10749#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 10738#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 10728#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 10729#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 10745#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 10746#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 10747#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 10771#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 10770#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 10769#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 10768#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 10767#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 10766#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 10765#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 10764#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 10762#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 10760#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 10758#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 10757#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 10756#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 10755#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 10754#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 10711#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 10712#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 10719#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10720#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10743#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 10744#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10808#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10807#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 10806#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10805#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10804#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 10803#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10802#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10801#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 10800#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10799#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10797#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 10798#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 10843#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10841#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 10839#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 10837#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10835#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 10834#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 10833#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10775#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 10772#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 10763#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10761#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 10723#L29-4 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 10724#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 10739#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10912#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10910#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10909#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10908#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10907#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10905#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10903#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10901#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10899#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10897#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10895#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10893#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10891#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10888#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10886#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10884#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10882#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10883#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10906#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10904#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10741#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10715#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10716#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10740#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10713#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 10714#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10880#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10878#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 10876#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10874#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10872#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 10870#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10868#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10849#L30-2 [2024-11-23 02:16:03,472 INFO L747 eck$LassoCheckResult]: Loop: 10849#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 10776#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10777#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10849#L30-2 [2024-11-23 02:16:03,472 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:16:03,473 INFO L85 PathProgramCache]: Analyzing trace with hash 400932536, now seen corresponding path program 10 times [2024-11-23 02:16:03,473 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:16:03,473 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1739710174] [2024-11-23 02:16:03,473 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-23 02:16:03,473 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:16:03,491 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-23 02:16:03,491 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:16:03,920 INFO L134 CoverageAnalysis]: Checked inductivity of 374 backedges. 176 proven. 102 refuted. 0 times theorem prover too weak. 96 trivial. 0 not checked. [2024-11-23 02:16:03,920 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:16:03,920 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1739710174] [2024-11-23 02:16:03,920 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1739710174] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-23 02:16:03,920 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1834493186] [2024-11-23 02:16:03,920 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-23 02:16:03,921 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-23 02:16:03,921 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:16:03,926 INFO L229 MonitoredProcess]: Starting monitored process 74 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-23 02:16:03,927 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (74)] Waiting until timeout for monitored process [2024-11-23 02:16:04,027 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-23 02:16:04,028 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:16:04,029 INFO L255 TraceCheckSpWp]: Trace formula consists of 285 conjuncts, 22 conjuncts are in the unsatisfiable core [2024-11-23 02:16:04,030 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:16:04,438 INFO L134 CoverageAnalysis]: Checked inductivity of 374 backedges. 173 proven. 117 refuted. 0 times theorem prover too weak. 84 trivial. 0 not checked. [2024-11-23 02:16:04,438 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-23 02:16:04,704 INFO L134 CoverageAnalysis]: Checked inductivity of 374 backedges. 173 proven. 117 refuted. 0 times theorem prover too weak. 84 trivial. 0 not checked. [2024-11-23 02:16:04,705 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1834493186] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-23 02:16:04,705 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-23 02:16:04,705 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [21, 23, 23] total 41 [2024-11-23 02:16:04,705 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2044611575] [2024-11-23 02:16:04,705 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-23 02:16:04,705 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:16:04,706 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:16:04,706 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 9 times [2024-11-23 02:16:04,706 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:16:04,706 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [193248946] [2024-11-23 02:16:04,706 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-23 02:16:04,706 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:16:04,710 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) [2024-11-23 02:16:04,711 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:16:04,711 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:16:04,712 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:16:04,713 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:16:04,767 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:16:04,768 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 41 interpolants. [2024-11-23 02:16:04,768 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=375, Invalid=1265, Unknown=0, NotChecked=0, Total=1640 [2024-11-23 02:16:04,768 INFO L87 Difference]: Start difference. First operand 202 states and 219 transitions. cyclomatic complexity: 25 Second operand has 41 states, 41 states have (on average 3.024390243902439) internal successors, (124), 41 states have internal predecessors, (124), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:16:05,575 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:16:05,576 INFO L93 Difference]: Finished difference Result 402 states and 434 transitions. [2024-11-23 02:16:05,576 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 402 states and 434 transitions. [2024-11-23 02:16:05,577 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-23 02:16:05,578 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 402 states to 291 states and 320 transitions. [2024-11-23 02:16:05,578 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 141 [2024-11-23 02:16:05,578 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 168 [2024-11-23 02:16:05,578 INFO L73 IsDeterministic]: Start isDeterministic. Operand 291 states and 320 transitions. [2024-11-23 02:16:05,579 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:16:05,579 INFO L218 hiAutomatonCegarLoop]: Abstraction has 291 states and 320 transitions. [2024-11-23 02:16:05,579 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 291 states and 320 transitions. [2024-11-23 02:16:05,581 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 291 to 249. [2024-11-23 02:16:05,581 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 249 states, 249 states have (on average 1.0923694779116466) internal successors, (272), 248 states have internal predecessors, (272), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:16:05,581 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 249 states to 249 states and 272 transitions. [2024-11-23 02:16:05,581 INFO L240 hiAutomatonCegarLoop]: Abstraction has 249 states and 272 transitions. [2024-11-23 02:16:05,582 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 46 states. [2024-11-23 02:16:05,582 INFO L425 stractBuchiCegarLoop]: Abstraction has 249 states and 272 transitions. [2024-11-23 02:16:05,582 INFO L332 stractBuchiCegarLoop]: ======== Iteration 23 ============ [2024-11-23 02:16:05,582 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 249 states and 272 transitions. [2024-11-23 02:16:05,583 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-23 02:16:05,583 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:16:05,583 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:16:05,584 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [14, 13, 10, 10, 10, 9, 9, 6, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-23 02:16:05,584 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-23 02:16:05,584 INFO L745 eck$LassoCheckResult]: Stem: 11963#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 11952#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 11944#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 11945#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 11959#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 11960#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 11961#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 11992#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 11991#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 11990#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 11989#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 11988#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 11987#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 11986#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 11985#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 11984#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 11982#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 11981#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 11980#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 11978#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 11974#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 11973#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 11925#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 11926#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 12055#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12054#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11958#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 11935#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 11936#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11972#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 12053#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12052#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12051#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 12050#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12049#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12048#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 12047#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12046#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12045#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 12044#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12043#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12041#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 12042#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 12158#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12157#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 12156#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 12155#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12154#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 12153#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 12152#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12151#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 12150#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 11993#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11975#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 11940#L29-4 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 11941#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 11953#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12106#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12105#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12104#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12103#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12102#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12101#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12100#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12099#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12098#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12097#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12096#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12095#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12094#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12093#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12092#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12091#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12089#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12090#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12143#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 11966#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11967#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12142#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12141#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12138#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12135#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12133#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11955#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 11929#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 11930#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12139#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12136#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 12134#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12132#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12129#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 12073#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12069#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12070#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 12119#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12118#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12074#L30-2 [2024-11-23 02:16:05,584 INFO L747 eck$LassoCheckResult]: Loop: 12074#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 12067#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12068#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12074#L30-2 [2024-11-23 02:16:05,584 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:16:05,585 INFO L85 PathProgramCache]: Analyzing trace with hash 1977128861, now seen corresponding path program 11 times [2024-11-23 02:16:05,585 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:16:05,585 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2028031175] [2024-11-23 02:16:05,585 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-23 02:16:05,585 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:16:05,615 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 14 check-sat command(s) [2024-11-23 02:16:05,615 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:16:06,318 INFO L134 CoverageAnalysis]: Checked inductivity of 473 backedges. 162 proven. 200 refuted. 0 times theorem prover too weak. 111 trivial. 0 not checked. [2024-11-23 02:16:06,319 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:16:06,319 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2028031175] [2024-11-23 02:16:06,319 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2028031175] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-23 02:16:06,319 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1583100437] [2024-11-23 02:16:06,319 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-23 02:16:06,319 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-23 02:16:06,319 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:16:06,321 INFO L229 MonitoredProcess]: Starting monitored process 75 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-23 02:16:06,322 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (75)] Waiting until timeout for monitored process [2024-11-23 02:16:06,465 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 14 check-sat command(s) [2024-11-23 02:16:06,465 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:16:06,467 INFO L255 TraceCheckSpWp]: Trace formula consists of 340 conjuncts, 22 conjuncts are in the unsatisfiable core [2024-11-23 02:16:06,468 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:16:06,987 INFO L134 CoverageAnalysis]: Checked inductivity of 473 backedges. 229 proven. 81 refuted. 0 times theorem prover too weak. 163 trivial. 0 not checked. [2024-11-23 02:16:06,987 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-23 02:16:07,516 INFO L134 CoverageAnalysis]: Checked inductivity of 473 backedges. 229 proven. 81 refuted. 0 times theorem prover too weak. 163 trivial. 0 not checked. [2024-11-23 02:16:07,517 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1583100437] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-23 02:16:07,517 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-23 02:16:07,517 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [23, 23, 23] total 54 [2024-11-23 02:16:07,517 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1582233122] [2024-11-23 02:16:07,517 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-23 02:16:07,518 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:16:07,518 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:16:07,518 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 10 times [2024-11-23 02:16:07,518 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:16:07,518 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [66966340] [2024-11-23 02:16:07,518 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-23 02:16:07,518 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:16:07,522 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-23 02:16:07,523 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:16:07,523 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:16:07,524 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:16:07,526 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:16:07,586 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:16:07,586 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 54 interpolants. [2024-11-23 02:16:07,587 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=387, Invalid=2475, Unknown=0, NotChecked=0, Total=2862 [2024-11-23 02:16:07,587 INFO L87 Difference]: Start difference. First operand 249 states and 272 transitions. cyclomatic complexity: 31 Second operand has 54 states, 54 states have (on average 2.7962962962962963) internal successors, (151), 54 states have internal predecessors, (151), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:16:09,455 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:16:09,455 INFO L93 Difference]: Finished difference Result 347 states and 372 transitions. [2024-11-23 02:16:09,455 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 347 states and 372 transitions. [2024-11-23 02:16:09,456 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-23 02:16:09,457 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 347 states to 246 states and 267 transitions. [2024-11-23 02:16:09,457 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 126 [2024-11-23 02:16:09,457 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 126 [2024-11-23 02:16:09,457 INFO L73 IsDeterministic]: Start isDeterministic. Operand 246 states and 267 transitions. [2024-11-23 02:16:09,457 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:16:09,458 INFO L218 hiAutomatonCegarLoop]: Abstraction has 246 states and 267 transitions. [2024-11-23 02:16:09,458 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 246 states and 267 transitions. [2024-11-23 02:16:09,459 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 246 to 234. [2024-11-23 02:16:09,460 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 234 states, 234 states have (on average 1.0897435897435896) internal successors, (255), 233 states have internal predecessors, (255), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:16:09,460 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 234 states to 234 states and 255 transitions. [2024-11-23 02:16:09,460 INFO L240 hiAutomatonCegarLoop]: Abstraction has 234 states and 255 transitions. [2024-11-23 02:16:09,461 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 61 states. [2024-11-23 02:16:09,461 INFO L425 stractBuchiCegarLoop]: Abstraction has 234 states and 255 transitions. [2024-11-23 02:16:09,461 INFO L332 stractBuchiCegarLoop]: ======== Iteration 24 ============ [2024-11-23 02:16:09,461 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 234 states and 255 transitions. [2024-11-23 02:16:09,462 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-23 02:16:09,462 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:16:09,462 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:16:09,463 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [14, 13, 11, 11, 10, 10, 10, 7, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-23 02:16:09,463 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-23 02:16:09,463 INFO L745 eck$LassoCheckResult]: Stem: 13260#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 13249#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 13239#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 13240#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 13257#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 13258#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 13255#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 13256#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 13286#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 13285#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 13284#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 13283#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 13282#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 13281#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 13280#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 13279#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 13278#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 13277#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 13276#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 13275#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 13274#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 13273#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 13265#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 13264#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 13222#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 13223#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 13230#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13231#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13253#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 13254#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13322#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13321#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 13320#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13319#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13318#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 13317#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13316#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13315#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 13314#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13313#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13312#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 13311#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13310#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13309#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 13308#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13307#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13305#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 13306#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 13452#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13450#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 13448#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 13446#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13444#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 13442#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 13441#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13440#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 13439#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 13268#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13267#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 13234#L29-4 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 13235#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 13250#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13224#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13225#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13251#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13226#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13227#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13261#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13429#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13427#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13425#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13423#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13414#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13412#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13409#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13405#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13402#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13399#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13396#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13393#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13390#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13386#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13387#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13418#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13415#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13413#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13411#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13408#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13407#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13410#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13406#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13403#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13400#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 13397#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13394#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13391#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 13388#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13384#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13381#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 13378#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13353#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13352#L30-2 [2024-11-23 02:16:09,463 INFO L747 eck$LassoCheckResult]: Loop: 13352#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 13350#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13351#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13352#L30-2 [2024-11-23 02:16:09,464 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:16:09,464 INFO L85 PathProgramCache]: Analyzing trace with hash -1547203334, now seen corresponding path program 12 times [2024-11-23 02:16:09,464 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:16:09,464 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [872447796] [2024-11-23 02:16:09,464 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-23 02:16:09,464 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:16:09,522 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 14 check-sat command(s) [2024-11-23 02:16:09,522 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:16:10,193 INFO L134 CoverageAnalysis]: Checked inductivity of 523 backedges. 41 proven. 288 refuted. 0 times theorem prover too weak. 194 trivial. 0 not checked. [2024-11-23 02:16:10,193 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:16:10,194 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [872447796] [2024-11-23 02:16:10,194 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [872447796] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-23 02:16:10,194 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1187347313] [2024-11-23 02:16:10,194 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-23 02:16:10,194 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-23 02:16:10,194 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:16:10,201 INFO L229 MonitoredProcess]: Starting monitored process 76 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-23 02:16:10,202 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (76)] Waiting until timeout for monitored process [2024-11-23 02:16:10,418 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 14 check-sat command(s) [2024-11-23 02:16:10,418 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:16:10,421 INFO L255 TraceCheckSpWp]: Trace formula consists of 355 conjuncts, 27 conjuncts are in the unsatisfiable core [2024-11-23 02:16:10,422 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:16:11,236 INFO L134 CoverageAnalysis]: Checked inductivity of 523 backedges. 247 proven. 100 refuted. 0 times theorem prover too weak. 176 trivial. 0 not checked. [2024-11-23 02:16:11,236 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-23 02:16:11,813 INFO L134 CoverageAnalysis]: Checked inductivity of 523 backedges. 247 proven. 100 refuted. 0 times theorem prover too weak. 176 trivial. 0 not checked. [2024-11-23 02:16:11,813 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1187347313] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-23 02:16:11,813 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-23 02:16:11,814 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [27, 27, 27] total 69 [2024-11-23 02:16:11,814 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1629561296] [2024-11-23 02:16:11,814 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-23 02:16:11,814 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:16:11,814 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:16:11,814 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 11 times [2024-11-23 02:16:11,814 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:16:11,815 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1822575218] [2024-11-23 02:16:11,815 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-23 02:16:11,815 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:16:11,819 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2024-11-23 02:16:11,819 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:16:11,819 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:16:11,820 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:16:11,821 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:16:11,915 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:16:11,916 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 70 interpolants. [2024-11-23 02:16:11,917 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=923, Invalid=3907, Unknown=0, NotChecked=0, Total=4830 [2024-11-23 02:16:11,917 INFO L87 Difference]: Start difference. First operand 234 states and 255 transitions. cyclomatic complexity: 29 Second operand has 70 states, 69 states have (on average 2.7246376811594204) internal successors, (188), 70 states have internal predecessors, (188), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:16:13,685 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:16:13,685 INFO L93 Difference]: Finished difference Result 591 states and 626 transitions. [2024-11-23 02:16:13,685 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 591 states and 626 transitions. [2024-11-23 02:16:13,691 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-23 02:16:13,693 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 591 states to 243 states and 264 transitions. [2024-11-23 02:16:13,693 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 116 [2024-11-23 02:16:13,693 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 116 [2024-11-23 02:16:13,693 INFO L73 IsDeterministic]: Start isDeterministic. Operand 243 states and 264 transitions. [2024-11-23 02:16:13,693 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:16:13,697 INFO L218 hiAutomatonCegarLoop]: Abstraction has 243 states and 264 transitions. [2024-11-23 02:16:13,697 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 243 states and 264 transitions. [2024-11-23 02:16:13,699 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 243 to 242. [2024-11-23 02:16:13,699 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 242 states, 242 states have (on average 1.0867768595041323) internal successors, (263), 241 states have internal predecessors, (263), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:16:13,700 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 242 states to 242 states and 263 transitions. [2024-11-23 02:16:13,700 INFO L240 hiAutomatonCegarLoop]: Abstraction has 242 states and 263 transitions. [2024-11-23 02:16:13,724 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 60 states. [2024-11-23 02:16:13,725 INFO L425 stractBuchiCegarLoop]: Abstraction has 242 states and 263 transitions. [2024-11-23 02:16:13,725 INFO L332 stractBuchiCegarLoop]: ======== Iteration 25 ============ [2024-11-23 02:16:13,725 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 242 states and 263 transitions. [2024-11-23 02:16:13,726 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-23 02:16:13,726 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:16:13,726 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:16:13,726 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [14, 14, 14, 13, 11, 11, 10, 7, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-23 02:16:13,726 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-23 02:16:13,727 INFO L745 eck$LassoCheckResult]: Stem: 14832#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 14820#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 14811#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 14812#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 14828#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14829#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 14830#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14918#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 14916#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14914#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 14913#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14910#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 14907#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14904#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 14901#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14898#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 14895#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14891#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 14889#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14886#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 14882#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14879#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 14876#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14873#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 14870#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14867#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 14864#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14861#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 14859#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14856#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 14841#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14840#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 14794#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 14795#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 14802#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14803#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14826#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 14827#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14838#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14839#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 14930#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14929#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14928#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 14927#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14926#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14925#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 14924#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14923#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14922#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 14921#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14920#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14919#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 14917#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14915#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14911#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 14912#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 14958#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14956#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 14954#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 14952#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14950#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 14947#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 14946#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14945#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 14944#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 14852#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14850#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 14806#L29-4 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 14807#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 14821#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 15033#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 15032#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 15030#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 15028#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14834#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14823#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14798#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14799#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 15025#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 15023#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 15021#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 15019#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 15017#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 15016#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 15015#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 15014#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 15012#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 15009#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 15008#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 15006#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 15003#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 15001#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14998#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14999#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 15013#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 15010#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 15005#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 15007#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 15004#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 15002#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 15000#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 14997#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14995#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14993#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 14991#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14989#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14987#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 14985#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14983#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14962#L30-2 [2024-11-23 02:16:13,727 INFO L747 eck$LassoCheckResult]: Loop: 14962#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 14935#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14936#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14962#L30-2 [2024-11-23 02:16:13,727 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:16:13,727 INFO L85 PathProgramCache]: Analyzing trace with hash 1033661570, now seen corresponding path program 13 times [2024-11-23 02:16:13,728 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:16:13,728 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [420679691] [2024-11-23 02:16:13,728 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2024-11-23 02:16:13,728 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:16:13,755 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:16:14,191 INFO L134 CoverageAnalysis]: Checked inductivity of 619 backedges. 40 proven. 136 refuted. 0 times theorem prover too weak. 443 trivial. 0 not checked. [2024-11-23 02:16:14,192 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:16:14,192 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [420679691] [2024-11-23 02:16:14,192 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [420679691] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-23 02:16:14,192 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1212913027] [2024-11-23 02:16:14,192 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2024-11-23 02:16:14,192 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-23 02:16:14,193 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:16:14,195 INFO L229 MonitoredProcess]: Starting monitored process 77 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-23 02:16:14,195 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (77)] Waiting until timeout for monitored process [2024-11-23 02:16:14,316 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-23 02:16:14,319 INFO L255 TraceCheckSpWp]: Trace formula consists of 399 conjuncts, 28 conjuncts are in the unsatisfiable core [2024-11-23 02:16:14,321 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:16:14,844 INFO L134 CoverageAnalysis]: Checked inductivity of 619 backedges. 169 proven. 203 refuted. 0 times theorem prover too weak. 247 trivial. 0 not checked. [2024-11-23 02:16:14,845 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-23 02:16:15,283 INFO L134 CoverageAnalysis]: Checked inductivity of 619 backedges. 169 proven. 203 refuted. 0 times theorem prover too weak. 247 trivial. 0 not checked. [2024-11-23 02:16:15,284 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1212913027] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-23 02:16:15,284 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-23 02:16:15,284 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 29, 29] total 53 [2024-11-23 02:16:15,284 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1175543633] [2024-11-23 02:16:15,284 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-23 02:16:15,284 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:16:15,285 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:16:15,285 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 12 times [2024-11-23 02:16:15,285 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:16:15,285 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1083043299] [2024-11-23 02:16:15,285 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-23 02:16:15,285 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:16:15,289 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 1 check-sat command(s) [2024-11-23 02:16:15,289 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:16:15,289 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:16:15,290 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:16:15,291 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:16:15,381 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:16:15,382 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 53 interpolants. [2024-11-23 02:16:15,382 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=512, Invalid=2244, Unknown=0, NotChecked=0, Total=2756 [2024-11-23 02:16:15,383 INFO L87 Difference]: Start difference. First operand 242 states and 263 transitions. cyclomatic complexity: 29 Second operand has 53 states, 53 states have (on average 2.660377358490566) internal successors, (141), 53 states have internal predecessors, (141), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:16:16,855 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:16:16,855 INFO L93 Difference]: Finished difference Result 324 states and 350 transitions. [2024-11-23 02:16:16,856 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 324 states and 350 transitions. [2024-11-23 02:16:16,857 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-23 02:16:16,857 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 324 states to 316 states and 338 transitions. [2024-11-23 02:16:16,857 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 152 [2024-11-23 02:16:16,858 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 152 [2024-11-23 02:16:16,858 INFO L73 IsDeterministic]: Start isDeterministic. Operand 316 states and 338 transitions. [2024-11-23 02:16:16,858 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:16:16,858 INFO L218 hiAutomatonCegarLoop]: Abstraction has 316 states and 338 transitions. [2024-11-23 02:16:16,858 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 316 states and 338 transitions. [2024-11-23 02:16:16,861 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 316 to 249. [2024-11-23 02:16:16,861 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 249 states, 249 states have (on average 1.0602409638554218) internal successors, (264), 248 states have internal predecessors, (264), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:16:16,861 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 249 states to 249 states and 264 transitions. [2024-11-23 02:16:16,861 INFO L240 hiAutomatonCegarLoop]: Abstraction has 249 states and 264 transitions. [2024-11-23 02:16:16,862 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 49 states. [2024-11-23 02:16:16,865 INFO L425 stractBuchiCegarLoop]: Abstraction has 249 states and 264 transitions. [2024-11-23 02:16:16,865 INFO L332 stractBuchiCegarLoop]: ======== Iteration 26 ============ [2024-11-23 02:16:16,865 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 249 states and 264 transitions. [2024-11-23 02:16:16,866 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-23 02:16:16,866 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:16:16,866 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:16:16,867 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [16, 15, 14, 14, 14, 14, 10, 8, 6, 5, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-23 02:16:16,867 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-23 02:16:16,867 INFO L745 eck$LassoCheckResult]: Stem: 16193#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 16182#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 16175#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 16176#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 16189#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16190#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 16191#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16229#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 16228#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16227#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 16226#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16225#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 16224#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16223#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 16222#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16221#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 16220#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16219#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 16218#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16217#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 16216#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16215#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 16214#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16212#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 16208#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16206#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 16204#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16202#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 16201#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16200#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 16199#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16198#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 16156#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 16157#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16288#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16287#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16286#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16285#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16284#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16283#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16282#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16281#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16280#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16279#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16278#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16277#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16276#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16275#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16274#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16273#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16272#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16271#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16270#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16269#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16268#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16267#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16266#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16264#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16265#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 16300#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16299#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16298#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 16295#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16186#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16162#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 16163#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16197#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16294#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 16293#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16292#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16235#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 16232#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16233#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16244#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 16207#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16205#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 16168#L29-4 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 16169#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 16183#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16158#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16159#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16184#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16185#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16194#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16195#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16160#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16161#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16380#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16366#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16364#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16362#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16360#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16358#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16356#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16354#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16352#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16350#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16348#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16347#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16346#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16344#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16340#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16341#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16377#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16376#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16343#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16345#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16342#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16339#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16337#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 16335#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16333#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16331#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 16329#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16327#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16325#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 16323#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16321#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16319#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 16317#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16315#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16313#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 16311#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16304#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16303#L30-2 [2024-11-23 02:16:16,867 INFO L747 eck$LassoCheckResult]: Loop: 16303#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 16296#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16297#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16303#L30-2 [2024-11-23 02:16:16,868 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:16:16,868 INFO L85 PathProgramCache]: Analyzing trace with hash 1549110643, now seen corresponding path program 14 times [2024-11-23 02:16:16,868 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:16:16,868 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [272814835] [2024-11-23 02:16:16,868 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-23 02:16:16,868 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:16:16,901 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-23 02:16:16,902 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:16:17,559 INFO L134 CoverageAnalysis]: Checked inductivity of 813 backedges. 404 proven. 110 refuted. 0 times theorem prover too weak. 299 trivial. 0 not checked. [2024-11-23 02:16:17,559 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:16:17,559 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [272814835] [2024-11-23 02:16:17,559 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [272814835] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-23 02:16:17,560 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2025376628] [2024-11-23 02:16:17,560 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-23 02:16:17,560 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-23 02:16:17,560 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:16:17,565 INFO L229 MonitoredProcess]: Starting monitored process 78 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-23 02:16:17,566 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (78)] Waiting until timeout for monitored process [2024-11-23 02:16:17,704 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-23 02:16:17,704 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:16:17,710 INFO L255 TraceCheckSpWp]: Trace formula consists of 451 conjuncts, 32 conjuncts are in the unsatisfiable core [2024-11-23 02:16:17,712 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:16:18,486 INFO L134 CoverageAnalysis]: Checked inductivity of 813 backedges. 330 proven. 196 refuted. 0 times theorem prover too weak. 287 trivial. 0 not checked. [2024-11-23 02:16:18,486 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-23 02:16:19,199 INFO L134 CoverageAnalysis]: Checked inductivity of 813 backedges. 330 proven. 196 refuted. 0 times theorem prover too weak. 287 trivial. 0 not checked. [2024-11-23 02:16:19,200 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2025376628] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-23 02:16:19,200 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-23 02:16:19,200 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [24, 33, 33] total 70 [2024-11-23 02:16:19,200 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [278326414] [2024-11-23 02:16:19,200 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-23 02:16:19,200 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:16:19,201 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:16:19,201 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 13 times [2024-11-23 02:16:19,201 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:16:19,201 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [295881201] [2024-11-23 02:16:19,201 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2024-11-23 02:16:19,201 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:16:19,204 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:16:19,204 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:16:19,205 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:16:19,207 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:16:19,255 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:16:19,255 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 70 interpolants. [2024-11-23 02:16:19,256 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=762, Invalid=4068, Unknown=0, NotChecked=0, Total=4830 [2024-11-23 02:16:19,257 INFO L87 Difference]: Start difference. First operand 249 states and 264 transitions. cyclomatic complexity: 23 Second operand has 70 states, 70 states have (on average 2.742857142857143) internal successors, (192), 70 states have internal predecessors, (192), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:16:21,974 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:16:21,975 INFO L93 Difference]: Finished difference Result 506 states and 528 transitions. [2024-11-23 02:16:21,975 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 506 states and 528 transitions. [2024-11-23 02:16:21,980 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-23 02:16:21,981 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 506 states to 296 states and 310 transitions. [2024-11-23 02:16:21,981 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 154 [2024-11-23 02:16:21,981 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 154 [2024-11-23 02:16:21,981 INFO L73 IsDeterministic]: Start isDeterministic. Operand 296 states and 310 transitions. [2024-11-23 02:16:21,981 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:16:21,981 INFO L218 hiAutomatonCegarLoop]: Abstraction has 296 states and 310 transitions. [2024-11-23 02:16:21,985 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 296 states and 310 transitions. [2024-11-23 02:16:21,987 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 296 to 263. [2024-11-23 02:16:21,988 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 263 states, 263 states have (on average 1.049429657794677) internal successors, (276), 262 states have internal predecessors, (276), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:16:21,988 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 263 states to 263 states and 276 transitions. [2024-11-23 02:16:21,988 INFO L240 hiAutomatonCegarLoop]: Abstraction has 263 states and 276 transitions. [2024-11-23 02:16:21,993 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 75 states. [2024-11-23 02:16:21,993 INFO L425 stractBuchiCegarLoop]: Abstraction has 263 states and 276 transitions. [2024-11-23 02:16:21,993 INFO L332 stractBuchiCegarLoop]: ======== Iteration 27 ============ [2024-11-23 02:16:21,993 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 263 states and 276 transitions. [2024-11-23 02:16:21,994 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-23 02:16:21,994 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:16:21,994 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:16:21,995 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [17, 16, 15, 15, 15, 15, 10, 8, 7, 6, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-23 02:16:21,995 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-23 02:16:21,995 INFO L745 eck$LassoCheckResult]: Stem: 17902#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 17892#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 17883#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 17884#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 17898#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 17899#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 17900#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 17937#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 17936#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 17935#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 17934#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 17933#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 17932#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 17931#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 17930#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 17929#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 17928#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 17927#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 17926#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 17925#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 17924#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 17923#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 17922#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 17921#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 17920#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 17919#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 17918#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 17917#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 17916#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 17915#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 17914#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 17913#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 17909#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 17908#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 17866#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 17867#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 17986#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 17985#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 17897#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 17874#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 17875#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 17907#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 17983#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 17982#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 17981#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 17980#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 17979#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 17978#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 17977#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 17976#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 17975#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 17974#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 17973#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 17972#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 17971#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 17970#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 17969#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 17968#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 17967#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 17966#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 17872#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 17873#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 17906#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 18014#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 18012#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18010#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 18008#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 18006#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18004#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 18002#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 18000#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 17998#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 17996#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 17994#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 17992#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 17987#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 17984#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 17942#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 17938#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 17912#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 17911#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 17878#L29-4 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 17879#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 17893#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 17868#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 17869#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 17894#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 17870#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 17871#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 17903#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18117#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18115#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18114#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18112#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18110#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18108#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18107#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18106#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18104#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18103#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18102#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18101#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18100#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18098#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18095#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18093#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18090#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18091#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18099#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18096#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18097#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18128#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18127#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18126#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18125#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 18124#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18123#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18122#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 18121#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18120#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18119#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 18118#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18073#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18074#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 18116#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18066#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18064#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 18062#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18059#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18060#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 18105#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18044#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18045#L30-2 [2024-11-23 02:16:21,995 INFO L747 eck$LassoCheckResult]: Loop: 18045#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 18051#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18046#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18045#L30-2 [2024-11-23 02:16:21,996 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:16:21,996 INFO L85 PathProgramCache]: Analyzing trace with hash 1567531630, now seen corresponding path program 15 times [2024-11-23 02:16:21,996 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:16:21,996 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [844643198] [2024-11-23 02:16:21,996 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-23 02:16:21,996 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:16:22,101 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 17 check-sat command(s) [2024-11-23 02:16:22,102 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:16:24,615 INFO L134 CoverageAnalysis]: Checked inductivity of 931 backedges. 138 proven. 568 refuted. 0 times theorem prover too weak. 225 trivial. 0 not checked. [2024-11-23 02:16:24,615 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:16:24,615 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [844643198] [2024-11-23 02:16:24,615 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [844643198] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-23 02:16:24,616 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [642356065] [2024-11-23 02:16:24,616 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-23 02:16:24,616 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-23 02:16:24,616 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:16:24,618 INFO L229 MonitoredProcess]: Starting monitored process 79 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-23 02:16:24,619 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (79)] Waiting until timeout for monitored process [2024-11-23 02:16:25,468 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 17 check-sat command(s) [2024-11-23 02:16:25,468 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:16:25,474 INFO L255 TraceCheckSpWp]: Trace formula consists of 486 conjuncts, 35 conjuncts are in the unsatisfiable core [2024-11-23 02:16:25,477 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:16:26,559 INFO L134 CoverageAnalysis]: Checked inductivity of 931 backedges. 376 proven. 330 refuted. 0 times theorem prover too weak. 225 trivial. 0 not checked. [2024-11-23 02:16:26,560 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-23 02:16:27,478 INFO L134 CoverageAnalysis]: Checked inductivity of 931 backedges. 376 proven. 330 refuted. 0 times theorem prover too weak. 225 trivial. 0 not checked. [2024-11-23 02:16:27,479 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [642356065] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-23 02:16:27,479 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-23 02:16:27,479 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [40, 35, 35] total 91 [2024-11-23 02:16:27,479 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1022336192] [2024-11-23 02:16:27,479 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-23 02:16:27,480 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:16:27,480 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:16:27,480 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 14 times [2024-11-23 02:16:27,480 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:16:27,480 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1264682977] [2024-11-23 02:16:27,481 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-23 02:16:27,481 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:16:27,485 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2024-11-23 02:16:27,485 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:16:27,485 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:16:27,486 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:16:27,488 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:16:27,549 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:16:27,550 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 92 interpolants. [2024-11-23 02:16:27,551 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1197, Invalid=7175, Unknown=0, NotChecked=0, Total=8372 [2024-11-23 02:16:27,552 INFO L87 Difference]: Start difference. First operand 263 states and 276 transitions. cyclomatic complexity: 21 Second operand has 92 states, 91 states have (on average 2.868131868131868) internal successors, (261), 92 states have internal predecessors, (261), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:16:40,186 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:16:40,187 INFO L93 Difference]: Finished difference Result 1138 states and 1190 transitions. [2024-11-23 02:16:40,187 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1138 states and 1190 transitions. [2024-11-23 02:16:40,191 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-23 02:16:40,192 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1138 states to 624 states and 665 transitions. [2024-11-23 02:16:40,192 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 280 [2024-11-23 02:16:40,193 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 417 [2024-11-23 02:16:40,193 INFO L73 IsDeterministic]: Start isDeterministic. Operand 624 states and 665 transitions. [2024-11-23 02:16:40,193 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:16:40,193 INFO L218 hiAutomatonCegarLoop]: Abstraction has 624 states and 665 transitions. [2024-11-23 02:16:40,193 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 624 states and 665 transitions. [2024-11-23 02:16:40,197 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 624 to 584. [2024-11-23 02:16:40,198 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 584 states, 584 states have (on average 1.0667808219178083) internal successors, (623), 583 states have internal predecessors, (623), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:16:40,198 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 584 states to 584 states and 623 transitions. [2024-11-23 02:16:40,198 INFO L240 hiAutomatonCegarLoop]: Abstraction has 584 states and 623 transitions. [2024-11-23 02:16:40,199 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 308 states. [2024-11-23 02:16:40,199 INFO L425 stractBuchiCegarLoop]: Abstraction has 584 states and 623 transitions. [2024-11-23 02:16:40,199 INFO L332 stractBuchiCegarLoop]: ======== Iteration 28 ============ [2024-11-23 02:16:40,199 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 584 states and 623 transitions. [2024-11-23 02:16:40,220 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-23 02:16:40,220 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:16:40,220 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:16:40,221 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [24, 23, 17, 17, 17, 15, 15, 9, 8, 6, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-23 02:16:40,221 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-23 02:16:40,222 INFO L745 eck$LassoCheckResult]: Stem: 20730#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 20717#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 20707#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 20708#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 20727#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20728#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 20725#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20726#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 20767#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20766#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 20765#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20764#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 20763#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20762#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 20761#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20760#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 20759#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20758#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 20757#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20756#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 20755#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20754#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 20752#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20751#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 20750#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20749#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 20746#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20744#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 20743#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20742#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 20741#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20740#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 20738#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20737#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 20690#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 20691#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20889#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20888#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20724#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20698#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20699#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20736#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20885#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20884#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20883#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20882#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20881#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20880#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20879#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20878#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20877#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20876#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20875#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20874#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20873#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20872#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20871#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20870#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20869#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20868#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20867#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20866#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20864#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20865#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 21155#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21154#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 21153#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 21152#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21151#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 21150#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 21149#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21148#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 21147#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 21146#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21145#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 21144#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 21143#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21142#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 21141#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 21140#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21138#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 21136#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 21134#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21133#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20814#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 20810#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20739#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 20705#L29-4 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 20706#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 20718#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20918#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20732#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20733#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20967#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20966#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20965#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20964#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20962#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20960#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20958#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20956#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20954#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20952#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20950#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20948#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20946#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20944#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20942#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20940#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20938#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20936#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20934#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20931#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20928#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20925#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20921#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20922#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 21011#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 21008#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21009#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 21017#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 21014#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21015#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 21062#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 21059#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21060#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 21066#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 21064#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21065#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 21117#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 21114#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21115#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 21129#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20734#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20735#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 21130#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 21128#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20721#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20694#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20695#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21122#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 21121#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 21120#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21119#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 21118#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 21116#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21113#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 21111#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 21109#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21107#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 21105#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 21102#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21099#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 21096#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 21093#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21090#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 21087#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 21084#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20894#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20893#L30-2 [2024-11-23 02:16:40,222 INFO L747 eck$LassoCheckResult]: Loop: 20893#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 20812#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20813#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20893#L30-2 [2024-11-23 02:16:40,222 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:16:40,222 INFO L85 PathProgramCache]: Analyzing trace with hash -2125751290, now seen corresponding path program 16 times [2024-11-23 02:16:40,222 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:16:40,222 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1816469869] [2024-11-23 02:16:40,223 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-23 02:16:40,223 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:16:40,251 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-23 02:16:40,252 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:16:41,411 INFO L134 CoverageAnalysis]: Checked inductivity of 1432 backedges. 725 proven. 348 refuted. 0 times theorem prover too weak. 359 trivial. 0 not checked. [2024-11-23 02:16:41,412 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:16:41,412 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1816469869] [2024-11-23 02:16:41,412 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1816469869] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-23 02:16:41,412 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [655561262] [2024-11-23 02:16:41,412 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-23 02:16:41,412 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-23 02:16:41,412 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:16:41,415 INFO L229 MonitoredProcess]: Starting monitored process 80 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-23 02:16:41,419 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (80)] Waiting until timeout for monitored process [2024-11-23 02:16:41,621 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-23 02:16:41,621 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:16:41,630 INFO L255 TraceCheckSpWp]: Trace formula consists of 487 conjuncts, 38 conjuncts are in the unsatisfiable core [2024-11-23 02:16:41,632 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:16:42,796 INFO L134 CoverageAnalysis]: Checked inductivity of 1432 backedges. 737 proven. 425 refuted. 0 times theorem prover too weak. 270 trivial. 0 not checked. [2024-11-23 02:16:42,796 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-23 02:16:43,819 INFO L134 CoverageAnalysis]: Checked inductivity of 1432 backedges. 737 proven. 425 refuted. 0 times theorem prover too weak. 270 trivial. 0 not checked. [2024-11-23 02:16:43,820 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [655561262] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-23 02:16:43,820 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-23 02:16:43,820 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [32, 39, 39] total 85 [2024-11-23 02:16:43,820 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [353782908] [2024-11-23 02:16:43,820 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-23 02:16:43,821 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:16:43,821 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:16:43,821 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 15 times [2024-11-23 02:16:43,821 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:16:43,821 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1337212975] [2024-11-23 02:16:43,821 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-23 02:16:43,821 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:16:43,824 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) [2024-11-23 02:16:43,825 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:16:43,825 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:16:43,825 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:16:43,827 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:16:43,887 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:16:43,888 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 85 interpolants. [2024-11-23 02:16:43,890 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1397, Invalid=5743, Unknown=0, NotChecked=0, Total=7140 [2024-11-23 02:16:43,890 INFO L87 Difference]: Start difference. First operand 584 states and 623 transitions. cyclomatic complexity: 47 Second operand has 85 states, 85 states have (on average 2.9647058823529413) internal successors, (252), 85 states have internal predecessors, (252), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:16:48,481 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:16:48,481 INFO L93 Difference]: Finished difference Result 908 states and 972 transitions. [2024-11-23 02:16:48,481 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 908 states and 972 transitions. [2024-11-23 02:16:48,484 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-23 02:16:48,485 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 908 states to 716 states and 776 transitions. [2024-11-23 02:16:48,485 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 454 [2024-11-23 02:16:48,486 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 499 [2024-11-23 02:16:48,486 INFO L73 IsDeterministic]: Start isDeterministic. Operand 716 states and 776 transitions. [2024-11-23 02:16:48,486 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:16:48,486 INFO L218 hiAutomatonCegarLoop]: Abstraction has 716 states and 776 transitions. [2024-11-23 02:16:48,486 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 716 states and 776 transitions. [2024-11-23 02:16:48,490 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 716 to 599. [2024-11-23 02:16:48,491 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 599 states, 599 states have (on average 1.0684474123539232) internal successors, (640), 598 states have internal predecessors, (640), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:16:48,491 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 599 states to 599 states and 640 transitions. [2024-11-23 02:16:48,491 INFO L240 hiAutomatonCegarLoop]: Abstraction has 599 states and 640 transitions. [2024-11-23 02:16:48,492 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 123 states. [2024-11-23 02:16:48,492 INFO L425 stractBuchiCegarLoop]: Abstraction has 599 states and 640 transitions. [2024-11-23 02:16:48,492 INFO L332 stractBuchiCegarLoop]: ======== Iteration 29 ============ [2024-11-23 02:16:48,492 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 599 states and 640 transitions. [2024-11-23 02:16:48,494 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-23 02:16:48,494 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:16:48,494 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:16:48,494 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [25, 24, 18, 18, 18, 15, 15, 11, 7, 6, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-23 02:16:48,494 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-23 02:16:48,495 INFO L745 eck$LassoCheckResult]: Stem: 23447#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 23435#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 23427#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 23428#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 23443#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 23444#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 23445#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 23478#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 23477#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 23476#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 23475#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 23474#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 23473#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 23472#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 23471#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 23470#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 23469#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 23468#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 23467#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 23466#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 23465#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 23464#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 23463#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 23462#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 23461#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 23460#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 23459#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 23458#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 23456#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 23454#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 23453#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 23452#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 23451#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 23450#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 23408#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 23409#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23416#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23417#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23441#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23442#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23605#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23604#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23603#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23602#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23601#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23600#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23599#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23598#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23597#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23596#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23595#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23594#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23593#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23592#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23591#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23590#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23589#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23588#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23587#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23586#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23585#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23584#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23583#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23582#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23581#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23579#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23578#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23577#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23575#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23576#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 23907#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23906#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23905#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 23904#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23903#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23902#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 23901#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23900#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23899#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 23898#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23897#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23896#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 23895#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23894#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23892#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 23891#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23890#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23889#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 23528#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23457#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 23420#L29-4 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 23421#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 23436#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23608#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23606#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23607#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23673#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23672#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23671#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23670#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23669#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23668#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23667#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23666#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23665#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23664#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23663#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23662#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23661#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23660#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23659#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23658#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23657#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23656#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23655#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23654#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23653#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23652#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23651#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23650#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23649#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23647#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23648#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23701#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23699#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23700#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23726#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23724#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23725#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23751#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23749#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23750#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23776#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23774#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23775#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23800#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23798#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23799#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23844#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23841#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23842#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23846#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23845#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23438#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23412#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23413#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23437#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23410#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 23411#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23448#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23860#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 23859#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23858#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23857#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 23856#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23855#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23854#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 23853#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23852#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23851#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 23850#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23849#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23848#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 23847#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23618#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23617#L30-2 [2024-11-23 02:16:48,495 INFO L747 eck$LassoCheckResult]: Loop: 23617#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 23804#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23616#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23617#L30-2 [2024-11-23 02:16:48,495 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:16:48,495 INFO L85 PathProgramCache]: Analyzing trace with hash -4810335, now seen corresponding path program 17 times [2024-11-23 02:16:48,495 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:16:48,496 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1476374845] [2024-11-23 02:16:48,496 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-23 02:16:48,496 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:16:48,580 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 25 check-sat command(s) [2024-11-23 02:16:48,581 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:16:49,255 INFO L134 CoverageAnalysis]: Checked inductivity of 1554 backedges. 392 proven. 671 refuted. 0 times theorem prover too weak. 491 trivial. 0 not checked. [2024-11-23 02:16:49,255 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:16:49,256 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1476374845] [2024-11-23 02:16:49,256 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1476374845] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-23 02:16:49,256 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [911917815] [2024-11-23 02:16:49,256 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-23 02:16:49,256 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-23 02:16:49,256 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:16:49,259 INFO L229 MonitoredProcess]: Starting monitored process 81 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-23 02:16:49,265 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (81)] Waiting until timeout for monitored process [2024-11-23 02:16:49,571 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 25 check-sat command(s) [2024-11-23 02:16:49,572 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:16:49,575 INFO L255 TraceCheckSpWp]: Trace formula consists of 530 conjuncts, 34 conjuncts are in the unsatisfiable core [2024-11-23 02:16:49,577 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:16:50,506 INFO L134 CoverageAnalysis]: Checked inductivity of 1554 backedges. 744 proven. 225 refuted. 0 times theorem prover too weak. 585 trivial. 0 not checked. [2024-11-23 02:16:50,506 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-23 02:16:51,392 INFO L134 CoverageAnalysis]: Checked inductivity of 1554 backedges. 744 proven. 225 refuted. 0 times theorem prover too weak. 585 trivial. 0 not checked. [2024-11-23 02:16:51,393 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [911917815] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-23 02:16:51,393 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-23 02:16:51,393 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [26, 35, 35] total 75 [2024-11-23 02:16:51,393 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1855681197] [2024-11-23 02:16:51,393 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-23 02:16:51,394 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:16:51,394 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:16:51,394 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 16 times [2024-11-23 02:16:51,394 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:16:51,394 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1357225195] [2024-11-23 02:16:51,394 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-23 02:16:51,394 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:16:51,397 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-23 02:16:51,397 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:16:51,398 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:16:51,398 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:16:51,400 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:16:51,452 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:16:51,453 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 75 interpolants. [2024-11-23 02:16:51,454 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=875, Invalid=4675, Unknown=0, NotChecked=0, Total=5550 [2024-11-23 02:16:51,455 INFO L87 Difference]: Start difference. First operand 599 states and 640 transitions. cyclomatic complexity: 49 Second operand has 75 states, 75 states have (on average 2.8) internal successors, (210), 75 states have internal predecessors, (210), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:16:53,620 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-23 02:16:53,621 INFO L93 Difference]: Finished difference Result 749 states and 810 transitions. [2024-11-23 02:16:53,621 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 749 states and 810 transitions. [2024-11-23 02:16:53,623 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-23 02:16:53,624 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 749 states to 710 states and 756 transitions. [2024-11-23 02:16:53,624 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 491 [2024-11-23 02:16:53,625 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 491 [2024-11-23 02:16:53,625 INFO L73 IsDeterministic]: Start isDeterministic. Operand 710 states and 756 transitions. [2024-11-23 02:16:53,625 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-23 02:16:53,625 INFO L218 hiAutomatonCegarLoop]: Abstraction has 710 states and 756 transitions. [2024-11-23 02:16:53,625 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 710 states and 756 transitions. [2024-11-23 02:16:53,629 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 710 to 643. [2024-11-23 02:16:53,630 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 643 states, 643 states have (on average 1.0606531881804044) internal successors, (682), 642 states have internal predecessors, (682), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-23 02:16:53,630 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 643 states to 643 states and 682 transitions. [2024-11-23 02:16:53,630 INFO L240 hiAutomatonCegarLoop]: Abstraction has 643 states and 682 transitions. [2024-11-23 02:16:53,631 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 65 states. [2024-11-23 02:16:53,632 INFO L425 stractBuchiCegarLoop]: Abstraction has 643 states and 682 transitions. [2024-11-23 02:16:53,632 INFO L332 stractBuchiCegarLoop]: ======== Iteration 30 ============ [2024-11-23 02:16:53,632 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 643 states and 682 transitions. [2024-11-23 02:16:53,633 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-23 02:16:53,633 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-23 02:16:53,633 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-23 02:16:53,634 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [26, 25, 18, 18, 18, 16, 16, 10, 8, 7, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-23 02:16:53,634 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-23 02:16:53,634 INFO L745 eck$LassoCheckResult]: Stem: 25932#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 25917#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 25909#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 25910#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 25929#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25930#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 25927#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25928#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 25973#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25972#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 25971#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25970#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 25969#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25968#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 25967#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25966#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 25965#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25964#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 25963#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25962#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 25961#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25960#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 25959#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25958#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 25957#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25956#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 25955#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25954#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 25953#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25952#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 25951#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25950#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 25949#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25948#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 25941#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25940#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 25890#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 25891#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 25900#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25901#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25925#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 25926#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25938#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25939#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 26097#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26096#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26095#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 26094#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26093#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26092#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 26091#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26090#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26089#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 26088#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26087#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26086#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 26085#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26084#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26083#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 26082#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26081#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26080#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 26079#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26078#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26077#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 26076#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26075#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26073#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 26074#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 26394#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26393#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 26392#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 26391#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26390#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 26389#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 26388#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26387#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 26386#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 26385#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26384#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 26383#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 26382#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26381#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 26380#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 26379#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26378#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 26377#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 26375#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26374#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 26373#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 25943#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25942#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 25905#L29-4 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 25906#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 25918#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26105#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26103#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26104#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26165#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26164#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26163#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26162#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26161#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26160#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26159#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26158#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26157#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26156#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26155#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26154#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26153#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26152#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26151#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26150#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26149#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26148#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26147#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26146#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26145#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26144#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26143#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26142#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26141#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26139#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26140#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26193#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26191#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26192#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26221#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26219#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26220#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26249#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26247#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26248#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26277#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26275#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26276#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26305#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26303#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26304#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26354#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25935#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25936#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 25894#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25895#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25921#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 25922#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26353#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26351#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26349#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 26347#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26345#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26343#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 26341#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26339#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26337#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 26335#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26333#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26331#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 26329#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26327#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26325#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 26323#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26321#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26319#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 26317#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26315#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26313#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 26312#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26109#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26108#L30-2 [2024-11-23 02:16:53,634 INFO L747 eck$LassoCheckResult]: Loop: 26108#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 26308#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26107#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26108#L30-2 [2024-11-23 02:16:53,635 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:16:53,635 INFO L85 PathProgramCache]: Analyzing trace with hash -1962889361, now seen corresponding path program 18 times [2024-11-23 02:16:53,635 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:16:53,635 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [830993641] [2024-11-23 02:16:53,635 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-23 02:16:53,635 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:16:53,713 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 26 check-sat command(s) [2024-11-23 02:16:53,713 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:16:55,236 INFO L134 CoverageAnalysis]: Checked inductivity of 1658 backedges. 594 proven. 461 refuted. 0 times theorem prover too weak. 603 trivial. 0 not checked. [2024-11-23 02:16:55,236 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-23 02:16:55,237 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [830993641] [2024-11-23 02:16:55,237 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [830993641] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-23 02:16:55,237 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [127665959] [2024-11-23 02:16:55,237 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-23 02:16:55,237 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-23 02:16:55,237 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-23 02:16:55,239 INFO L229 MonitoredProcess]: Starting monitored process 82 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-23 02:16:55,240 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (82)] Waiting until timeout for monitored process [2024-11-23 02:16:56,367 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 26 check-sat command(s) [2024-11-23 02:16:56,367 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-23 02:16:56,373 INFO L255 TraceCheckSpWp]: Trace formula consists of 561 conjuncts, 47 conjuncts are in the unsatisfiable core [2024-11-23 02:16:56,375 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-23 02:16:58,034 INFO L134 CoverageAnalysis]: Checked inductivity of 1658 backedges. 925 proven. 477 refuted. 0 times theorem prover too weak. 256 trivial. 0 not checked. [2024-11-23 02:16:58,035 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-23 02:16:59,807 INFO L134 CoverageAnalysis]: Checked inductivity of 1658 backedges. 925 proven. 477 refuted. 0 times theorem prover too weak. 256 trivial. 0 not checked. [2024-11-23 02:16:59,808 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [127665959] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-23 02:16:59,808 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-23 02:16:59,808 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [37, 47, 47] total 117 [2024-11-23 02:16:59,808 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [998447213] [2024-11-23 02:16:59,808 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-23 02:16:59,808 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-23 02:16:59,809 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-23 02:16:59,809 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 17 times [2024-11-23 02:16:59,809 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-23 02:16:59,809 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [881747931] [2024-11-23 02:16:59,809 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-23 02:16:59,809 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-23 02:16:59,812 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2024-11-23 02:16:59,812 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-23 02:16:59,812 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-23 02:16:59,813 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-23 02:16:59,815 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-23 02:16:59,867 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-23 02:16:59,868 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 117 interpolants. [2024-11-23 02:16:59,871 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=2107, Invalid=11465, Unknown=0, NotChecked=0, Total=13572 [2024-11-23 02:16:59,872 INFO L87 Difference]: Start difference. First operand 643 states and 682 transitions. cyclomatic complexity: 47 Second operand has 117 states, 117 states have (on average 2.9145299145299144) internal successors, (341), 117 states have internal predecessors, (341), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0)