./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 023d838f Calling Ultimate with: /root/.sdkman/candidates/java/11.0.12-open/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerTermination.xml -i ../sv-benchmarks/c/reducercommutativity/rangesum.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Termination-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(F end) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 4dc91bf2fc8981aab63c1ee768384f1c8f580edfe4618d65089a78f799b6ddb8 --- Real Ultimate output --- This is Ultimate 0.2.5-tmp.fs.icfgbuilder-eval-023d838-m [2024-11-10 22:42:35,742 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-11-10 22:42:35,819 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Termination-32bit-Automizer_Default.epf [2024-11-10 22:42:35,828 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-11-10 22:42:35,829 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-11-10 22:42:35,829 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder.Remove goto edges from RCFG [2024-11-10 22:42:35,860 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-11-10 22:42:35,861 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-11-10 22:42:35,862 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-11-10 22:42:35,862 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-11-10 22:42:35,862 INFO L153 SettingsManager]: * Use memory slicer=true [2024-11-10 22:42:35,863 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-11-10 22:42:35,864 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-11-10 22:42:35,865 INFO L153 SettingsManager]: * Use SBE=true [2024-11-10 22:42:35,866 INFO L151 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2024-11-10 22:42:35,866 INFO L153 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2024-11-10 22:42:35,867 INFO L153 SettingsManager]: * Use old map elimination=false [2024-11-10 22:42:35,869 INFO L153 SettingsManager]: * Use external solver (rank synthesis)=false [2024-11-10 22:42:35,869 INFO L153 SettingsManager]: * Use only trivial implications for array writes=true [2024-11-10 22:42:35,869 INFO L153 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2024-11-10 22:42:35,870 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-11-10 22:42:35,870 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2024-11-10 22:42:35,871 INFO L153 SettingsManager]: * sizeof long=4 [2024-11-10 22:42:35,873 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-11-10 22:42:35,873 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-11-10 22:42:35,874 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-11-10 22:42:35,874 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2024-11-10 22:42:35,874 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2024-11-10 22:42:35,874 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2024-11-10 22:42:35,875 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-11-10 22:42:35,875 INFO L153 SettingsManager]: * Check unreachability of reach_error function=false [2024-11-10 22:42:35,875 INFO L153 SettingsManager]: * sizeof long double=12 [2024-11-10 22:42:35,875 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-11-10 22:42:35,875 INFO L153 SettingsManager]: * Assume nondeterminstic values are in range=false [2024-11-10 22:42:35,876 INFO L153 SettingsManager]: * Use constant arrays=true [2024-11-10 22:42:35,876 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2024-11-10 22:42:35,876 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-11-10 22:42:35,877 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-11-10 22:42:35,877 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-11-10 22:42:35,878 INFO L151 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2024-11-10 22:42:35,878 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-10 22:42:36,098 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-11-10 22:42:36,122 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-11-10 22:42:36,125 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-11-10 22:42:36,126 INFO L270 PluginConnector]: Initializing CDTParser... [2024-11-10 22:42:36,126 INFO L274 PluginConnector]: CDTParser initialized [2024-11-10 22:42:36,127 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/reducercommutativity/rangesum.i [2024-11-10 22:42:37,574 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-11-10 22:42:37,769 INFO L384 CDTParser]: Found 1 translation units. [2024-11-10 22:42:37,771 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/reducercommutativity/rangesum.i [2024-11-10 22:42:37,783 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/de072d5cb/1798708e14d64346b99e5e48a7897e02/FLAGdce04ec9a [2024-11-10 22:42:37,801 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/de072d5cb/1798708e14d64346b99e5e48a7897e02 [2024-11-10 22:42:37,804 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-11-10 22:42:37,806 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2024-11-10 22:42:37,808 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-11-10 22:42:37,808 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-11-10 22:42:37,813 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-11-10 22:42:37,813 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 10.11 10:42:37" (1/1) ... [2024-11-10 22:42:37,814 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@363c6615 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 10:42:37, skipping insertion in model container [2024-11-10 22:42:37,815 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 10.11 10:42:37" (1/1) ... [2024-11-10 22:42:37,836 INFO L175 MainTranslator]: Built tables and reachable declarations [2024-11-10 22:42:38,071 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-10 22:42:38,084 INFO L200 MainTranslator]: Completed pre-run [2024-11-10 22:42:38,116 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-10 22:42:38,136 INFO L204 MainTranslator]: Completed translation [2024-11-10 22:42:38,137 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 10:42:38 WrapperNode [2024-11-10 22:42:38,137 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-11-10 22:42:38,138 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-11-10 22:42:38,138 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-11-10 22:42:38,138 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-11-10 22:42:38,144 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 10:42:38" (1/1) ... [2024-11-10 22:42:38,151 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 10:42:38" (1/1) ... [2024-11-10 22:42:38,189 INFO L138 Inliner]: procedures = 17, calls = 23, calls flagged for inlining = 7, calls inlined = 7, statements flattened = 137 [2024-11-10 22:42:38,189 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-11-10 22:42:38,190 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-11-10 22:42:38,190 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-11-10 22:42:38,190 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-11-10 22:42:38,200 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 10:42:38" (1/1) ... [2024-11-10 22:42:38,200 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 10:42:38" (1/1) ... [2024-11-10 22:42:38,203 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 10:42:38" (1/1) ... [2024-11-10 22:42:38,221 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-10 22:42:38,221 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 10:42:38" (1/1) ... [2024-11-10 22:42:38,221 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 10:42:38" (1/1) ... [2024-11-10 22:42:38,227 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 10:42:38" (1/1) ... [2024-11-10 22:42:38,228 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 10:42:38" (1/1) ... [2024-11-10 22:42:38,230 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 10:42:38" (1/1) ... [2024-11-10 22:42:38,231 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 10:42:38" (1/1) ... [2024-11-10 22:42:38,233 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-11-10 22:42:38,234 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2024-11-10 22:42:38,234 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2024-11-10 22:42:38,234 INFO L274 PluginConnector]: IcfgBuilder initialized [2024-11-10 22:42:38,235 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 10:42:38" (1/1) ... [2024-11-10 22:42:38,246 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:38,257 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:38,273 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-10 22:42:38,280 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-10 22:42:38,324 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-11-10 22:42:38,324 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-11-10 22:42:38,324 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2024-11-10 22:42:38,324 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2024-11-10 22:42:38,325 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2024-11-10 22:42:38,325 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2024-11-10 22:42:38,325 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-11-10 22:42:38,325 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-11-10 22:42:38,325 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2024-11-10 22:42:38,325 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#1 [2024-11-10 22:42:38,325 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2024-11-10 22:42:38,425 INFO L256 CfgBuilder]: Building ICFG [2024-11-10 22:42:38,427 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2024-11-10 22:42:38,671 INFO L? ?]: Removed 35 outVars from TransFormulas that were not future-live. [2024-11-10 22:42:38,672 INFO L307 CfgBuilder]: Performing block encoding [2024-11-10 22:42:38,685 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-11-10 22:42:38,685 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2024-11-10 22:42:38,686 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 10.11 10:42:38 BoogieIcfgContainer [2024-11-10 22:42:38,686 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2024-11-10 22:42:38,687 INFO L112 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2024-11-10 22:42:38,688 INFO L270 PluginConnector]: Initializing BuchiAutomizer... [2024-11-10 22:42:38,692 INFO L274 PluginConnector]: BuchiAutomizer initialized [2024-11-10 22:42:38,693 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-11-10 22:42:38,693 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 10.11 10:42:37" (1/3) ... [2024-11-10 22:42:38,694 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@6e9f5d03 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 10.11 10:42:38, skipping insertion in model container [2024-11-10 22:42:38,695 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-11-10 22:42:38,695 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 10:42:38" (2/3) ... [2024-11-10 22:42:38,695 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@6e9f5d03 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 10.11 10:42:38, skipping insertion in model container [2024-11-10 22:42:38,695 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-11-10 22:42:38,696 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 10.11 10:42:38" (3/3) ... [2024-11-10 22:42:38,697 INFO L332 chiAutomizerObserver]: Analyzing ICFG rangesum.i [2024-11-10 22:42:38,747 INFO L300 stractBuchiCegarLoop]: Interprodecural is true [2024-11-10 22:42:38,747 INFO L301 stractBuchiCegarLoop]: Hoare is None [2024-11-10 22:42:38,748 INFO L302 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2024-11-10 22:42:38,748 INFO L303 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2024-11-10 22:42:38,748 INFO L304 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2024-11-10 22:42:38,749 INFO L305 stractBuchiCegarLoop]: Difference is false [2024-11-10 22:42:38,749 INFO L306 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2024-11-10 22:42:38,749 INFO L310 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2024-11-10 22:42:38,753 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 35 states, 34 states have (on average 1.5588235294117647) internal successors, (53), 34 states have internal predecessors, (53), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:42:38,767 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 16 [2024-11-10 22:42:38,767 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-10 22:42:38,767 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-10 22:42:38,773 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2024-11-10 22:42:38,773 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2024-11-10 22:42:38,773 INFO L332 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2024-11-10 22:42:38,773 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 35 states, 34 states have (on average 1.5588235294117647) internal successors, (53), 34 states have internal predecessors, (53), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:42:38,776 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 16 [2024-11-10 22:42:38,776 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-10 22:42:38,776 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-10 22:42:38,776 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2024-11-10 22:42:38,776 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2024-11-10 22:42:38,784 INFO L745 eck$LassoCheckResult]: Stem: 15#ULTIMATE.startENTRYtrue 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; 30#ULTIMATE.init_returnLabel#1true assume true;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; 5#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; 28#L18true [2024-11-10 22:42:38,784 INFO L747 eck$LassoCheckResult]: Loop: 28#L18true assume true; 16#L18-1true assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 28#L18true [2024-11-10 22:42:38,789 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:38,789 INFO L85 PathProgramCache]: Analyzing trace with hash 91323, now seen corresponding path program 1 times [2024-11-10 22:42:38,797 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:38,798 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1859231741] [2024-11-10 22:42:38,798 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:38,799 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:38,912 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:38,913 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:42:38,927 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:38,944 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:42:38,948 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:38,948 INFO L85 PathProgramCache]: Analyzing trace with hash 2784, now seen corresponding path program 1 times [2024-11-10 22:42:38,948 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:38,948 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [145805181] [2024-11-10 22:42:38,948 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:38,949 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:38,964 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:38,965 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:42:38,972 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:38,976 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:42:38,979 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:38,980 INFO L85 PathProgramCache]: Analyzing trace with hash 87763226, now seen corresponding path program 1 times [2024-11-10 22:42:38,980 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:38,980 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1087579044] [2024-11-10 22:42:38,980 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:38,981 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:39,015 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:39,016 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:42:39,038 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:39,045 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:42:39,420 INFO L204 LassoAnalysis]: Preferences: [2024-11-10 22:42:39,421 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-10 22:42:39,421 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-10 22:42:39,421 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-10 22:42:39,422 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-10 22:42:39,422 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:39,422 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-10 22:42:39,423 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-10 22:42:39,423 INFO L132 ssoRankerPreferences]: Filename of dumped script: rangesum.i_Iteration1_Lasso [2024-11-10 22:42:39,424 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-10 22:42:39,424 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-10 22:42:39,442 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:39,450 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:39,453 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:39,456 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:39,749 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:39,755 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:39,757 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:39,760 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:39,763 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:39,766 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:39,771 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:39,776 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:39,787 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:39,790 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:39,792 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:39,795 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:39,797 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:39,799 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:39,801 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:39,805 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:40,126 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-10 22:42:40,130 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-10 22:42:40,131 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:40,132 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:40,134 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-10 22:42:40,136 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-10 22:42:40,138 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-10 22:42:40,152 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:40,152 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:40,152 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:40,152 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:40,153 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:40,155 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:40,155 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:40,158 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:40,173 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-10 22:42:40,174 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:40,174 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:40,176 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-10 22:42:40,177 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-10 22:42:40,178 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-10 22:42:40,191 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:40,192 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:40,192 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:40,192 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:40,192 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:40,193 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:40,193 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:40,195 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:40,209 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (3)] Forceful destruction successful, exit code 0 [2024-11-10 22:42:40,209 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:40,210 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:40,211 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-10 22:42:40,213 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-10 22:42:40,219 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-10 22:42:40,231 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:40,232 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:40,232 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:40,232 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:40,232 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:40,233 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:40,233 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:40,234 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:40,250 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-10 22:42:40,251 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:40,251 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:40,252 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-10 22:42:40,254 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-10 22:42:40,255 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-10 22:42:40,268 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:40,268 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:40,268 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:40,268 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:40,272 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-10 22:42:40,272 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-10 22:42:40,276 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:40,291 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-10 22:42:40,291 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:40,291 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:40,293 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-10 22:42:40,295 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-10 22:42:40,296 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-10 22:42:40,308 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:40,309 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:40,309 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:40,309 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:40,316 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-10 22:42:40,316 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-10 22:42:40,322 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:40,337 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-10 22:42:40,338 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:40,339 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:40,340 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-10 22:42:40,342 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-10 22:42:40,344 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-10 22:42:40,356 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:40,357 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:40,357 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:40,357 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:40,357 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:40,358 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:40,358 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:40,360 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:40,376 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (7)] Forceful destruction successful, exit code 0 [2024-11-10 22:42:40,376 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:40,376 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:40,378 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-10 22:42:40,379 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-10 22:42:40,380 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-10 22:42:40,393 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:40,393 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:40,393 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:40,393 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:40,396 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-10 22:42:40,396 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-10 22:42:40,400 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:40,414 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-10 22:42:40,415 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:40,415 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:40,417 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-10 22:42:40,418 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-10 22:42:40,419 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-10 22:42:40,432 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:40,432 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:40,432 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:40,433 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:40,435 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-10 22:42:40,435 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-10 22:42:40,444 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:40,459 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (9)] Forceful destruction successful, exit code 0 [2024-11-10 22:42:40,459 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:40,460 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:40,461 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-10 22:42:40,463 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-10 22:42:40,464 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-10 22:42:40,477 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:40,478 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:40,478 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:40,478 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:40,481 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-10 22:42:40,484 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-10 22:42:40,488 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:40,503 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (10)] Ended with exit code 0 [2024-11-10 22:42:40,504 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:40,504 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:40,505 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-10 22:42:40,507 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-10 22:42:40,509 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-10 22:42:40,522 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:40,522 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:40,523 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:40,523 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:40,530 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-10 22:42:40,531 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-10 22:42:40,542 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-10 22:42:40,585 INFO L443 ModelExtractionUtils]: Simplification made 10 calls to the SMT solver. [2024-11-10 22:42:40,585 INFO L444 ModelExtractionUtils]: 5 out of 19 variables were initially zero. Simplification set additionally 10 variables to zero. [2024-11-10 22:42:40,587 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:40,587 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:40,608 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-10 22:42:40,609 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-10 22:42:40,611 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-10 22:42:40,625 INFO L438 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2024-11-10 22:42:40,625 INFO L474 LassoAnalysis]: Proved termination. [2024-11-10 22:42:40,626 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-10 22:42:40,641 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-10 22:42:40,668 INFO L156 tatePredicateManager]: 8 out of 8 supporting invariants were superfluous and have been removed [2024-11-10 22:42:40,679 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: #length [2024-11-10 22:42:40,680 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array IdentifierExpression[#length,GLOBAL] [2024-11-10 22:42:40,682 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: ~x!offset [2024-11-10 22:42:40,706 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:40,730 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:42:40,731 INFO L255 TraceCheckSpWp]: Trace formula consists of 43 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-11-10 22:42:40,732 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-10 22:42:40,746 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:42:40,747 INFO L255 TraceCheckSpWp]: Trace formula consists of 14 conjuncts, 4 conjuncts are in the unsatisfiable core [2024-11-10 22:42:40,747 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-10 22:42:40,751 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-10 22:42:40,783 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 1 loop predicates [2024-11-10 22:42:40,785 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand has 35 states, 34 states have (on average 1.5588235294117647) internal successors, (53), 34 states have internal predecessors, (53), 0 states have call successors, (0), 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-10 22:42:40,823 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand has 35 states, 34 states have (on average 1.5588235294117647) internal successors, (53), 34 states have internal predecessors, (53), 0 states have call successors, (0), 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 71 states and 105 transitions. Complement of second has 6 states. [2024-11-10 22:42:40,826 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-10 22:42:40,830 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-10 22:42:40,831 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 55 transitions. [2024-11-10 22:42:40,832 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 55 transitions. Stem has 3 letters. Loop has 2 letters. [2024-11-10 22:42:40,833 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-10 22:42:40,833 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 55 transitions. Stem has 5 letters. Loop has 2 letters. [2024-11-10 22:42:40,833 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-10 22:42:40,833 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 55 transitions. Stem has 3 letters. Loop has 4 letters. [2024-11-10 22:42:40,833 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-10 22:42:40,834 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 71 states and 105 transitions. [2024-11-10 22:42:40,840 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 14 [2024-11-10 22:42:40,846 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 71 states to 27 states and 40 transitions. [2024-11-10 22:42:40,847 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 24 [2024-11-10 22:42:40,850 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 25 [2024-11-10 22:42:40,851 INFO L73 IsDeterministic]: Start isDeterministic. Operand 27 states and 40 transitions. [2024-11-10 22:42:40,851 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-10 22:42:40,851 INFO L218 hiAutomatonCegarLoop]: Abstraction has 27 states and 40 transitions. [2024-11-10 22:42:40,865 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states and 40 transitions. [2024-11-10 22:42:40,871 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 27. [2024-11-10 22:42:40,871 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 27 states have (on average 1.4814814814814814) internal successors, (40), 26 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-10 22:42:40,872 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 40 transitions. [2024-11-10 22:42:40,873 INFO L240 hiAutomatonCegarLoop]: Abstraction has 27 states and 40 transitions. [2024-11-10 22:42:40,873 INFO L425 stractBuchiCegarLoop]: Abstraction has 27 states and 40 transitions. [2024-11-10 22:42:40,873 INFO L332 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2024-11-10 22:42:40,873 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 27 states and 40 transitions. [2024-11-10 22:42:40,874 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 14 [2024-11-10 22:42:40,874 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-10 22:42:40,874 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-10 22:42:40,874 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1] [2024-11-10 22:42:40,874 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-10 22:42:40,875 INFO L745 eck$LassoCheckResult]: Stem: 193#ULTIMATE.startENTRY 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; 194#ULTIMATE.init_returnLabel#1 assume true;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; 180#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; 181#L18 assume true; 195#L18-1 assume !(init_nondet_~i~0#1 < ~N~0); 185#init_nondet_returnLabel#1 assume true;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; 186#L29-6 [2024-11-10 22:42:40,875 INFO L747 eck$LassoCheckResult]: Loop: 186#L29-6 assume true; 202#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 176#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; 177#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 186#L29-6 [2024-11-10 22:42:40,875 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:40,875 INFO L85 PathProgramCache]: Analyzing trace with hash -1574307300, now seen corresponding path program 1 times [2024-11-10 22:42:40,876 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:40,876 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [956708779] [2024-11-10 22:42:40,876 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:40,876 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:40,888 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:42:40,966 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-10 22:42:40,966 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-10 22:42:40,966 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [956708779] [2024-11-10 22:42:40,967 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [956708779] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-10 22:42:40,967 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-10 22:42:40,967 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-11-10 22:42:40,967 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [829487154] [2024-11-10 22:42:40,968 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-10 22:42:40,970 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-10 22:42:40,970 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:40,970 INFO L85 PathProgramCache]: Analyzing trace with hash 2461631, now seen corresponding path program 1 times [2024-11-10 22:42:40,971 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:40,971 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1970702818] [2024-11-10 22:42:40,971 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:40,971 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:40,985 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:40,988 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:42:40,995 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:40,997 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:42:41,096 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-10 22:42:41,099 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-11-10 22:42:41,100 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-11-10 22:42:41,101 INFO L87 Difference]: Start difference. First operand 27 states and 40 transitions. cyclomatic complexity: 18 Second operand has 3 states, 3 states have (on average 2.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:42:41,140 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-10 22:42:41,140 INFO L93 Difference]: Finished difference Result 29 states and 38 transitions. [2024-11-10 22:42:41,140 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 29 states and 38 transitions. [2024-11-10 22:42:41,141 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 14 [2024-11-10 22:42:41,144 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 29 states to 28 states and 37 transitions. [2024-11-10 22:42:41,144 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 25 [2024-11-10 22:42:41,144 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 25 [2024-11-10 22:42:41,144 INFO L73 IsDeterministic]: Start isDeterministic. Operand 28 states and 37 transitions. [2024-11-10 22:42:41,144 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-10 22:42:41,144 INFO L218 hiAutomatonCegarLoop]: Abstraction has 28 states and 37 transitions. [2024-11-10 22:42:41,145 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 28 states and 37 transitions. [2024-11-10 22:42:41,146 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 28 to 27. [2024-11-10 22:42:41,146 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 27 states have (on average 1.3333333333333333) internal successors, (36), 26 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-10 22:42:41,147 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 36 transitions. [2024-11-10 22:42:41,147 INFO L240 hiAutomatonCegarLoop]: Abstraction has 27 states and 36 transitions. [2024-11-10 22:42:41,148 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-11-10 22:42:41,148 INFO L425 stractBuchiCegarLoop]: Abstraction has 27 states and 36 transitions. [2024-11-10 22:42:41,148 INFO L332 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2024-11-10 22:42:41,149 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 27 states and 36 transitions. [2024-11-10 22:42:41,149 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 14 [2024-11-10 22:42:41,149 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-10 22:42:41,150 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-10 22:42:41,150 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [2, 1, 1, 1, 1, 1, 1] [2024-11-10 22:42:41,150 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-10 22:42:41,150 INFO L745 eck$LassoCheckResult]: Stem: 254#ULTIMATE.startENTRY 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; 255#ULTIMATE.init_returnLabel#1 assume true;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; 242#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; 243#L18 assume true; 257#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 258#L18 assume true; 256#L18-1 assume !(init_nondet_~i~0#1 < ~N~0); 244#init_nondet_returnLabel#1 assume true;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; 245#L29-6 [2024-11-10 22:42:41,150 INFO L747 eck$LassoCheckResult]: Loop: 245#L29-6 assume true; 264#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 238#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; 239#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 245#L29-6 [2024-11-10 22:42:41,151 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:41,151 INFO L85 PathProgramCache]: Analyzing trace with hash -1080760995, now seen corresponding path program 1 times [2024-11-10 22:42:41,151 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:41,151 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1895682135] [2024-11-10 22:42:41,152 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:41,152 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:41,169 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:42:41,251 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-10 22:42:41,251 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-10 22:42:41,251 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1895682135] [2024-11-10 22:42:41,251 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1895682135] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-10 22:42:41,251 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1471730505] [2024-11-10 22:42:41,251 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:41,252 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-10 22:42:41,252 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:41,254 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-10 22:42:41,277 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Waiting until timeout for monitored process [2024-11-10 22:42:41,295 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-10 22:42:41,338 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:42:41,339 INFO L255 TraceCheckSpWp]: Trace formula consists of 71 conjuncts, 4 conjuncts are in the unsatisfiable core [2024-11-10 22:42:41,340 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-10 22:42:41,383 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-10 22:42:41,384 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-10 22:42:41,410 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-10 22:42:41,410 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1471730505] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-10 22:42:41,410 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-10 22:42:41,411 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4, 4] total 7 [2024-11-10 22:42:41,411 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1143413688] [2024-11-10 22:42:41,411 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-10 22:42:41,414 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-10 22:42:41,414 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:41,414 INFO L85 PathProgramCache]: Analyzing trace with hash 2461631, now seen corresponding path program 2 times [2024-11-10 22:42:41,414 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:41,415 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [511376249] [2024-11-10 22:42:41,415 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:41,415 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:41,425 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:41,425 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:42:41,434 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:41,439 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:42:41,541 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-10 22:42:41,542 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2024-11-10 22:42:41,543 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=22, Unknown=0, NotChecked=0, Total=42 [2024-11-10 22:42:41,543 INFO L87 Difference]: Start difference. First operand 27 states and 36 transitions. cyclomatic complexity: 14 Second operand has 7 states, 7 states have (on average 2.2857142857142856) internal successors, (16), 7 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:42:41,607 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-10 22:42:41,608 INFO L93 Difference]: Finished difference Result 31 states and 40 transitions. [2024-11-10 22:42:41,608 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 31 states and 40 transitions. [2024-11-10 22:42:41,609 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 14 [2024-11-10 22:42:41,609 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 31 states to 30 states and 39 transitions. [2024-11-10 22:42:41,609 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 25 [2024-11-10 22:42:41,609 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 25 [2024-11-10 22:42:41,610 INFO L73 IsDeterministic]: Start isDeterministic. Operand 30 states and 39 transitions. [2024-11-10 22:42:41,610 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-10 22:42:41,610 INFO L218 hiAutomatonCegarLoop]: Abstraction has 30 states and 39 transitions. [2024-11-10 22:42:41,610 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 30 states and 39 transitions. [2024-11-10 22:42:41,613 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 30 to 29. [2024-11-10 22:42:41,613 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 29 states have (on average 1.3103448275862069) internal successors, (38), 28 states have internal predecessors, (38), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:42:41,614 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 38 transitions. [2024-11-10 22:42:41,614 INFO L240 hiAutomatonCegarLoop]: Abstraction has 29 states and 38 transitions. [2024-11-10 22:42:41,615 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-11-10 22:42:41,616 INFO L425 stractBuchiCegarLoop]: Abstraction has 29 states and 38 transitions. [2024-11-10 22:42:41,616 INFO L332 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2024-11-10 22:42:41,616 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 29 states and 38 transitions. [2024-11-10 22:42:41,617 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 14 [2024-11-10 22:42:41,617 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-10 22:42:41,617 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-10 22:42:41,617 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [3, 2, 1, 1, 1, 1, 1] [2024-11-10 22:42:41,617 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-10 22:42:41,618 INFO L745 eck$LassoCheckResult]: Stem: 367#ULTIMATE.startENTRY 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; 368#ULTIMATE.init_returnLabel#1 assume true;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; 352#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; 353#L18 assume true; 365#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 366#L18 assume true; 375#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 376#L18 assume true; 364#L18-1 assume !(init_nondet_~i~0#1 < ~N~0); 354#init_nondet_returnLabel#1 assume true;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; 355#L29-6 [2024-11-10 22:42:41,618 INFO L747 eck$LassoCheckResult]: Loop: 355#L29-6 assume true; 374#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 348#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; 349#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 355#L29-6 [2024-11-10 22:42:41,618 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:41,618 INFO L85 PathProgramCache]: Analyzing trace with hash 770835550, now seen corresponding path program 2 times [2024-11-10 22:42:41,618 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:41,618 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [564032037] [2024-11-10 22:42:41,619 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:41,619 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:41,641 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:41,641 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:42:41,651 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:41,654 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:42:41,655 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:41,655 INFO L85 PathProgramCache]: Analyzing trace with hash 2461631, now seen corresponding path program 3 times [2024-11-10 22:42:41,655 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:41,656 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [345984002] [2024-11-10 22:42:41,656 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:41,656 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:41,662 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:41,662 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:42:41,666 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:41,668 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:42:41,668 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:41,669 INFO L85 PathProgramCache]: Analyzing trace with hash 580132252, now seen corresponding path program 1 times [2024-11-10 22:42:41,669 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:41,669 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1267225877] [2024-11-10 22:42:41,669 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:41,669 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:41,683 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:42:41,771 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2024-11-10 22:42:41,771 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-10 22:42:41,771 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1267225877] [2024-11-10 22:42:41,772 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1267225877] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-10 22:42:41,772 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-10 22:42:41,772 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-11-10 22:42:41,772 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [929112915] [2024-11-10 22:42:41,773 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-10 22:42:41,868 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-10 22:42:41,868 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-11-10 22:42:41,868 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2024-11-10 22:42:41,869 INFO L87 Difference]: Start difference. First operand 29 states and 38 transitions. cyclomatic complexity: 14 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-10 22:42:41,930 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-10 22:42:41,930 INFO L93 Difference]: Finished difference Result 41 states and 50 transitions. [2024-11-10 22:42:41,931 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 41 states and 50 transitions. [2024-11-10 22:42:41,932 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 14 [2024-11-10 22:42:41,933 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 41 states to 41 states and 50 transitions. [2024-11-10 22:42:41,933 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 37 [2024-11-10 22:42:41,933 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 37 [2024-11-10 22:42:41,934 INFO L73 IsDeterministic]: Start isDeterministic. Operand 41 states and 50 transitions. [2024-11-10 22:42:41,934 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-10 22:42:41,934 INFO L218 hiAutomatonCegarLoop]: Abstraction has 41 states and 50 transitions. [2024-11-10 22:42:41,934 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 41 states and 50 transitions. [2024-11-10 22:42:41,936 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 41 to 38. [2024-11-10 22:42:41,936 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 38 states, 38 states have (on average 1.236842105263158) internal successors, (47), 37 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-10 22:42:41,937 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 47 transitions. [2024-11-10 22:42:41,937 INFO L240 hiAutomatonCegarLoop]: Abstraction has 38 states and 47 transitions. [2024-11-10 22:42:41,938 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-11-10 22:42:41,939 INFO L425 stractBuchiCegarLoop]: Abstraction has 38 states and 47 transitions. [2024-11-10 22:42:41,939 INFO L332 stractBuchiCegarLoop]: ======== Iteration 5 ============ [2024-11-10 22:42:41,939 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 38 states and 47 transitions. [2024-11-10 22:42:41,940 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 14 [2024-11-10 22:42:41,940 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-10 22:42:41,940 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-10 22:42:41,940 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [3, 2, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-10 22:42:41,941 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-10 22:42:41,941 INFO L745 eck$LassoCheckResult]: Stem: 443#ULTIMATE.startENTRY 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; 444#ULTIMATE.init_returnLabel#1 assume true;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; 431#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; 432#L18 assume true; 446#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 447#L18 assume true; 455#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 459#L18 assume true; 445#L18-1 assume !(init_nondet_~i~0#1 < ~N~0); 433#init_nondet_returnLabel#1 assume true;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; 434#L29-6 assume true; 453#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 427#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 428#L29-7 [2024-11-10 22:42:41,941 INFO L747 eck$LassoCheckResult]: Loop: 428#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 457#L29-6 assume true; 462#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 463#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; 428#L29-7 [2024-11-10 22:42:41,941 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:41,942 INFO L85 PathProgramCache]: Analyzing trace with hash -1228212046, now seen corresponding path program 1 times [2024-11-10 22:42:41,942 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:41,942 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [907803386] [2024-11-10 22:42:41,942 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:41,942 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:41,955 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:41,955 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:42:41,963 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:41,969 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:42:41,970 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:41,970 INFO L85 PathProgramCache]: Analyzing trace with hash 2313731, now seen corresponding path program 4 times [2024-11-10 22:42:41,970 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:41,970 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1880144281] [2024-11-10 22:42:41,970 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:41,971 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:41,979 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:41,979 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:42:41,982 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:41,987 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:42:41,987 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:41,987 INFO L85 PathProgramCache]: Analyzing trace with hash -227506636, now seen corresponding path program 1 times [2024-11-10 22:42:41,987 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:41,988 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [400281325] [2024-11-10 22:42:41,988 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:41,988 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:42,005 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:42:42,081 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2024-11-10 22:42:42,081 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-10 22:42:42,082 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [400281325] [2024-11-10 22:42:42,082 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [400281325] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-10 22:42:42,082 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2084103797] [2024-11-10 22:42:42,082 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:42,082 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-10 22:42:42,082 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:42,084 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-10 22:42:42,085 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Waiting until timeout for monitored process [2024-11-10 22:42:42,142 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:42:42,144 INFO L255 TraceCheckSpWp]: Trace formula consists of 99 conjuncts, 4 conjuncts are in the unsatisfiable core [2024-11-10 22:42:42,145 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-10 22:42:42,194 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2024-11-10 22:42:42,194 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-10 22:42:42,402 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2024-11-10 22:42:42,403 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2084103797] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-10 22:42:42,403 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-10 22:42:42,403 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4, 4] total 8 [2024-11-10 22:42:42,403 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1962011674] [2024-11-10 22:42:42,403 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-10 22:42:42,508 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-10 22:42:42,508 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2024-11-10 22:42:42,508 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=32, Invalid=40, Unknown=0, NotChecked=0, Total=72 [2024-11-10 22:42:42,508 INFO L87 Difference]: Start difference. First operand 38 states and 47 transitions. cyclomatic complexity: 14 Second operand has 9 states, 8 states have (on average 3.75) internal successors, (30), 9 states have internal predecessors, (30), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:42:42,621 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-10 22:42:42,622 INFO L93 Difference]: Finished difference Result 56 states and 65 transitions. [2024-11-10 22:42:42,622 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 56 states and 65 transitions. [2024-11-10 22:42:42,623 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 17 [2024-11-10 22:42:42,626 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 56 states to 56 states and 65 transitions. [2024-11-10 22:42:42,626 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 52 [2024-11-10 22:42:42,626 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 52 [2024-11-10 22:42:42,626 INFO L73 IsDeterministic]: Start isDeterministic. Operand 56 states and 65 transitions. [2024-11-10 22:42:42,626 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-10 22:42:42,626 INFO L218 hiAutomatonCegarLoop]: Abstraction has 56 states and 65 transitions. [2024-11-10 22:42:42,627 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 56 states and 65 transitions. [2024-11-10 22:42:42,630 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 56 to 50. [2024-11-10 22:42:42,631 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 50 states, 50 states have (on average 1.18) internal successors, (59), 49 states have internal predecessors, (59), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:42:42,631 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 59 transitions. [2024-11-10 22:42:42,631 INFO L240 hiAutomatonCegarLoop]: Abstraction has 50 states and 59 transitions. [2024-11-10 22:42:42,633 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-11-10 22:42:42,634 INFO L425 stractBuchiCegarLoop]: Abstraction has 50 states and 59 transitions. [2024-11-10 22:42:42,634 INFO L332 stractBuchiCegarLoop]: ======== Iteration 6 ============ [2024-11-10 22:42:42,634 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 50 states and 59 transitions. [2024-11-10 22:42:42,635 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 14 [2024-11-10 22:42:42,635 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-10 22:42:42,636 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-10 22:42:42,636 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1] [2024-11-10 22:42:42,636 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-10 22:42:42,636 INFO L745 eck$LassoCheckResult]: Stem: 649#ULTIMATE.startENTRY 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; 650#ULTIMATE.init_returnLabel#1 assume true;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; 637#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; 638#L18 assume true; 664#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 665#L18 assume true; 652#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 653#L18 assume true; 651#L18-1 assume !(init_nondet_~i~0#1 < ~N~0); 639#init_nondet_returnLabel#1 assume true;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; 640#L29-6 assume true; 677#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 676#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 668#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 660#L29-6 assume true; 661#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 633#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 634#L29-7 [2024-11-10 22:42:42,637 INFO L747 eck$LassoCheckResult]: Loop: 634#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 674#L29-6 assume true; 672#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 673#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; 634#L29-7 [2024-11-10 22:42:42,637 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:42,637 INFO L85 PathProgramCache]: Analyzing trace with hash -227506635, now seen corresponding path program 1 times [2024-11-10 22:42:42,638 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:42,638 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1672570765] [2024-11-10 22:42:42,638 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:42,638 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:42,656 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:42,658 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:42:42,668 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:42,674 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:42:42,676 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:42,676 INFO L85 PathProgramCache]: Analyzing trace with hash 2313731, now seen corresponding path program 5 times [2024-11-10 22:42:42,676 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:42,676 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1817671031] [2024-11-10 22:42:42,676 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:42,677 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:42,682 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:42,683 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:42:42,686 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:42,688 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:42:42,688 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:42,688 INFO L85 PathProgramCache]: Analyzing trace with hash -1648518601, now seen corresponding path program 2 times [2024-11-10 22:42:42,688 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:42,688 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [939748829] [2024-11-10 22:42:42,688 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:42,688 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:42,701 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:42:42,798 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 4 proven. 12 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-10 22:42:42,798 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-10 22:42:42,798 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [939748829] [2024-11-10 22:42:42,798 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [939748829] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-10 22:42:42,798 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [848860683] [2024-11-10 22:42:42,799 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-10 22:42:42,799 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-10 22:42:42,799 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:42,801 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-10 22:42:42,802 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Waiting until timeout for monitored process [2024-11-10 22:42:42,870 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-10 22:42:42,871 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-10 22:42:42,873 INFO L255 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjuncts are in the unsatisfiable core [2024-11-10 22:42:42,874 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-10 22:42:42,955 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 10 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-10 22:42:42,955 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-10 22:42:43,019 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 10 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-10 22:42:43,019 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [848860683] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-10 22:42:43,020 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-10 22:42:43,020 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9, 9] total 14 [2024-11-10 22:42:43,020 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1780890481] [2024-11-10 22:42:43,020 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-10 22:42:43,101 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-10 22:42:43,101 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2024-11-10 22:42:43,102 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=49, Invalid=133, Unknown=0, NotChecked=0, Total=182 [2024-11-10 22:42:43,102 INFO L87 Difference]: Start difference. First operand 50 states and 59 transitions. cyclomatic complexity: 14 Second operand has 14 states, 14 states have (on average 2.857142857142857) internal successors, (40), 14 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-10 22:42:43,261 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-10 22:42:43,261 INFO L93 Difference]: Finished difference Result 92 states and 104 transitions. [2024-11-10 22:42:43,261 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 92 states and 104 transitions. [2024-11-10 22:42:43,262 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 16 [2024-11-10 22:42:43,263 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 92 states to 81 states and 93 transitions. [2024-11-10 22:42:43,263 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 74 [2024-11-10 22:42:43,263 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 74 [2024-11-10 22:42:43,263 INFO L73 IsDeterministic]: Start isDeterministic. Operand 81 states and 93 transitions. [2024-11-10 22:42:43,263 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-10 22:42:43,263 INFO L218 hiAutomatonCegarLoop]: Abstraction has 81 states and 93 transitions. [2024-11-10 22:42:43,264 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 81 states and 93 transitions. [2024-11-10 22:42:43,269 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 81 to 80. [2024-11-10 22:42:43,269 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 80 states, 80 states have (on average 1.15) internal successors, (92), 79 states have internal predecessors, (92), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:42:43,272 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 80 states to 80 states and 92 transitions. [2024-11-10 22:42:43,272 INFO L240 hiAutomatonCegarLoop]: Abstraction has 80 states and 92 transitions. [2024-11-10 22:42:43,272 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2024-11-10 22:42:43,274 INFO L425 stractBuchiCegarLoop]: Abstraction has 80 states and 92 transitions. [2024-11-10 22:42:43,274 INFO L332 stractBuchiCegarLoop]: ======== Iteration 7 ============ [2024-11-10 22:42:43,274 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 80 states and 92 transitions. [2024-11-10 22:42:43,275 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 16 [2024-11-10 22:42:43,275 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-10 22:42:43,275 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-10 22:42:43,275 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [4, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1] [2024-11-10 22:42:43,275 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-10 22:42:43,275 INFO L745 eck$LassoCheckResult]: Stem: 930#ULTIMATE.startENTRY 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; 931#ULTIMATE.init_returnLabel#1 assume true;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; 918#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; 919#L18 assume true; 934#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 935#L18 assume true; 947#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 988#L18 assume true; 986#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 984#L18 assume true; 985#L18-1 assume !(init_nondet_~i~0#1 < ~N~0); 920#init_nondet_returnLabel#1 assume true;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; 921#L29-6 assume true; 943#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 914#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 915#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 951#L29-6 assume true; 979#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 977#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 975#L29-7 [2024-11-10 22:42:43,276 INFO L747 eck$LassoCheckResult]: Loop: 975#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 973#L29-6 assume true; 970#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 971#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; 975#L29-7 [2024-11-10 22:42:43,276 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:43,276 INFO L85 PathProgramCache]: Analyzing trace with hash 900708436, now seen corresponding path program 2 times [2024-11-10 22:42:43,277 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:43,277 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [960234663] [2024-11-10 22:42:43,277 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:43,277 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:43,292 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:43,292 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:42:43,299 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:43,307 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:42:43,307 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:43,307 INFO L85 PathProgramCache]: Analyzing trace with hash 2313731, now seen corresponding path program 6 times [2024-11-10 22:42:43,307 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:43,307 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [974378371] [2024-11-10 22:42:43,307 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:43,308 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:43,312 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:43,312 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:42:43,315 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:43,317 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:42:43,317 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:43,317 INFO L85 PathProgramCache]: Analyzing trace with hash -339172138, now seen corresponding path program 3 times [2024-11-10 22:42:43,319 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:43,319 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [941138235] [2024-11-10 22:42:43,319 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:43,319 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:43,331 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:43,331 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:42:43,342 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:43,348 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:42:43,951 INFO L204 LassoAnalysis]: Preferences: [2024-11-10 22:42:43,951 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-10 22:42:43,951 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-10 22:42:43,951 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-10 22:42:43,951 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-10 22:42:43,951 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:43,951 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-10 22:42:43,951 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-10 22:42:43,951 INFO L132 ssoRankerPreferences]: Filename of dumped script: rangesum.i_Iteration7_Lasso [2024-11-10 22:42:43,951 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-10 22:42:43,951 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-10 22:42:43,954 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:43,959 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:43,961 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:43,967 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:43,969 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:43,971 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:43,973 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:43,975 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:43,976 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:43,978 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:43,980 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:43,981 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:43,983 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:43,985 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:43,987 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:43,988 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:43,990 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:43,994 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:44,004 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:44,006 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:44,008 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:44,011 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:44,013 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:44,015 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:44,242 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:44,245 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:44,246 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:44,248 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:44,565 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-10 22:42:44,565 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-10 22:42:44,565 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:44,565 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:44,571 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-10 22:42:44,573 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-10 22:42:44,575 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-10 22:42:44,586 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:44,586 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:44,586 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:44,586 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:44,586 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:44,586 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:44,587 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:44,588 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:44,598 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (16)] Forceful destruction successful, exit code 0 [2024-11-10 22:42:44,598 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:44,598 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:44,599 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-10 22:42:44,600 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-10 22:42:44,601 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-10 22:42:44,611 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:44,611 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:44,611 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:44,611 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:44,611 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:44,612 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:44,612 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:44,613 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:44,623 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-10 22:42:44,623 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:44,623 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:44,624 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-10 22:42:44,625 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-10 22:42:44,626 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-10 22:42:44,636 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:44,636 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:44,636 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:44,636 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:44,636 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:44,638 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:44,638 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:44,639 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:44,648 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (18)] Forceful destruction successful, exit code 0 [2024-11-10 22:42:44,649 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:44,649 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:44,650 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-10 22:42:44,651 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-10 22:42:44,652 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-10 22:42:44,661 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:44,661 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:44,662 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:44,662 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:44,662 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:44,662 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:44,662 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:44,663 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:44,673 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (19)] Forceful destruction successful, exit code 0 [2024-11-10 22:42:44,673 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:44,674 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:44,675 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-10 22:42:44,676 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-10 22:42:44,677 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-10 22:42:44,687 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:44,687 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:44,687 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:44,687 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:44,687 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:44,688 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:44,688 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:44,689 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:44,699 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (20)] Ended with exit code 0 [2024-11-10 22:42:44,699 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:44,700 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:44,700 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-10 22:42:44,701 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-10 22:42:44,702 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-10 22:42:44,714 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:44,714 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:44,714 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:44,714 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:44,714 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:44,714 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:44,715 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:44,715 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:44,725 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (21)] Ended with exit code 0 [2024-11-10 22:42:44,726 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:44,726 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:44,727 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-10 22:42:44,727 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-10 22:42:44,728 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-10 22:42:44,738 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:44,738 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:44,738 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:44,738 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:44,738 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:44,738 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:44,739 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:44,740 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:44,751 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (22)] Forceful destruction successful, exit code 0 [2024-11-10 22:42:44,752 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:44,752 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:44,753 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-10 22:42:44,754 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-10 22:42:44,755 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-10 22:42:44,764 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:44,765 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:44,765 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:44,765 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:44,765 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:44,765 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:44,765 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:44,767 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:44,777 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (23)] Forceful destruction successful, exit code 0 [2024-11-10 22:42:44,777 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:44,777 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:44,778 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-10 22:42:44,780 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-10 22:42:44,780 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-10 22:42:44,790 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:44,790 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:44,791 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:44,791 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:44,791 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:44,791 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:44,791 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:44,792 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:44,802 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (24)] Ended with exit code 0 [2024-11-10 22:42:44,803 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:44,803 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:44,804 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-10 22:42:44,805 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-10 22:42:44,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-10 22:42:44,816 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:44,816 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:44,816 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:44,816 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:44,816 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:44,817 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:44,817 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:44,818 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:44,828 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (25)] Ended with exit code 0 [2024-11-10 22:42:44,828 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:44,828 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:44,829 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-10 22:42:44,830 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-10 22:42:44,831 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-10 22:42:44,840 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:44,841 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:44,841 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:44,841 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:44,841 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:44,841 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:44,841 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:44,842 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:44,852 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-10 22:42:44,852 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:44,852 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:44,853 INFO L229 MonitoredProcess]: Starting monitored process 27 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-10 22:42:44,854 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (27)] Waiting until timeout for monitored process [2024-11-10 22:42:44,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-10 22:42:44,864 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:44,864 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:44,864 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:44,864 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:44,864 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:44,864 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:44,864 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:44,865 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:44,875 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (27)] Forceful destruction successful, exit code 0 [2024-11-10 22:42:44,875 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:44,875 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:44,876 INFO L229 MonitoredProcess]: Starting monitored process 28 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-10 22:42:44,877 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (28)] Waiting until timeout for monitored process [2024-11-10 22:42:44,878 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-10 22:42:44,887 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:44,888 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:44,888 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:44,888 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:44,888 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:44,888 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:44,888 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:44,889 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:44,899 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (28)] Forceful destruction successful, exit code 0 [2024-11-10 22:42:44,899 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:44,899 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:44,900 INFO L229 MonitoredProcess]: Starting monitored process 29 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-10 22:42:44,901 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (29)] Waiting until timeout for monitored process [2024-11-10 22:42:44,902 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-10 22:42:44,914 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:44,914 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:44,914 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:44,914 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:44,914 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:44,914 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:44,914 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:44,916 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:44,927 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (29)] Forceful destruction successful, exit code 0 [2024-11-10 22:42:44,928 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:44,928 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:44,929 INFO L229 MonitoredProcess]: Starting monitored process 30 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-10 22:42:44,930 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (30)] Waiting until timeout for monitored process [2024-11-10 22:42:44,930 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-10 22:42:44,940 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:44,940 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:44,940 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:44,940 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:44,940 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:44,941 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:44,941 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:44,942 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:44,952 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (30)] Forceful destruction successful, exit code 0 [2024-11-10 22:42:44,952 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:44,952 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:44,953 INFO L229 MonitoredProcess]: Starting monitored process 31 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-10 22:42:44,955 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (31)] Waiting until timeout for monitored process [2024-11-10 22:42:44,955 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-10 22:42:44,966 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:44,967 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:44,967 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:44,967 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:44,967 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:44,967 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:44,967 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:44,968 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:44,978 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (31)] Forceful destruction successful, exit code 0 [2024-11-10 22:42:44,979 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:44,979 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:44,980 INFO L229 MonitoredProcess]: Starting monitored process 32 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-10 22:42:44,981 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (32)] Waiting until timeout for monitored process [2024-11-10 22:42:44,981 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-10 22:42:44,991 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:44,991 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:44,991 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:44,991 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:44,991 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:44,991 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:44,991 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:44,992 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:45,002 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (32)] Forceful destruction successful, exit code 0 [2024-11-10 22:42:45,002 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:45,002 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:45,003 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-10 22:42:45,018 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-10 22:42:45,019 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-10 22:42:45,029 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:45,030 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:45,030 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:45,030 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:45,031 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-10 22:42:45,031 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-10 22:42:45,034 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:45,045 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-10 22:42:45,045 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:45,045 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:45,046 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-10 22:42:45,048 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-10 22:42:45,050 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-10 22:42:45,062 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:45,062 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:45,062 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:45,062 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:45,065 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-10 22:42:45,065 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-10 22:42:45,068 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:45,082 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-10 22:42:45,082 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:45,083 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:45,084 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-10 22:42:45,086 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-10 22:42:45,087 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-10 22:42:45,099 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:45,099 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:45,099 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:45,099 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:45,099 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:45,100 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:45,100 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:45,104 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:45,118 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-10 22:42:45,118 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:45,119 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:45,120 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-10 22:42:45,121 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-10 22:42:45,122 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-10 22:42:45,133 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:45,133 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:45,133 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:45,133 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:45,133 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:45,134 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:45,134 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:45,135 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:45,145 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (36)] Forceful destruction successful, exit code 0 [2024-11-10 22:42:45,145 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:45,145 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:45,147 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-10 22:42:45,149 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-10 22:42:45,149 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-10 22:42:45,161 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:45,162 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:45,162 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:45,162 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:45,163 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-10 22:42:45,163 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-10 22:42:45,167 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:45,176 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-10 22:42:45,177 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:45,177 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:45,178 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-10 22:42:45,179 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-10 22:42:45,179 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-10 22:42:45,189 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:45,189 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:45,189 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:45,189 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:45,189 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:45,189 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:45,189 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:45,190 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:45,200 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-10 22:42:45,201 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:45,201 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:45,202 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-10 22:42:45,203 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-10 22:42:45,205 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-10 22:42:45,215 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:45,215 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:45,215 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:45,216 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:45,216 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:45,216 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:45,216 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:45,217 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:45,229 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-10 22:42:45,230 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:45,230 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:45,231 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-10 22:42:45,232 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-10 22:42:45,232 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-10 22:42:45,242 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:45,242 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:45,242 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:45,242 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:45,243 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-10 22:42:45,243 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-10 22:42:45,246 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:45,256 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-10 22:42:45,256 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:45,256 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:45,257 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-10 22:42:45,258 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-10 22:42:45,258 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-10 22:42:45,268 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:45,268 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:45,268 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:45,268 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:45,270 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-10 22:42:45,270 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-10 22:42:45,273 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:45,287 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (41)] Forceful destruction successful, exit code 0 [2024-11-10 22:42:45,288 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:45,288 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:45,289 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-10 22:42:45,291 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-10 22:42:45,292 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-10 22:42:45,304 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:45,305 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:45,305 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:45,305 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:45,307 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-10 22:42:45,307 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-10 22:42:45,312 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:45,326 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (42)] Ended with exit code 0 [2024-11-10 22:42:45,326 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:45,326 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:45,328 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-10 22:42:45,329 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-10 22:42:45,330 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-10 22:42:45,342 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:45,342 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:45,342 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:45,342 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:45,344 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-10 22:42:45,344 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-10 22:42:45,350 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:45,364 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (43)] Ended with exit code 0 [2024-11-10 22:42:45,364 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:45,365 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:45,366 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-10 22:42:45,368 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-10 22:42:45,369 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-10 22:42:45,381 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:45,381 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:45,382 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:45,382 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:45,384 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-10 22:42:45,384 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-10 22:42:45,389 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:45,403 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-10 22:42:45,403 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:45,403 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:45,405 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-10 22:42:45,406 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-10 22:42:45,406 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-10 22:42:45,416 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:45,416 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:45,416 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:45,416 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:45,417 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-10 22:42:45,417 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-10 22:42:45,419 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:45,429 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-10 22:42:45,429 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:45,429 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:45,430 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-10 22:42:45,431 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-10 22:42:45,432 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-10 22:42:45,441 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:45,442 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:45,442 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:45,442 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:45,443 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-10 22:42:45,443 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-10 22:42:45,446 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:45,455 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-10 22:42:45,455 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:45,456 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:45,457 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-10 22:42:45,458 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-10 22:42:45,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-10 22:42:45,467 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:45,467 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:45,468 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:45,468 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:45,468 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:45,468 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:45,468 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:45,469 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:45,479 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (47)] Ended with exit code 0 [2024-11-10 22:42:45,480 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:45,480 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:45,481 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-10 22:42:45,482 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-10 22:42:45,482 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-10 22:42:45,492 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:45,492 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:45,493 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:45,493 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:45,495 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-10 22:42:45,495 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-10 22:42:45,501 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:45,512 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (48)] Ended with exit code 0 [2024-11-10 22:42:45,513 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:45,513 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:45,514 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-10 22:42:45,515 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-10 22:42:45,515 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-10 22:42:45,525 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:45,525 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:45,525 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:45,525 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:45,525 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:45,526 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:45,526 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:45,527 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:45,537 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (49)] Ended with exit code 0 [2024-11-10 22:42:45,537 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:45,537 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:45,538 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-10 22:42:45,539 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-10 22:42:45,539 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-10 22:42:45,549 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:45,549 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:45,550 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:45,550 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:45,554 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-10 22:42:45,554 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-10 22:42:45,567 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-10 22:42:45,600 INFO L443 ModelExtractionUtils]: Simplification made 16 calls to the SMT solver. [2024-11-10 22:42:45,600 INFO L444 ModelExtractionUtils]: 6 out of 22 variables were initially zero. Simplification set additionally 13 variables to zero. [2024-11-10 22:42:45,600 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:45,600 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:45,603 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-10 22:42:45,604 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-10 22:42:45,605 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-10 22:42:45,618 INFO L438 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2024-11-10 22:42:45,619 INFO L474 LassoAnalysis]: Proved termination. [2024-11-10 22:42:45,619 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-10 22:42:45,633 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-10 22:42:45,650 INFO L156 tatePredicateManager]: 8 out of 8 supporting invariants were superfluous and have been removed [2024-11-10 22:42:45,663 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:45,690 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:42:45,691 INFO L255 TraceCheckSpWp]: Trace formula consists of 103 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-11-10 22:42:45,692 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-10 22:42:45,723 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:42:45,724 INFO L255 TraceCheckSpWp]: Trace formula consists of 15 conjuncts, 4 conjuncts are in the unsatisfiable core [2024-11-10 22:42:45,724 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-10 22:42:45,749 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-10 22:42:45,750 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-10 22:42:45,750 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 80 states and 92 transitions. cyclomatic complexity: 18 Second operand has 4 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:42:45,774 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 80 states and 92 transitions. cyclomatic complexity: 18. Second operand has 4 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Result 90 states and 104 transitions. Complement of second has 7 states. [2024-11-10 22:42:45,776 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-10 22:42:45,777 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:42:45,777 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 16 transitions. [2024-11-10 22:42:45,777 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 16 transitions. Stem has 19 letters. Loop has 4 letters. [2024-11-10 22:42:45,777 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-10 22:42:45,777 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 16 transitions. Stem has 23 letters. Loop has 4 letters. [2024-11-10 22:42:45,777 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-10 22:42:45,777 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 16 transitions. Stem has 19 letters. Loop has 8 letters. [2024-11-10 22:42:45,778 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-10 22:42:45,778 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 90 states and 104 transitions. [2024-11-10 22:42:45,779 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 12 [2024-11-10 22:42:45,780 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 90 states to 83 states and 97 transitions. [2024-11-10 22:42:45,780 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 65 [2024-11-10 22:42:45,783 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 70 [2024-11-10 22:42:45,783 INFO L73 IsDeterministic]: Start isDeterministic. Operand 83 states and 97 transitions. [2024-11-10 22:42:45,783 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-10 22:42:45,783 INFO L218 hiAutomatonCegarLoop]: Abstraction has 83 states and 97 transitions. [2024-11-10 22:42:45,784 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 83 states and 97 transitions. [2024-11-10 22:42:45,786 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 83 to 83. [2024-11-10 22:42:45,787 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 83 states, 83 states have (on average 1.1686746987951808) internal successors, (97), 82 states have internal predecessors, (97), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:42:45,789 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 83 states to 83 states and 97 transitions. [2024-11-10 22:42:45,790 INFO L240 hiAutomatonCegarLoop]: Abstraction has 83 states and 97 transitions. [2024-11-10 22:42:45,790 INFO L425 stractBuchiCegarLoop]: Abstraction has 83 states and 97 transitions. [2024-11-10 22:42:45,790 INFO L332 stractBuchiCegarLoop]: ======== Iteration 8 ============ [2024-11-10 22:42:45,790 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 83 states and 97 transitions. [2024-11-10 22:42:45,791 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 12 [2024-11-10 22:42:45,791 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-10 22:42:45,791 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-10 22:42:45,791 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [4, 3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-10 22:42:45,792 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-10 22:42:45,792 INFO L745 eck$LassoCheckResult]: Stem: 1228#ULTIMATE.startENTRY 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; 1229#ULTIMATE.init_returnLabel#1 assume true;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; 1216#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; 1217#L18 assume true; 1231#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 1232#L18 assume true; 1242#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 1291#L18 assume true; 1290#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 1289#L18 assume true; 1288#L18-1 assume !(init_nondet_~i~0#1 < ~N~0); 1286#init_nondet_returnLabel#1 assume true;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; 1284#L29-6 assume true; 1282#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 1280#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 1278#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1239#L29-6 assume true; 1240#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 1211#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 1213#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1275#L29-6 assume true; 1274#L29-8 assume !(rangesum_~i~1#1 < ~N~0); 1272#L35-2 assume !(0 != rangesum_~cnt~0#1);rangesum_#res#1 := 0; 1270#L38-2 assume true;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; 1267#L29-3 assume true; 1266#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 1265#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 1264#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1263#L29-3 assume true; 1261#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 1259#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 1257#L29-4 [2024-11-10 22:42:45,792 INFO L747 eck$LassoCheckResult]: Loop: 1257#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1255#L29-3 assume true; 1252#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 1253#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 1257#L29-4 [2024-11-10 22:42:45,793 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:45,793 INFO L85 PathProgramCache]: Analyzing trace with hash -1513945260, now seen corresponding path program 1 times [2024-11-10 22:42:45,793 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:45,793 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1879680318] [2024-11-10 22:42:45,793 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:45,793 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:45,815 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:42:45,929 INFO L134 CoverageAnalysis]: Checked inductivity of 23 backedges. 2 proven. 18 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2024-11-10 22:42:45,930 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-10 22:42:45,930 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1879680318] [2024-11-10 22:42:45,930 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1879680318] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-10 22:42:45,930 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [249593322] [2024-11-10 22:42:45,930 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:45,930 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-10 22:42:45,930 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:45,932 INFO L229 MonitoredProcess]: Starting monitored process 52 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-10 22:42:45,933 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (52)] Waiting until timeout for monitored process [2024-11-10 22:42:45,999 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:42:46,000 INFO L255 TraceCheckSpWp]: Trace formula consists of 149 conjuncts, 8 conjuncts are in the unsatisfiable core [2024-11-10 22:42:46,001 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-10 22:42:46,081 INFO L134 CoverageAnalysis]: Checked inductivity of 23 backedges. 6 proven. 14 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2024-11-10 22:42:46,081 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-10 22:42:46,139 INFO L134 CoverageAnalysis]: Checked inductivity of 23 backedges. 6 proven. 14 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2024-11-10 22:42:46,140 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [249593322] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-10 22:42:46,140 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-10 22:42:46,140 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9, 9] total 14 [2024-11-10 22:42:46,140 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [214600983] [2024-11-10 22:42:46,140 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-10 22:42:46,140 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-10 22:42:46,141 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:46,141 INFO L85 PathProgramCache]: Analyzing trace with hash 1944323, now seen corresponding path program 1 times [2024-11-10 22:42:46,141 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:46,141 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [493279788] [2024-11-10 22:42:46,141 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:46,141 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:46,145 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:46,145 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:42:46,146 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:46,147 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:42:46,215 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-10 22:42:46,216 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2024-11-10 22:42:46,216 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=51, Invalid=131, Unknown=0, NotChecked=0, Total=182 [2024-11-10 22:42:46,216 INFO L87 Difference]: Start difference. First operand 83 states and 97 transitions. cyclomatic complexity: 20 Second operand has 14 states, 14 states have (on average 3.357142857142857) internal successors, (47), 14 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-10 22:42:46,414 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-10 22:42:46,490 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-10 22:42:46,490 INFO L93 Difference]: Finished difference Result 119 states and 136 transitions. [2024-11-10 22:42:46,491 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 119 states and 136 transitions. [2024-11-10 22:42:46,492 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 18 [2024-11-10 22:42:46,495 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 119 states to 112 states and 128 transitions. [2024-11-10 22:42:46,495 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 89 [2024-11-10 22:42:46,495 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 89 [2024-11-10 22:42:46,496 INFO L73 IsDeterministic]: Start isDeterministic. Operand 112 states and 128 transitions. [2024-11-10 22:42:46,496 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-10 22:42:46,496 INFO L218 hiAutomatonCegarLoop]: Abstraction has 112 states and 128 transitions. [2024-11-10 22:42:46,496 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 112 states and 128 transitions. [2024-11-10 22:42:46,501 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 112 to 86. [2024-11-10 22:42:46,502 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 86 states, 86 states have (on average 1.1395348837209303) internal successors, (98), 85 states have internal predecessors, (98), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:42:46,504 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 86 states to 86 states and 98 transitions. [2024-11-10 22:42:46,504 INFO L240 hiAutomatonCegarLoop]: Abstraction has 86 states and 98 transitions. [2024-11-10 22:42:46,505 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2024-11-10 22:42:46,506 INFO L425 stractBuchiCegarLoop]: Abstraction has 86 states and 98 transitions. [2024-11-10 22:42:46,506 INFO L332 stractBuchiCegarLoop]: ======== Iteration 9 ============ [2024-11-10 22:42:46,506 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 86 states and 98 transitions. [2024-11-10 22:42:46,507 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 15 [2024-11-10 22:42:46,507 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-10 22:42:46,507 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-10 22:42:46,507 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-10 22:42:46,507 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2024-11-10 22:42:46,508 INFO L745 eck$LassoCheckResult]: Stem: 1635#ULTIMATE.startENTRY 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; 1636#ULTIMATE.init_returnLabel#1 assume true;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; 1622#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; 1623#L18 assume true; 1638#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 1639#L18 assume true; 1655#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 1685#L18 assume true; 1687#L18-1 assume !(init_nondet_~i~0#1 < ~N~0); 1695#init_nondet_returnLabel#1 assume true;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; 1644#L29-6 assume true; 1645#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 1616#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 1617#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1658#L29-6 assume true; 1692#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 1689#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 1688#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1680#L29-6 assume true; 1681#L29-8 assume !(rangesum_~i~1#1 < ~N~0); 1630#L35-2 assume !(0 != rangesum_~cnt~0#1);rangesum_#res#1 := 0; 1631#L38-2 assume true;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; 1676#L29-3 assume true; 1675#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 1674#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 1673#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1672#L29-3 assume true; 1670#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 1668#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 1665#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1664#L29-3 assume true; 1663#L29-5 assume !(rangesum_~i~1#1 < ~N~0); 1662#L35-1 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); 1661#L38-1 assume true;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; 1632#L57-1 [2024-11-10 22:42:46,508 INFO L747 eck$LassoCheckResult]: Loop: 1632#L57-1 assume true; 1633#L57-2 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;main_#t~post12#1 := main_~i~2#1;main_~i~2#1 := 1 + main_#t~post12#1;havoc main_#t~post12#1; 1632#L57-1 [2024-11-10 22:42:46,508 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:46,509 INFO L85 PathProgramCache]: Analyzing trace with hash -254945784, now seen corresponding path program 1 times [2024-11-10 22:42:46,509 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:46,509 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [595743162] [2024-11-10 22:42:46,509 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:46,509 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:46,527 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:42:46,564 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2024-11-10 22:42:46,564 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-10 22:42:46,564 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [595743162] [2024-11-10 22:42:46,564 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [595743162] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-10 22:42:46,564 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-10 22:42:46,565 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-11-10 22:42:46,565 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1820808495] [2024-11-10 22:42:46,565 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-10 22:42:46,565 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-10 22:42:46,565 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:46,565 INFO L85 PathProgramCache]: Analyzing trace with hash 1792, now seen corresponding path program 1 times [2024-11-10 22:42:46,566 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:46,566 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1567263577] [2024-11-10 22:42:46,566 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:46,566 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:46,569 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:46,570 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:42:46,571 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:46,572 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:42:46,628 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-10 22:42:46,629 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-11-10 22:42:46,629 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-11-10 22:42:46,629 INFO L87 Difference]: Start difference. First operand 86 states and 98 transitions. cyclomatic complexity: 18 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-10 22:42:46,653 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-10 22:42:46,653 INFO L93 Difference]: Finished difference Result 98 states and 112 transitions. [2024-11-10 22:42:46,653 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 98 states and 112 transitions. [2024-11-10 22:42:46,654 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 23 [2024-11-10 22:42:46,655 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 98 states to 98 states and 112 transitions. [2024-11-10 22:42:46,655 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 81 [2024-11-10 22:42:46,655 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 81 [2024-11-10 22:42:46,655 INFO L73 IsDeterministic]: Start isDeterministic. Operand 98 states and 112 transitions. [2024-11-10 22:42:46,655 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-10 22:42:46,655 INFO L218 hiAutomatonCegarLoop]: Abstraction has 98 states and 112 transitions. [2024-11-10 22:42:46,656 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 98 states and 112 transitions. [2024-11-10 22:42:46,660 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 98 to 86. [2024-11-10 22:42:46,662 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 86 states, 86 states have (on average 1.1162790697674418) internal successors, (96), 85 states have internal predecessors, (96), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:42:46,662 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 86 states to 86 states and 96 transitions. [2024-11-10 22:42:46,663 INFO L240 hiAutomatonCegarLoop]: Abstraction has 86 states and 96 transitions. [2024-11-10 22:42:46,665 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-11-10 22:42:46,666 INFO L425 stractBuchiCegarLoop]: Abstraction has 86 states and 96 transitions. [2024-11-10 22:42:46,666 INFO L332 stractBuchiCegarLoop]: ======== Iteration 10 ============ [2024-11-10 22:42:46,666 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 86 states and 96 transitions. [2024-11-10 22:42:46,667 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 15 [2024-11-10 22:42:46,667 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-10 22:42:46,667 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-10 22:42:46,668 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-10 22:42:46,668 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2024-11-10 22:42:46,668 INFO L745 eck$LassoCheckResult]: Stem: 1824#ULTIMATE.startENTRY 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; 1825#ULTIMATE.init_returnLabel#1 assume true;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; 1812#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; 1813#L18 assume true; 1827#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 1828#L18 assume true; 1843#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 1851#L18 assume true; 1853#L18-1 assume !(init_nondet_~i~0#1 < ~N~0); 1881#init_nondet_returnLabel#1 assume true;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; 1879#L29-6 assume true; 1877#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 1875#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 1873#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1871#L29-6 assume true; 1870#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 1868#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 1866#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1864#L29-6 assume true; 1854#L29-8 assume !(rangesum_~i~1#1 < ~N~0); 1820#L35-2 assume !(0 != rangesum_~cnt~0#1);rangesum_#res#1 := 0; 1821#L38-2 assume true;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; 1840#L29-3 assume true; 1887#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 1886#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 1831#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1832#L29-3 assume true; 1816#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 1817#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 1842#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1865#L29-3 assume true; 1848#L29-5 assume !(rangesum_~i~1#1 < ~N~0); 1818#L35-1 assume !(0 != rangesum_~cnt~0#1);rangesum_#res#1 := 0; 1819#L38-1 assume true;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; 1822#L57-1 [2024-11-10 22:42:46,668 INFO L747 eck$LassoCheckResult]: Loop: 1822#L57-1 assume true; 1823#L57-2 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;main_#t~post12#1 := main_~i~2#1;main_~i~2#1 := 1 + main_#t~post12#1;havoc main_#t~post12#1; 1822#L57-1 [2024-11-10 22:42:46,670 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:46,670 INFO L85 PathProgramCache]: Analyzing trace with hash -254945722, now seen corresponding path program 1 times [2024-11-10 22:42:46,670 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:46,670 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1182160365] [2024-11-10 22:42:46,670 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:46,670 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:46,695 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:46,695 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:42:46,704 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:46,709 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:42:46,709 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:46,709 INFO L85 PathProgramCache]: Analyzing trace with hash 1792, now seen corresponding path program 2 times [2024-11-10 22:42:46,710 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:46,710 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [928668349] [2024-11-10 22:42:46,710 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:46,710 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:46,713 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:46,713 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:42:46,714 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:46,716 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:42:46,716 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:46,716 INFO L85 PathProgramCache]: Analyzing trace with hash -189702139, now seen corresponding path program 1 times [2024-11-10 22:42:46,716 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:46,716 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1064272361] [2024-11-10 22:42:46,716 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:46,717 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:46,731 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:46,732 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:42:46,741 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:46,745 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:42:47,432 INFO L204 LassoAnalysis]: Preferences: [2024-11-10 22:42:47,433 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-10 22:42:47,433 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-10 22:42:47,433 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-10 22:42:47,433 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-10 22:42:47,433 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:47,433 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-10 22:42:47,433 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-10 22:42:47,433 INFO L132 ssoRankerPreferences]: Filename of dumped script: rangesum.i_Iteration10_Lasso [2024-11-10 22:42:47,433 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-10 22:42:47,434 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-10 22:42:47,437 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:47,439 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:47,441 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:47,443 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:47,445 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:47,448 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:47,449 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:47,451 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:47,453 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:47,455 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:47,474 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:47,476 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:47,477 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:47,479 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:47,480 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:47,481 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:47,485 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:47,487 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:47,489 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:47,495 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:47,496 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:47,498 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:47,499 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:47,502 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:47,650 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:47,653 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:47,655 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:47,656 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:47,658 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:47,660 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:47,661 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:47,664 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:47,861 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-10 22:42:47,861 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-10 22:42:47,861 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:47,862 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:47,863 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-10 22:42:47,865 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-10 22:42:47,866 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-10 22:42:47,877 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:47,877 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:47,878 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:47,878 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:47,878 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:47,878 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:47,878 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:47,879 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:47,889 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (53)] Forceful destruction successful, exit code 0 [2024-11-10 22:42:47,889 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:47,889 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:47,890 INFO L229 MonitoredProcess]: Starting monitored process 54 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-10 22:42:47,892 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (54)] Waiting until timeout for monitored process [2024-11-10 22:42:47,892 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-10 22:42:47,902 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:47,903 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:47,903 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:47,903 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:47,903 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:47,903 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:47,903 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:47,904 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:47,914 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (54)] Ended with exit code 0 [2024-11-10 22:42:47,914 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:47,914 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:47,915 INFO L229 MonitoredProcess]: Starting monitored process 55 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-10 22:42:47,916 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (55)] Waiting until timeout for monitored process [2024-11-10 22:42:47,917 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-10 22:42:47,926 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:47,926 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:47,926 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:47,927 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:47,927 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:47,927 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:47,927 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:47,928 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:47,938 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (55)] Forceful destruction successful, exit code 0 [2024-11-10 22:42:47,938 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:47,938 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:47,940 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-10 22:42:47,941 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-10 22:42:47,941 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-10 22:42:47,952 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:47,952 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:47,952 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:47,952 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:47,952 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:47,952 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:47,952 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:47,953 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:47,963 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (56)] Ended with exit code 0 [2024-11-10 22:42:47,963 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:47,963 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:47,964 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-10 22:42:47,965 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-10 22:42:47,966 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-10 22:42:47,975 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:47,975 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:47,975 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:47,975 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:47,976 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-10 22:42:47,976 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-10 22:42:47,978 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:47,988 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-10 22:42:47,988 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:47,988 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:47,989 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-10 22:42:47,990 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-10 22:42:47,990 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-10 22:42:48,000 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:48,000 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:48,000 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:48,000 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:48,000 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:48,000 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:48,000 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:48,001 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:48,015 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (58)] Forceful destruction successful, exit code 0 [2024-11-10 22:42:48,016 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:48,016 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:48,017 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-10 22:42:48,021 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-10 22:42:48,022 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-10 22:42:48,034 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:48,034 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:48,034 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:48,034 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:48,034 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:48,035 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:48,035 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:48,036 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:48,050 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-10 22:42:48,050 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:48,051 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:48,052 INFO L229 MonitoredProcess]: Starting monitored process 60 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-10 22:42:48,053 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (60)] Waiting until timeout for monitored process [2024-11-10 22:42:48,054 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-10 22:42:48,066 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:48,066 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:48,066 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:48,066 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:48,066 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:48,067 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:48,067 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:48,068 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:48,077 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (60)] Forceful destruction successful, exit code 0 [2024-11-10 22:42:48,078 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:48,078 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:48,079 INFO L229 MonitoredProcess]: Starting monitored process 61 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-10 22:42:48,079 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (61)] Waiting until timeout for monitored process [2024-11-10 22:42:48,080 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-10 22:42:48,089 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:48,090 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:48,090 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:48,090 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:48,090 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:48,090 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:48,090 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:48,092 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:48,106 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (61)] Forceful destruction successful, exit code 0 [2024-11-10 22:42:48,106 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:48,106 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:48,108 INFO L229 MonitoredProcess]: Starting monitored process 62 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-10 22:42:48,109 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (62)] Waiting until timeout for monitored process [2024-11-10 22:42:48,109 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-10 22:42:48,118 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:48,119 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:48,119 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:48,119 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:48,119 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:48,119 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:48,119 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:48,120 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:48,130 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (62)] Ended with exit code 0 [2024-11-10 22:42:48,130 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:48,131 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:48,131 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-10 22:42:48,133 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-10 22:42:48,133 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-10 22:42:48,142 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:48,143 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:48,143 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:48,143 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:48,143 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:48,143 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:48,143 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:48,144 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:48,154 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (63)] Ended with exit code 0 [2024-11-10 22:42:48,154 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:48,154 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:48,156 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-10 22:42:48,156 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-10 22:42:48,157 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-10 22:42:48,166 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:48,166 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:48,166 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:48,166 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:48,166 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:48,166 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:48,167 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:48,168 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:48,177 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (64)] Ended with exit code 0 [2024-11-10 22:42:48,177 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:48,178 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:48,178 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-10 22:42:48,179 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-10 22:42:48,180 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-10 22:42:48,189 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:48,190 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:48,190 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:48,190 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:48,190 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:48,190 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:48,190 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:48,191 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:48,201 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (65)] Ended with exit code 0 [2024-11-10 22:42:48,202 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:48,202 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:48,203 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-10 22:42:48,203 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-10 22:42:48,204 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-10 22:42:48,214 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:48,214 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:48,214 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:48,214 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:48,214 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:48,214 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:48,214 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:48,215 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:48,225 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (66)] Ended with exit code 0 [2024-11-10 22:42:48,225 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:48,225 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:48,226 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-10 22:42:48,227 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-10 22:42:48,228 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-10 22:42:48,237 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:48,237 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:48,237 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:48,237 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:48,237 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:48,238 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:48,238 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:48,239 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:48,248 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-10 22:42:48,248 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:48,249 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:48,249 INFO L229 MonitoredProcess]: Starting monitored process 68 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-10 22:42:48,250 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (68)] Waiting until timeout for monitored process [2024-11-10 22:42:48,251 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-10 22:42:48,260 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:48,260 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:48,260 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:48,260 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:48,260 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:48,261 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:48,261 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:48,262 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:48,271 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (68)] Ended with exit code 0 [2024-11-10 22:42:48,271 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:48,272 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:48,272 INFO L229 MonitoredProcess]: Starting monitored process 69 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-10 22:42:48,273 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (69)] Waiting until timeout for monitored process [2024-11-10 22:42:48,274 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-10 22:42:48,283 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:48,283 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:48,283 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:48,283 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:48,284 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-10 22:42:48,284 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-10 22:42:48,287 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:48,296 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (69)] Ended with exit code 0 [2024-11-10 22:42:48,297 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:48,297 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:48,298 INFO L229 MonitoredProcess]: Starting monitored process 70 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-10 22:42:48,298 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (70)] Waiting until timeout for monitored process [2024-11-10 22:42:48,299 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-10 22:42:48,308 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:48,309 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:48,309 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:48,309 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:48,309 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:48,309 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:48,309 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:48,310 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:48,320 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (70)] Ended with exit code 0 [2024-11-10 22:42:48,320 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:48,320 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:48,321 INFO L229 MonitoredProcess]: Starting monitored process 71 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-10 22:42:48,322 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (71)] Waiting until timeout for monitored process [2024-11-10 22:42:48,322 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-10 22:42:48,332 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:48,332 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:48,333 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:48,333 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:48,334 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-10 22:42:48,334 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-10 22:42:48,337 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:48,351 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (71)] Ended with exit code 0 [2024-11-10 22:42:48,352 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:48,352 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:48,353 INFO L229 MonitoredProcess]: Starting monitored process 72 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-10 22:42:48,354 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (72)] Waiting until timeout for monitored process [2024-11-10 22:42:48,355 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-10 22:42:48,367 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:48,367 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:48,368 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:48,368 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:48,369 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-10 22:42:48,369 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-10 22:42:48,372 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:48,386 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (72)] Ended with exit code 0 [2024-11-10 22:42:48,386 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:48,387 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:48,388 INFO L229 MonitoredProcess]: Starting monitored process 73 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-10 22:42:48,389 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (73)] Waiting until timeout for monitored process [2024-11-10 22:42:48,390 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-10 22:42:48,402 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:48,402 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:48,402 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:48,403 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:48,403 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:48,403 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:48,403 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:48,404 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:48,418 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (73)] Ended with exit code 0 [2024-11-10 22:42:48,418 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:48,419 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:48,420 INFO L229 MonitoredProcess]: Starting monitored process 74 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-10 22:42:48,421 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (74)] Waiting until timeout for monitored process [2024-11-10 22:42:48,422 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-10 22:42:48,434 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:48,434 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:48,434 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:48,434 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:48,434 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:48,435 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:48,435 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:48,436 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:48,450 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (74)] Forceful destruction successful, exit code 0 [2024-11-10 22:42:48,450 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:48,451 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:48,452 INFO L229 MonitoredProcess]: Starting monitored process 75 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-10 22:42:48,453 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (75)] Waiting until timeout for monitored process [2024-11-10 22:42:48,454 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-10 22:42:48,466 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:48,466 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:48,466 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:48,467 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:48,467 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:48,467 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:48,467 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:48,468 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:48,482 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (75)] Forceful destruction successful, exit code 0 [2024-11-10 22:42:48,482 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:48,483 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:48,484 INFO L229 MonitoredProcess]: Starting monitored process 76 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-10 22:42:48,485 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (76)] Waiting until timeout for monitored process [2024-11-10 22:42:48,486 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-10 22:42:48,498 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:48,498 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:48,498 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:48,498 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:48,498 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:48,499 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:48,499 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:48,500 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:48,514 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (76)] Forceful destruction successful, exit code 0 [2024-11-10 22:42:48,514 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:48,514 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:48,515 INFO L229 MonitoredProcess]: Starting monitored process 77 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-10 22:42:48,517 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (77)] Waiting until timeout for monitored process [2024-11-10 22:42:48,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-10 22:42:48,530 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:48,530 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:48,530 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:48,530 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:48,532 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-10 22:42:48,532 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-10 22:42:48,535 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:48,547 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (77)] Forceful destruction successful, exit code 0 [2024-11-10 22:42:48,547 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:48,547 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:48,548 INFO L229 MonitoredProcess]: Starting monitored process 78 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-10 22:42:48,549 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (78)] Waiting until timeout for monitored process [2024-11-10 22:42:48,550 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-10 22:42:48,559 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:48,559 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:48,559 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:48,559 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:48,561 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-10 22:42:48,561 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-10 22:42:48,563 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:48,573 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (78)] Ended with exit code 0 [2024-11-10 22:42:48,573 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:48,573 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:48,574 INFO L229 MonitoredProcess]: Starting monitored process 79 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-10 22:42:48,575 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (79)] Waiting until timeout for monitored process [2024-11-10 22:42:48,576 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-10 22:42:48,585 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:48,585 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:48,585 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:48,585 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:48,586 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-10 22:42:48,586 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-10 22:42:48,589 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:48,598 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (79)] Ended with exit code 0 [2024-11-10 22:42:48,599 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:48,599 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:48,600 INFO L229 MonitoredProcess]: Starting monitored process 80 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-10 22:42:48,600 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (80)] Waiting until timeout for monitored process [2024-11-10 22:42:48,601 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-10 22:42:48,610 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:48,611 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:48,611 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:48,611 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:48,612 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-10 22:42:48,612 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-10 22:42:48,614 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:48,624 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (80)] Ended with exit code 0 [2024-11-10 22:42:48,624 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:48,624 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:48,625 INFO L229 MonitoredProcess]: Starting monitored process 81 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-10 22:42:48,626 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (81)] Waiting until timeout for monitored process [2024-11-10 22:42:48,626 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-10 22:42:48,636 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:48,636 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:48,636 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:48,636 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:48,637 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-10 22:42:48,637 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-10 22:42:48,640 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:48,650 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (81)] Ended with exit code 0 [2024-11-10 22:42:48,650 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:48,650 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:48,651 INFO L229 MonitoredProcess]: Starting monitored process 82 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-10 22:42:48,652 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (82)] Waiting until timeout for monitored process [2024-11-10 22:42:48,652 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-10 22:42:48,662 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:48,662 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:48,662 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:48,662 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:48,663 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-10 22:42:48,663 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-10 22:42:48,666 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:48,675 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (82)] Ended with exit code 0 [2024-11-10 22:42:48,675 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:48,676 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:48,676 INFO L229 MonitoredProcess]: Starting monitored process 83 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-10 22:42:48,677 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (83)] Waiting until timeout for monitored process [2024-11-10 22:42:48,678 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-10 22:42:48,687 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:48,688 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:48,688 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:48,688 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:48,690 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-10 22:42:48,690 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-10 22:42:48,696 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-10 22:42:48,714 INFO L443 ModelExtractionUtils]: Simplification made 18 calls to the SMT solver. [2024-11-10 22:42:48,714 INFO L444 ModelExtractionUtils]: 0 out of 16 variables were initially zero. Simplification set additionally 13 variables to zero. [2024-11-10 22:42:48,714 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:48,715 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:48,716 INFO L229 MonitoredProcess]: Starting monitored process 84 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-10 22:42:48,716 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (84)] Waiting until timeout for monitored process [2024-11-10 22:42:48,717 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-10 22:42:48,727 INFO L438 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2024-11-10 22:42:48,727 INFO L474 LassoAnalysis]: Proved termination. [2024-11-10 22:42:48,727 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(~N~0, ULTIMATE.start_main_~i~2#1) = 1*~N~0 - 1*ULTIMATE.start_main_~i~2#1 Supporting invariants [] [2024-11-10 22:42:48,737 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (83)] Ended with exit code 0 [2024-11-10 22:42:48,744 INFO L156 tatePredicateManager]: 5 out of 5 supporting invariants were superfluous and have been removed [2024-11-10 22:42:48,753 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:48,784 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:42:48,786 INFO L255 TraceCheckSpWp]: Trace formula consists of 155 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-11-10 22:42:48,787 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-10 22:42:48,828 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:42:48,829 INFO L255 TraceCheckSpWp]: Trace formula consists of 16 conjuncts, 4 conjuncts are in the unsatisfiable core [2024-11-10 22:42:48,829 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-10 22:42:48,831 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-10 22:42:48,832 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 1 loop predicates [2024-11-10 22:42:48,832 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 86 states and 96 transitions. cyclomatic complexity: 16 Second operand has 3 states, 3 states have (on average 7.666666666666667) internal successors, (23), 3 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-10 22:42:48,845 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 86 states and 96 transitions. cyclomatic complexity: 16. Second operand has 3 states, 3 states have (on average 7.666666666666667) internal successors, (23), 3 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) Result 90 states and 102 transitions. Complement of second has 5 states. [2024-11-10 22:42:48,846 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-10 22:42:48,846 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 7.666666666666667) internal successors, (23), 3 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-10 22:42:48,847 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 27 transitions. [2024-11-10 22:42:48,847 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states and 27 transitions. Stem has 34 letters. Loop has 2 letters. [2024-11-10 22:42:48,847 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-10 22:42:48,847 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states and 27 transitions. Stem has 36 letters. Loop has 2 letters. [2024-11-10 22:42:48,848 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-10 22:42:48,848 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states and 27 transitions. Stem has 34 letters. Loop has 4 letters. [2024-11-10 22:42:48,848 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-10 22:42:48,848 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 90 states and 102 transitions. [2024-11-10 22:42:48,850 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 11 [2024-11-10 22:42:48,851 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 90 states to 60 states and 70 transitions. [2024-11-10 22:42:48,851 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 44 [2024-11-10 22:42:48,851 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 45 [2024-11-10 22:42:48,851 INFO L73 IsDeterministic]: Start isDeterministic. Operand 60 states and 70 transitions. [2024-11-10 22:42:48,851 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-10 22:42:48,851 INFO L218 hiAutomatonCegarLoop]: Abstraction has 60 states and 70 transitions. [2024-11-10 22:42:48,851 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 60 states and 70 transitions. [2024-11-10 22:42:48,853 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 60 to 60. [2024-11-10 22:42:48,856 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 60 states, 60 states have (on average 1.1666666666666667) internal successors, (70), 59 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-10 22:42:48,856 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 60 states to 60 states and 70 transitions. [2024-11-10 22:42:48,856 INFO L240 hiAutomatonCegarLoop]: Abstraction has 60 states and 70 transitions. [2024-11-10 22:42:48,856 INFO L425 stractBuchiCegarLoop]: Abstraction has 60 states and 70 transitions. [2024-11-10 22:42:48,857 INFO L332 stractBuchiCegarLoop]: ======== Iteration 11 ============ [2024-11-10 22:42:48,857 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 60 states and 70 transitions. [2024-11-10 22:42:48,857 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 11 [2024-11-10 22:42:48,857 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-10 22:42:48,857 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-10 22:42:48,858 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [4, 4, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-10 22:42:48,858 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-10 22:42:48,858 INFO L745 eck$LassoCheckResult]: Stem: 2149#ULTIMATE.startENTRY 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; 2150#ULTIMATE.init_returnLabel#1 assume true;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; 2135#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; 2136#L18 assume true; 2152#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 2153#L18 assume true; 2165#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 2175#L18 assume true; 2172#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 2171#L18 assume true; 2151#L18-1 assume !(init_nondet_~i~0#1 < ~N~0); 2139#init_nondet_returnLabel#1 assume true;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; 2140#L29-6 assume true; 2167#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 2129#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2130#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2162#L29-6 assume true; 2163#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 2131#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2132#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2166#L29-6 assume true; 2170#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 2168#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; 2169#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2160#L29-6 assume true; 2161#L29-8 assume !(rangesum_~i~1#1 < ~N~0); 2143#L35-2 assume !(0 != rangesum_~cnt~0#1);rangesum_#res#1 := 0; 2144#L38-2 assume true;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; 2164#L29-3 assume true; 2137#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 2138#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2154#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2155#L29-3 assume true; 2187#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 2185#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2178#L29-4 [2024-11-10 22:42:48,858 INFO L747 eck$LassoCheckResult]: Loop: 2178#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2183#L29-3 assume true; 2181#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 2174#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2178#L29-4 [2024-11-10 22:42:48,859 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:48,859 INFO L85 PathProgramCache]: Analyzing trace with hash -530366250, now seen corresponding path program 1 times [2024-11-10 22:42:48,859 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:48,859 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [802836084] [2024-11-10 22:42:48,859 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:48,859 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:48,872 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:42:48,921 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 0 proven. 8 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2024-11-10 22:42:48,921 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-10 22:42:48,921 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [802836084] [2024-11-10 22:42:48,922 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [802836084] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-10 22:42:48,922 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [324470323] [2024-11-10 22:42:48,922 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:48,922 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-10 22:42:48,922 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:48,924 INFO L229 MonitoredProcess]: Starting monitored process 85 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-10 22:42:48,925 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (85)] Waiting until timeout for monitored process [2024-11-10 22:42:48,995 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:42:48,996 INFO L255 TraceCheckSpWp]: Trace formula consists of 162 conjuncts, 3 conjuncts are in the unsatisfiable core [2024-11-10 22:42:48,997 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-10 22:42:49,021 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 8 proven. 0 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2024-11-10 22:42:49,022 INFO L307 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2024-11-10 22:42:49,022 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [324470323] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-10 22:42:49,022 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2024-11-10 22:42:49,022 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [4] total 5 [2024-11-10 22:42:49,022 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1576528107] [2024-11-10 22:42:49,022 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-10 22:42:49,022 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-10 22:42:49,023 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:49,023 INFO L85 PathProgramCache]: Analyzing trace with hash 1944324, now seen corresponding path program 1 times [2024-11-10 22:42:49,023 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:49,023 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1500923022] [2024-11-10 22:42:49,023 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:49,023 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:49,029 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:49,029 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:42:49,030 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:49,031 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:42:49,091 INFO L204 LassoAnalysis]: Preferences: [2024-11-10 22:42:49,091 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-10 22:42:49,091 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-10 22:42:49,092 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-10 22:42:49,092 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2024-11-10 22:42:49,092 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:49,092 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-10 22:42:49,092 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-10 22:42:49,092 INFO L132 ssoRankerPreferences]: Filename of dumped script: rangesum.i_Iteration11_Loop [2024-11-10 22:42:49,092 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-10 22:42:49,092 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-10 22:42:49,092 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:49,095 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:49,109 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (84)] Forceful destruction successful, exit code 0 [2024-11-10 22:42:49,142 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-10 22:42:49,142 INFO L365 LassoAnalysis]: Checking for nontermination... [2024-11-10 22:42:49,144 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:49,144 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:49,145 INFO L229 MonitoredProcess]: Starting monitored process 86 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-10 22:42:49,145 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (86)] Waiting until timeout for monitored process [2024-11-10 22:42:49,147 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2024-11-10 22:42:49,147 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-11-10 22:42:49,159 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2024-11-10 22:42:49,159 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-10 22:42:49,169 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (86)] Ended with exit code 0 [2024-11-10 22:42:49,169 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:49,170 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:49,170 INFO L229 MonitoredProcess]: Starting monitored process 87 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-10 22:42:49,171 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (87)] Waiting until timeout for monitored process [2024-11-10 22:42:49,172 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2024-11-10 22:42:49,172 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-11-10 22:42:49,192 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (87)] Ended with exit code 0 [2024-11-10 22:42:49,192 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:49,192 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:49,193 INFO L229 MonitoredProcess]: Starting monitored process 88 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-10 22:42:49,194 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (88)] Waiting until timeout for monitored process [2024-11-10 22:42:49,195 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2024-11-10 22:42:49,195 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-11-10 22:42:49,439 INFO L405 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2024-11-10 22:42:49,444 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (88)] Ended with exit code 0 [2024-11-10 22:42:49,444 INFO L204 LassoAnalysis]: Preferences: [2024-11-10 22:42:49,444 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-10 22:42:49,444 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-10 22:42:49,444 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-10 22:42:49,444 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-10 22:42:49,444 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:49,444 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-10 22:42:49,444 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-10 22:42:49,445 INFO L132 ssoRankerPreferences]: Filename of dumped script: rangesum.i_Iteration11_Loop [2024-11-10 22:42:49,445 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-10 22:42:49,445 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-10 22:42:49,445 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:49,447 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-10 22:42:49,481 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-10 22:42:49,481 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-10 22:42:49,481 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:49,481 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:49,482 INFO L229 MonitoredProcess]: Starting monitored process 89 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-10 22:42:49,483 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (89)] Waiting until timeout for monitored process [2024-11-10 22:42:49,483 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-10 22:42:49,493 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:49,493 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:49,493 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:49,493 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:49,493 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:49,494 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:49,494 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:49,495 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-10 22:42:49,504 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (89)] Ended with exit code 0 [2024-11-10 22:42:49,504 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:49,504 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:49,505 INFO L229 MonitoredProcess]: Starting monitored process 90 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-10 22:42:49,506 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (90)] Waiting until timeout for monitored process [2024-11-10 22:42:49,507 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-10 22:42:49,517 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-10 22:42:49,517 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-10 22:42:49,517 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-10 22:42:49,517 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-10 22:42:49,517 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-10 22:42:49,518 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-10 22:42:49,518 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-10 22:42:49,520 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-10 22:42:49,522 INFO L443 ModelExtractionUtils]: Simplification made 4 calls to the SMT solver. [2024-11-10 22:42:49,522 INFO L444 ModelExtractionUtils]: 0 out of 4 variables were initially zero. Simplification set additionally 1 variables to zero. [2024-11-10 22:42:49,522 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-10 22:42:49,522 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:49,523 INFO L229 MonitoredProcess]: Starting monitored process 91 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-10 22:42:49,524 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (91)] Waiting until timeout for monitored process [2024-11-10 22:42:49,524 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-10 22:42:49,524 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2024-11-10 22:42:49,525 INFO L474 LassoAnalysis]: Proved termination. [2024-11-10 22:42:49,525 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-10 22:42:49,535 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (90)] Ended with exit code 0 [2024-11-10 22:42:49,535 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2024-11-10 22:42:49,549 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:49,578 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:42:49,580 INFO L255 TraceCheckSpWp]: Trace formula consists of 162 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-11-10 22:42:49,581 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-10 22:42:49,619 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:42:49,620 WARN L253 TraceCheckSpWp]: Trace formula consists of 7 conjuncts, 5 conjuncts are in the unsatisfiable core [2024-11-10 22:42:49,620 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-10 22:42:49,640 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-10 22:42:49,640 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-10 22:42:49,640 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 60 states and 70 transitions. cyclomatic complexity: 15 Second operand has 4 states, 4 states have (on average 6.0) internal successors, (24), 4 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:42:49,674 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 60 states and 70 transitions. cyclomatic complexity: 15. Second operand has 4 states, 4 states have (on average 6.0) internal successors, (24), 4 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Result 69 states and 80 transitions. Complement of second has 7 states. [2024-11-10 22:42:49,675 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-10 22:42:49,675 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 6.0) internal successors, (24), 4 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:42:49,675 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 25 transitions. [2024-11-10 22:42:49,675 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 25 transitions. Stem has 35 letters. Loop has 4 letters. [2024-11-10 22:42:49,677 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-10 22:42:49,678 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 25 transitions. Stem has 39 letters. Loop has 4 letters. [2024-11-10 22:42:49,678 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-10 22:42:49,678 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 25 transitions. Stem has 35 letters. Loop has 8 letters. [2024-11-10 22:42:49,679 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-10 22:42:49,679 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 69 states and 80 transitions. [2024-11-10 22:42:49,679 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 8 [2024-11-10 22:42:49,680 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 69 states to 66 states and 77 transitions. [2024-11-10 22:42:49,680 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 40 [2024-11-10 22:42:49,680 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 41 [2024-11-10 22:42:49,680 INFO L73 IsDeterministic]: Start isDeterministic. Operand 66 states and 77 transitions. [2024-11-10 22:42:49,680 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-10 22:42:49,680 INFO L218 hiAutomatonCegarLoop]: Abstraction has 66 states and 77 transitions. [2024-11-10 22:42:49,680 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 66 states and 77 transitions. [2024-11-10 22:42:49,685 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 66 to 64. [2024-11-10 22:42:49,686 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 64 states, 64 states have (on average 1.171875) internal successors, (75), 63 states have internal predecessors, (75), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:42:49,686 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 64 states to 64 states and 75 transitions. [2024-11-10 22:42:49,686 INFO L240 hiAutomatonCegarLoop]: Abstraction has 64 states and 75 transitions. [2024-11-10 22:42:49,686 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-10 22:42:49,686 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-11-10 22:42:49,687 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2024-11-10 22:42:49,687 INFO L87 Difference]: Start difference. First operand 64 states and 75 transitions. 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-10 22:42:49,719 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-10 22:42:49,719 INFO L93 Difference]: Finished difference Result 79 states and 93 transitions. [2024-11-10 22:42:49,719 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 79 states and 93 transitions. [2024-11-10 22:42:49,719 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 12 [2024-11-10 22:42:49,720 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 79 states to 79 states and 93 transitions. [2024-11-10 22:42:49,720 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 48 [2024-11-10 22:42:49,720 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 48 [2024-11-10 22:42:49,720 INFO L73 IsDeterministic]: Start isDeterministic. Operand 79 states and 93 transitions. [2024-11-10 22:42:49,720 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-10 22:42:49,720 INFO L218 hiAutomatonCegarLoop]: Abstraction has 79 states and 93 transitions. [2024-11-10 22:42:49,720 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 79 states and 93 transitions. [2024-11-10 22:42:49,722 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 79 to 64. [2024-11-10 22:42:49,722 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 64 states, 64 states have (on average 1.140625) internal successors, (73), 63 states have internal predecessors, (73), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:42:49,722 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 64 states to 64 states and 73 transitions. [2024-11-10 22:42:49,722 INFO L240 hiAutomatonCegarLoop]: Abstraction has 64 states and 73 transitions. [2024-11-10 22:42:49,723 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-11-10 22:42:49,723 INFO L425 stractBuchiCegarLoop]: Abstraction has 64 states and 73 transitions. [2024-11-10 22:42:49,723 INFO L332 stractBuchiCegarLoop]: ======== Iteration 12 ============ [2024-11-10 22:42:49,723 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 64 states and 73 transitions. [2024-11-10 22:42:49,723 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 8 [2024-11-10 22:42:49,724 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-10 22:42:49,724 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-10 22:42:49,724 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [4, 4, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-10 22:42:49,724 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-10 22:42:49,725 INFO L745 eck$LassoCheckResult]: Stem: 2667#ULTIMATE.startENTRY 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; 2668#ULTIMATE.init_returnLabel#1 assume true;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; 2651#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; 2652#L18 assume true; 2670#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 2671#L18 assume true; 2688#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 2700#L18 assume true; 2699#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 2698#L18 assume true; 2669#L18-1 assume !(init_nondet_~i~0#1 < ~N~0); 2653#init_nondet_returnLabel#1 assume true;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; 2654#L29-6 assume true; 2692#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 2645#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2646#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2690#L29-6 assume true; 2702#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 2647#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2648#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2683#L29-6 assume true; 2684#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 2686#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; 2697#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2681#L29-6 assume true; 2682#L29-8 assume !(rangesum_~i~1#1 < ~N~0); 2661#L35-2 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); 2662#L38-2 assume true;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; 2685#L29-3 assume true; 2655#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 2656#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2672#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2673#L29-3 assume true; 2657#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 2658#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2687#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2703#L29-3 assume true; 2701#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 2694#L30-1 [2024-11-10 22:42:49,725 INFO L747 eck$LassoCheckResult]: Loop: 2694#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 2696#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2695#L29-3 assume true; 2693#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 2694#L30-1 [2024-11-10 22:42:49,725 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:49,725 INFO L85 PathProgramCache]: Analyzing trace with hash 785595724, now seen corresponding path program 1 times [2024-11-10 22:42:49,725 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:49,725 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1861341067] [2024-11-10 22:42:49,725 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:49,725 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:49,746 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unknown [2024-11-10 22:42:49,748 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [307196686] [2024-11-10 22:42:49,748 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:49,748 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-10 22:42:49,748 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:49,750 INFO L229 MonitoredProcess]: Starting monitored process 92 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-10 22:42:49,750 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (92)] Waiting until timeout for monitored process [2024-11-10 22:42:49,828 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:49,828 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:42:49,845 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:49,860 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:42:49,863 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:49,863 INFO L85 PathProgramCache]: Analyzing trace with hash 1969343, now seen corresponding path program 2 times [2024-11-10 22:42:49,863 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:49,863 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1972435127] [2024-11-10 22:42:49,863 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:49,863 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:49,867 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:49,867 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:42:49,869 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:49,870 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:42:49,870 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:49,871 INFO L85 PathProgramCache]: Analyzing trace with hash -315904886, now seen corresponding path program 1 times [2024-11-10 22:42:49,871 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:49,871 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2145847012] [2024-11-10 22:42:49,871 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:49,871 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:49,884 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:42:50,025 INFO L134 CoverageAnalysis]: Checked inductivity of 48 backedges. 0 proven. 28 refuted. 0 times theorem prover too weak. 20 trivial. 0 not checked. [2024-11-10 22:42:50,026 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-10 22:42:50,026 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2145847012] [2024-11-10 22:42:50,026 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2145847012] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-10 22:42:50,026 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [221930636] [2024-11-10 22:42:50,026 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:50,026 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-10 22:42:50,026 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:50,028 INFO L229 MonitoredProcess]: Starting monitored process 93 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-10 22:42:50,029 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (93)] Waiting until timeout for monitored process [2024-11-10 22:42:50,105 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:42:50,106 INFO L255 TraceCheckSpWp]: Trace formula consists of 178 conjuncts, 10 conjuncts are in the unsatisfiable core [2024-11-10 22:42:50,107 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-10 22:42:50,233 INFO L134 CoverageAnalysis]: Checked inductivity of 48 backedges. 18 proven. 12 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2024-11-10 22:42:50,233 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-10 22:42:50,326 INFO L134 CoverageAnalysis]: Checked inductivity of 48 backedges. 18 proven. 12 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2024-11-10 22:42:50,326 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [221930636] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-10 22:42:50,326 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-10 22:42:50,326 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 10, 10] total 16 [2024-11-10 22:42:50,327 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [885170717] [2024-11-10 22:42:50,327 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-10 22:42:50,390 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-10 22:42:50,391 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2024-11-10 22:42:50,391 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=72, Invalid=200, Unknown=0, NotChecked=0, Total=272 [2024-11-10 22:42:50,392 INFO L87 Difference]: Start difference. First operand 64 states and 73 transitions. cyclomatic complexity: 15 Second operand has 17 states, 16 states have (on average 4.125) internal successors, (66), 17 states have internal predecessors, (66), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:42:50,551 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-10 22:42:50,551 INFO L93 Difference]: Finished difference Result 129 states and 140 transitions. [2024-11-10 22:42:50,551 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 129 states and 140 transitions. [2024-11-10 22:42:50,552 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 8 [2024-11-10 22:42:50,552 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 129 states to 67 states and 76 transitions. [2024-11-10 22:42:50,552 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 41 [2024-11-10 22:42:50,552 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 41 [2024-11-10 22:42:50,552 INFO L73 IsDeterministic]: Start isDeterministic. Operand 67 states and 76 transitions. [2024-11-10 22:42:50,552 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-10 22:42:50,552 INFO L218 hiAutomatonCegarLoop]: Abstraction has 67 states and 76 transitions. [2024-11-10 22:42:50,553 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 67 states and 76 transitions. [2024-11-10 22:42:50,575 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 67 to 66. [2024-11-10 22:42:50,576 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 66 states, 66 states have (on average 1.1363636363636365) internal successors, (75), 65 states have internal predecessors, (75), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:42:50,576 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 66 states to 66 states and 75 transitions. [2024-11-10 22:42:50,576 INFO L240 hiAutomatonCegarLoop]: Abstraction has 66 states and 75 transitions. [2024-11-10 22:42:50,580 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2024-11-10 22:42:50,581 INFO L425 stractBuchiCegarLoop]: Abstraction has 66 states and 75 transitions. [2024-11-10 22:42:50,581 INFO L332 stractBuchiCegarLoop]: ======== Iteration 13 ============ [2024-11-10 22:42:50,581 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 66 states and 75 transitions. [2024-11-10 22:42:50,582 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 8 [2024-11-10 22:42:50,582 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-10 22:42:50,582 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-10 22:42:50,586 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [5, 4, 4, 3, 3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-10 22:42:50,586 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-10 22:42:50,586 INFO L745 eck$LassoCheckResult]: Stem: 3128#ULTIMATE.startENTRY 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; 3129#ULTIMATE.init_returnLabel#1 assume true;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; 3112#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; 3113#L18 assume true; 3149#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 3150#L18 assume true; 3131#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 3132#L18 assume true; 3171#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 3170#L18 assume true; 3164#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 3163#L18 assume true; 3130#L18-1 assume !(init_nondet_~i~0#1 < ~N~0); 3114#init_nondet_returnLabel#1 assume true;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; 3115#L29-6 assume true; 3157#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3106#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3107#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3143#L29-6 assume true; 3144#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3108#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3109#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3154#L29-6 assume true; 3162#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3160#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; 3161#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3141#L29-6 assume true; 3142#L29-8 assume !(rangesum_~i~1#1 < ~N~0); 3122#L35-2 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); 3123#L38-2 assume true;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; 3145#L29-3 assume true; 3116#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 3117#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3133#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3134#L29-3 assume true; 3118#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 3119#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3148#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3151#L29-3 assume true; 3152#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 3146#L30-1 [2024-11-10 22:42:50,586 INFO L747 eck$LassoCheckResult]: Loop: 3146#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 3147#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3159#L29-3 assume true; 3158#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 3146#L30-1 [2024-11-10 22:42:50,587 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:50,587 INFO L85 PathProgramCache]: Analyzing trace with hash 563668109, now seen corresponding path program 2 times [2024-11-10 22:42:50,587 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:50,587 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [265973914] [2024-11-10 22:42:50,587 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:50,587 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:50,602 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:42:50,602 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (91)] Ended with exit code 0 [2024-11-10 22:42:50,802 INFO L134 CoverageAnalysis]: Checked inductivity of 46 backedges. 14 proven. 24 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2024-11-10 22:42:50,802 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-10 22:42:50,802 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [265973914] [2024-11-10 22:42:50,802 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [265973914] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-10 22:42:50,802 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2708846] [2024-11-10 22:42:50,803 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-10 22:42:50,803 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-10 22:42:50,803 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:50,804 INFO L229 MonitoredProcess]: Starting monitored process 94 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-10 22:42:50,804 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (94)] Waiting until timeout for monitored process [2024-11-10 22:42:50,884 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-10 22:42:50,884 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-10 22:42:50,885 INFO L255 TraceCheckSpWp]: Trace formula consists of 177 conjuncts, 10 conjuncts are in the unsatisfiable core [2024-11-10 22:42:50,886 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-10 22:42:50,991 INFO L134 CoverageAnalysis]: Checked inductivity of 46 backedges. 12 proven. 26 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2024-11-10 22:42:50,991 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-10 22:42:51,091 INFO L134 CoverageAnalysis]: Checked inductivity of 46 backedges. 12 proven. 26 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2024-11-10 22:42:51,092 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2708846] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-10 22:42:51,092 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-10 22:42:51,092 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 11, 11] total 19 [2024-11-10 22:42:51,092 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1674515666] [2024-11-10 22:42:51,092 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-10 22:42:51,092 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-10 22:42:51,093 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:51,093 INFO L85 PathProgramCache]: Analyzing trace with hash 1969343, now seen corresponding path program 3 times [2024-11-10 22:42:51,093 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:51,093 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1095605075] [2024-11-10 22:42:51,093 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:51,093 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:51,096 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:51,096 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:42:51,098 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:51,099 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:42:51,172 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-10 22:42:51,172 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2024-11-10 22:42:51,173 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=85, Invalid=257, Unknown=0, NotChecked=0, Total=342 [2024-11-10 22:42:51,173 INFO L87 Difference]: Start difference. First operand 66 states and 75 transitions. cyclomatic complexity: 15 Second operand has 19 states, 19 states have (on average 3.526315789473684) internal successors, (67), 19 states have internal predecessors, (67), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:42:51,366 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-10 22:42:51,367 INFO L93 Difference]: Finished difference Result 113 states and 128 transitions. [2024-11-10 22:42:51,367 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 113 states and 128 transitions. [2024-11-10 22:42:51,367 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 11 [2024-11-10 22:42:51,368 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 113 states to 110 states and 125 transitions. [2024-11-10 22:42:51,368 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 59 [2024-11-10 22:42:51,368 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 59 [2024-11-10 22:42:51,368 INFO L73 IsDeterministic]: Start isDeterministic. Operand 110 states and 125 transitions. [2024-11-10 22:42:51,368 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-10 22:42:51,368 INFO L218 hiAutomatonCegarLoop]: Abstraction has 110 states and 125 transitions. [2024-11-10 22:42:51,369 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 110 states and 125 transitions. [2024-11-10 22:42:51,370 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 110 to 78. [2024-11-10 22:42:51,370 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 78 states, 78 states have (on average 1.1153846153846154) internal successors, (87), 77 states have internal predecessors, (87), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:42:51,370 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 78 states to 78 states and 87 transitions. [2024-11-10 22:42:51,370 INFO L240 hiAutomatonCegarLoop]: Abstraction has 78 states and 87 transitions. [2024-11-10 22:42:51,371 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2024-11-10 22:42:51,372 INFO L425 stractBuchiCegarLoop]: Abstraction has 78 states and 87 transitions. [2024-11-10 22:42:51,372 INFO L332 stractBuchiCegarLoop]: ======== Iteration 14 ============ [2024-11-10 22:42:51,372 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 78 states and 87 transitions. [2024-11-10 22:42:51,372 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 8 [2024-11-10 22:42:51,372 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-10 22:42:51,372 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-10 22:42:51,373 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [5, 5, 4, 4, 4, 4, 4, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-10 22:42:51,373 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-10 22:42:51,373 INFO L745 eck$LassoCheckResult]: Stem: 3571#ULTIMATE.startENTRY 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; 3572#ULTIMATE.init_returnLabel#1 assume true;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; 3555#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; 3556#L18 assume true; 3594#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 3595#L18 assume true; 3574#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 3575#L18 assume true; 3609#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 3608#L18 assume true; 3607#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 3606#L18 assume true; 3573#L18-1 assume !(init_nondet_~i~0#1 < ~N~0); 3557#init_nondet_returnLabel#1 assume true;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; 3558#L29-6 assume true; 3600#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3549#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3550#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3598#L29-6 assume true; 3590#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3591#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3618#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3616#L29-6 assume true; 3617#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3551#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3552#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3587#L29-6 assume true; 3588#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3610#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; 3605#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3585#L29-6 assume true; 3586#L29-8 assume !(rangesum_~i~1#1 < ~N~0); 3565#L35-2 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); 3566#L38-2 assume true;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; 3589#L29-3 assume true; 3604#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 3603#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3576#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3577#L29-3 assume true; 3614#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 3612#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3613#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3597#L29-3 assume true; 3561#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 3562#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3593#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3596#L29-3 assume true; 3559#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 3560#L30-1 [2024-11-10 22:42:51,374 INFO L747 eck$LassoCheckResult]: Loop: 3560#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 3592#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3602#L29-3 assume true; 3601#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 3560#L30-1 [2024-11-10 22:42:51,374 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:51,374 INFO L85 PathProgramCache]: Analyzing trace with hash -400251065, now seen corresponding path program 3 times [2024-11-10 22:42:51,374 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:51,375 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1245521993] [2024-11-10 22:42:51,375 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:51,377 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:51,406 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unknown [2024-11-10 22:42:51,407 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [892137063] [2024-11-10 22:42:51,408 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-10 22:42:51,408 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-10 22:42:51,408 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:51,410 INFO L229 MonitoredProcess]: Starting monitored process 95 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-10 22:42:51,412 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (95)] Waiting until timeout for monitored process [2024-11-10 22:42:51,508 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 5 check-sat command(s) [2024-11-10 22:42:51,508 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-10 22:42:51,508 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:42:51,527 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:51,541 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:42:51,542 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:51,542 INFO L85 PathProgramCache]: Analyzing trace with hash 1969343, now seen corresponding path program 4 times [2024-11-10 22:42:51,542 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:51,542 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [974926384] [2024-11-10 22:42:51,542 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:51,542 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:51,546 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:51,546 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:42:51,548 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:51,549 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:42:51,549 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:51,549 INFO L85 PathProgramCache]: Analyzing trace with hash 1802608901, now seen corresponding path program 2 times [2024-11-10 22:42:51,550 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:51,550 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1155241676] [2024-11-10 22:42:51,550 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:51,550 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:51,570 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:42:51,857 INFO L134 CoverageAnalysis]: Checked inductivity of 84 backedges. 18 proven. 34 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2024-11-10 22:42:51,858 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-10 22:42:51,858 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1155241676] [2024-11-10 22:42:51,858 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1155241676] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-10 22:42:51,858 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1251773735] [2024-11-10 22:42:51,858 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-10 22:42:51,858 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-10 22:42:51,859 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:51,861 INFO L229 MonitoredProcess]: Starting monitored process 96 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-10 22:42:51,862 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (96)] Waiting until timeout for monitored process [2024-11-10 22:42:51,957 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-10 22:42:51,958 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-10 22:42:51,958 INFO L255 TraceCheckSpWp]: Trace formula consists of 200 conjuncts, 12 conjuncts are in the unsatisfiable core [2024-11-10 22:42:51,960 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-10 22:42:52,110 INFO L134 CoverageAnalysis]: Checked inductivity of 84 backedges. 32 proven. 20 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2024-11-10 22:42:52,111 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-10 22:42:52,225 INFO L134 CoverageAnalysis]: Checked inductivity of 84 backedges. 32 proven. 20 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2024-11-10 22:42:52,225 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1251773735] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-10 22:42:52,225 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-10 22:42:52,226 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12, 12] total 19 [2024-11-10 22:42:52,226 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [776900741] [2024-11-10 22:42:52,226 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-10 22:42:52,286 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-10 22:42:52,286 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2024-11-10 22:42:52,286 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=95, Invalid=285, Unknown=0, NotChecked=0, Total=380 [2024-11-10 22:42:52,287 INFO L87 Difference]: Start difference. First operand 78 states and 87 transitions. cyclomatic complexity: 15 Second operand has 20 states, 19 states have (on average 3.526315789473684) internal successors, (67), 20 states have internal predecessors, (67), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:42:52,499 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-10 22:42:52,500 INFO L93 Difference]: Finished difference Result 155 states and 166 transitions. [2024-11-10 22:42:52,500 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 155 states and 166 transitions. [2024-11-10 22:42:52,501 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 8 [2024-11-10 22:42:52,501 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 155 states to 81 states and 90 transitions. [2024-11-10 22:42:52,501 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 45 [2024-11-10 22:42:52,501 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 45 [2024-11-10 22:42:52,501 INFO L73 IsDeterministic]: Start isDeterministic. Operand 81 states and 90 transitions. [2024-11-10 22:42:52,502 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-10 22:42:52,502 INFO L218 hiAutomatonCegarLoop]: Abstraction has 81 states and 90 transitions. [2024-11-10 22:42:52,502 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 81 states and 90 transitions. [2024-11-10 22:42:52,503 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 81 to 80. [2024-11-10 22:42:52,503 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 80 states, 80 states have (on average 1.1125) internal successors, (89), 79 states have internal predecessors, (89), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:42:52,503 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 80 states to 80 states and 89 transitions. [2024-11-10 22:42:52,503 INFO L240 hiAutomatonCegarLoop]: Abstraction has 80 states and 89 transitions. [2024-11-10 22:42:52,503 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2024-11-10 22:42:52,504 INFO L425 stractBuchiCegarLoop]: Abstraction has 80 states and 89 transitions. [2024-11-10 22:42:52,504 INFO L332 stractBuchiCegarLoop]: ======== Iteration 15 ============ [2024-11-10 22:42:52,504 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 80 states and 89 transitions. [2024-11-10 22:42:52,504 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 8 [2024-11-10 22:42:52,505 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-10 22:42:52,505 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-10 22:42:52,505 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [6, 5, 5, 4, 4, 4, 4, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-10 22:42:52,505 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-10 22:42:52,505 INFO L745 eck$LassoCheckResult]: Stem: 4138#ULTIMATE.startENTRY 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; 4139#ULTIMATE.init_returnLabel#1 assume true;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; 4119#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; 4120#L18 assume true; 4136#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 4137#L18 assume true; 4154#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 4182#L18 assume true; 4181#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 4180#L18 assume true; 4179#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 4178#L18 assume true; 4172#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 4171#L18 assume true; 4135#L18-1 assume !(init_nondet_~i~0#1 < ~N~0); 4121#init_nondet_returnLabel#1 assume true;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; 4122#L29-6 assume true; 4157#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4113#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4114#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4156#L29-6 assume true; 4153#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4115#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4116#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4150#L29-6 assume true; 4151#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4174#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4169#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4173#L29-6 assume true; 4170#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4168#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; 4166#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4148#L29-6 assume true; 4149#L29-8 assume !(rangesum_~i~1#1 < ~N~0); 4129#L35-2 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); 4130#L38-2 assume true;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; 4152#L29-3 assume true; 4123#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 4124#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4140#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4141#L29-3 assume true; 4125#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 4126#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4142#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4143#L29-3 assume true; 4155#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 4167#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4164#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4163#L29-3 assume true; 4162#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 4159#L30-1 [2024-11-10 22:42:52,506 INFO L747 eck$LassoCheckResult]: Loop: 4159#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 4161#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4160#L29-3 assume true; 4158#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 4159#L30-1 [2024-11-10 22:42:52,506 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:52,506 INFO L85 PathProgramCache]: Analyzing trace with hash -413732536, now seen corresponding path program 4 times [2024-11-10 22:42:52,506 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:52,506 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [996999390] [2024-11-10 22:42:52,506 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:52,506 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:52,521 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:42:52,718 INFO L134 CoverageAnalysis]: Checked inductivity of 80 backedges. 12 proven. 40 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2024-11-10 22:42:52,719 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-10 22:42:52,719 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [996999390] [2024-11-10 22:42:52,719 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [996999390] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-10 22:42:52,719 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [805432510] [2024-11-10 22:42:52,719 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-10 22:42:52,719 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-10 22:42:52,719 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:52,721 INFO L229 MonitoredProcess]: Starting monitored process 97 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-10 22:42:52,722 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (97)] Waiting until timeout for monitored process [2024-11-10 22:42:52,810 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-10 22:42:52,811 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-10 22:42:52,811 INFO L255 TraceCheckSpWp]: Trace formula consists of 199 conjuncts, 12 conjuncts are in the unsatisfiable core [2024-11-10 22:42:52,812 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-10 22:42:52,966 INFO L134 CoverageAnalysis]: Checked inductivity of 80 backedges. 20 proven. 42 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2024-11-10 22:42:52,966 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-10 22:42:53,087 INFO L134 CoverageAnalysis]: Checked inductivity of 80 backedges. 20 proven. 42 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2024-11-10 22:42:53,088 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [805432510] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-10 22:42:53,088 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-10 22:42:53,088 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 13, 13] total 23 [2024-11-10 22:42:53,088 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1151985289] [2024-11-10 22:42:53,088 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-10 22:42:53,088 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-10 22:42:53,088 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:53,088 INFO L85 PathProgramCache]: Analyzing trace with hash 1969343, now seen corresponding path program 5 times [2024-11-10 22:42:53,089 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:53,089 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [973238121] [2024-11-10 22:42:53,089 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:53,089 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:53,091 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:53,091 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:42:53,093 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:53,094 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:42:53,161 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-10 22:42:53,161 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2024-11-10 22:42:53,162 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=114, Invalid=392, Unknown=0, NotChecked=0, Total=506 [2024-11-10 22:42:53,162 INFO L87 Difference]: Start difference. First operand 80 states and 89 transitions. cyclomatic complexity: 15 Second operand has 23 states, 23 states have (on average 3.3043478260869565) internal successors, (76), 23 states have internal predecessors, (76), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:42:53,458 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-10 22:42:53,458 INFO L93 Difference]: Finished difference Result 170 states and 196 transitions. [2024-11-10 22:42:53,458 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 170 states and 196 transitions. [2024-11-10 22:42:53,460 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 15 [2024-11-10 22:42:53,461 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 170 states to 163 states and 188 transitions. [2024-11-10 22:42:53,462 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 84 [2024-11-10 22:42:53,462 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 84 [2024-11-10 22:42:53,462 INFO L73 IsDeterministic]: Start isDeterministic. Operand 163 states and 188 transitions. [2024-11-10 22:42:53,462 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-10 22:42:53,462 INFO L218 hiAutomatonCegarLoop]: Abstraction has 163 states and 188 transitions. [2024-11-10 22:42:53,463 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 163 states and 188 transitions. [2024-11-10 22:42:53,464 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 163 to 88. [2024-11-10 22:42:53,464 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 88 states, 88 states have (on average 1.1136363636363635) internal successors, (98), 87 states have internal predecessors, (98), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:42:53,464 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 88 states to 88 states and 98 transitions. [2024-11-10 22:42:53,465 INFO L240 hiAutomatonCegarLoop]: Abstraction has 88 states and 98 transitions. [2024-11-10 22:42:53,465 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2024-11-10 22:42:53,465 INFO L425 stractBuchiCegarLoop]: Abstraction has 88 states and 98 transitions. [2024-11-10 22:42:53,466 INFO L332 stractBuchiCegarLoop]: ======== Iteration 16 ============ [2024-11-10 22:42:53,466 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 88 states and 98 transitions. [2024-11-10 22:42:53,466 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 8 [2024-11-10 22:42:53,466 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-10 22:42:53,466 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-10 22:42:53,467 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [6, 6, 5, 5, 5, 5, 5, 4, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-10 22:42:53,467 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-10 22:42:53,467 INFO L745 eck$LassoCheckResult]: Stem: 4719#ULTIMATE.startENTRY 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; 4720#ULTIMATE.init_returnLabel#1 assume true;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; 4703#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; 4704#L18 assume true; 4739#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 4740#L18 assume true; 4722#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 4723#L18 assume true; 4759#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 4758#L18 assume true; 4757#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 4756#L18 assume true; 4753#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 4752#L18 assume true; 4721#L18-1 assume !(init_nondet_~i~0#1 < ~N~0); 4709#init_nondet_returnLabel#1 assume true;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; 4710#L29-6 assume true; 4746#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4697#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4698#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4744#L29-6 assume true; 4769#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4770#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4773#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4771#L29-6 assume true; 4772#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4699#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4700#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4733#L29-6 assume true; 4734#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4736#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; 4755#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4761#L29-6 assume true; 4760#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4754#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; 4751#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-6 assume true; 4732#L29-8 assume !(rangesum_~i~1#1 < ~N~0); 4713#L35-2 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); 4714#L38-2 assume true;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; 4735#L29-3 assume true; 4705#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 4706#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4724#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4725#L29-3 assume true; 4768#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 4737#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4738#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4775#L29-3 assume true; 4774#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 4767#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4766#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4741#L29-3 assume true; 4742#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 4764#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 4765#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4763#L29-3 assume true; 4762#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 4748#L30-1 [2024-11-10 22:42:53,469 INFO L747 eck$LassoCheckResult]: Loop: 4748#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 4750#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4749#L29-3 assume true; 4747#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 4748#L30-1 [2024-11-10 22:42:53,470 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:53,473 INFO L85 PathProgramCache]: Analyzing trace with hash 1318636868, now seen corresponding path program 3 times [2024-11-10 22:42:53,473 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:53,473 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1741426817] [2024-11-10 22:42:53,473 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:53,473 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:53,495 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unknown [2024-11-10 22:42:53,496 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2041913573] [2024-11-10 22:42:53,496 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-10 22:42:53,496 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-10 22:42:53,497 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:53,498 INFO L229 MonitoredProcess]: Starting monitored process 98 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-10 22:42:53,500 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (98)] Waiting until timeout for monitored process [2024-11-10 22:42:53,616 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 6 check-sat command(s) [2024-11-10 22:42:53,616 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-10 22:42:53,616 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:42:53,635 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:53,647 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:42:53,647 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:53,647 INFO L85 PathProgramCache]: Analyzing trace with hash 1969343, now seen corresponding path program 6 times [2024-11-10 22:42:53,647 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:53,648 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1691928153] [2024-11-10 22:42:53,648 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:53,648 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:53,651 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:53,651 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:42:53,652 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:53,654 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:42:53,654 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:53,654 INFO L85 PathProgramCache]: Analyzing trace with hash -1892122494, now seen corresponding path program 4 times [2024-11-10 22:42:53,654 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:53,655 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1595587918] [2024-11-10 22:42:53,655 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:53,655 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:53,672 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:42:53,920 INFO L134 CoverageAnalysis]: Checked inductivity of 130 backedges. 32 proven. 48 refuted. 0 times theorem prover too weak. 50 trivial. 0 not checked. [2024-11-10 22:42:53,921 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-10 22:42:53,921 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1595587918] [2024-11-10 22:42:53,921 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1595587918] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-10 22:42:53,921 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1367730427] [2024-11-10 22:42:53,921 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-10 22:42:53,921 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-10 22:42:53,921 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:53,923 INFO L229 MonitoredProcess]: Starting monitored process 99 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-10 22:42:53,925 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (99)] Waiting until timeout for monitored process [2024-11-10 22:42:54,010 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-10 22:42:54,010 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-10 22:42:54,011 INFO L255 TraceCheckSpWp]: Trace formula consists of 195 conjuncts, 14 conjuncts are in the unsatisfiable core [2024-11-10 22:42:54,011 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-10 22:42:54,248 INFO L134 CoverageAnalysis]: Checked inductivity of 130 backedges. 50 proven. 50 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2024-11-10 22:42:54,248 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-10 22:42:54,405 INFO L134 CoverageAnalysis]: Checked inductivity of 130 backedges. 50 proven. 50 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2024-11-10 22:42:54,405 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1367730427] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-10 22:42:54,405 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-10 22:42:54,405 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14, 14] total 27 [2024-11-10 22:42:54,405 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2061749670] [2024-11-10 22:42:54,405 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-10 22:42:54,469 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-10 22:42:54,469 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 28 interpolants. [2024-11-10 22:42:54,469 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=149, Invalid=607, Unknown=0, NotChecked=0, Total=756 [2024-11-10 22:42:54,470 INFO L87 Difference]: Start difference. First operand 88 states and 98 transitions. cyclomatic complexity: 16 Second operand has 28 states, 27 states have (on average 3.740740740740741) internal successors, (101), 28 states have internal predecessors, (101), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:42:55,112 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-10 22:42:55,113 INFO L93 Difference]: Finished difference Result 424 states and 470 transitions. [2024-11-10 22:42:55,113 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 424 states and 470 transitions. [2024-11-10 22:42:55,115 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 8 [2024-11-10 22:42:55,117 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 424 states to 205 states and 227 transitions. [2024-11-10 22:42:55,117 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 107 [2024-11-10 22:42:55,117 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 137 [2024-11-10 22:42:55,118 INFO L73 IsDeterministic]: Start isDeterministic. Operand 205 states and 227 transitions. [2024-11-10 22:42:55,118 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-10 22:42:55,118 INFO L218 hiAutomatonCegarLoop]: Abstraction has 205 states and 227 transitions. [2024-11-10 22:42:55,118 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 205 states and 227 transitions. [2024-11-10 22:42:55,120 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 205 to 177. [2024-11-10 22:42:55,121 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 177 states, 177 states have (on average 1.112994350282486) internal successors, (197), 176 states have internal predecessors, (197), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:42:55,121 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 177 states to 177 states and 197 transitions. [2024-11-10 22:42:55,121 INFO L240 hiAutomatonCegarLoop]: Abstraction has 177 states and 197 transitions. [2024-11-10 22:42:55,122 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 39 states. [2024-11-10 22:42:55,123 INFO L425 stractBuchiCegarLoop]: Abstraction has 177 states and 197 transitions. [2024-11-10 22:42:55,123 INFO L332 stractBuchiCegarLoop]: ======== Iteration 17 ============ [2024-11-10 22:42:55,123 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 177 states and 197 transitions. [2024-11-10 22:42:55,124 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 8 [2024-11-10 22:42:55,124 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-10 22:42:55,124 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-10 22:42:55,124 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [8, 8, 7, 7, 7, 6, 6, 6, 6, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-10 22:42:55,124 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-10 22:42:55,125 INFO L745 eck$LassoCheckResult]: Stem: 5668#ULTIMATE.startENTRY 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; 5669#ULTIMATE.init_returnLabel#1 assume true;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; 5652#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; 5653#L18 assume true; 5690#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 5691#L18 assume true; 5671#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 5672#L18 assume true; 5703#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 5702#L18 assume true; 5701#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 5700#L18 assume true; 5699#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 5698#L18 assume true; 5697#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 5696#L18 assume true; 5670#L18-1 assume !(init_nondet_~i~0#1 < ~N~0); 5654#init_nondet_returnLabel#1 assume true;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; 5655#L29-6 assume true; 5737#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5646#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5647#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5683#L29-6 assume true; 5684#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5687#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5692#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5693#L29-6 assume true; 5738#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5648#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5649#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5736#L29-6 assume true; 5735#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5734#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5733#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5732#L29-6 assume true; 5731#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5729#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; 5730#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5744#L29-6 assume true; 5747#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5745#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 5707#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5704#L29-6 assume true; 5695#L29-8 assume !(rangesum_~i~1#1 < ~N~0); 5662#L35-2 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); 5663#L38-2 assume true;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; 5685#L29-3 assume true; 5713#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 5712#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5710#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5711#L29-3 assume true; 5774#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 5773#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5772#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5771#L29-3 assume true; 5770#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 5769#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5768#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5767#L29-3 assume true; 5766#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 5765#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5763#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5762#L29-3 assume true; 5761#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 5760#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5758#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5756#L29-3 assume true; 5754#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 5750#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5689#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5776#L29-3 assume true; 5775#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 5748#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 5749#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5795#L29-3 assume true; 5793#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 5789#L30-1 [2024-11-10 22:42:55,125 INFO L747 eck$LassoCheckResult]: Loop: 5789#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 5790#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5705#L29-3 assume true; 5706#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 5789#L30-1 [2024-11-10 22:42:55,125 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:55,126 INFO L85 PathProgramCache]: Analyzing trace with hash -2042200839, now seen corresponding path program 5 times [2024-11-10 22:42:55,126 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:55,126 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1742769723] [2024-11-10 22:42:55,126 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:55,126 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:55,145 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:42:55,458 INFO L134 CoverageAnalysis]: Checked inductivity of 212 backedges. 72 proven. 68 refuted. 0 times theorem prover too weak. 72 trivial. 0 not checked. [2024-11-10 22:42:55,458 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-10 22:42:55,458 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1742769723] [2024-11-10 22:42:55,458 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1742769723] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-10 22:42:55,459 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2063888799] [2024-11-10 22:42:55,459 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-10 22:42:55,459 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-10 22:42:55,459 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:55,461 INFO L229 MonitoredProcess]: Starting monitored process 100 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-10 22:42:55,462 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (100)] Waiting until timeout for monitored process [2024-11-10 22:42:55,578 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 8 check-sat command(s) [2024-11-10 22:42:55,578 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-10 22:42:55,580 INFO L255 TraceCheckSpWp]: Trace formula consists of 257 conjuncts, 13 conjuncts are in the unsatisfiable core [2024-11-10 22:42:55,610 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-10 22:42:55,938 INFO L134 CoverageAnalysis]: Checked inductivity of 212 backedges. 95 proven. 69 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2024-11-10 22:42:55,938 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-10 22:42:56,461 INFO L134 CoverageAnalysis]: Checked inductivity of 212 backedges. 95 proven. 69 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2024-11-10 22:42:56,461 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2063888799] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-10 22:42:56,461 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-10 22:42:56,462 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 14, 14] total 38 [2024-11-10 22:42:56,462 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1461730360] [2024-11-10 22:42:56,462 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-10 22:42:56,462 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-10 22:42:56,462 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:56,463 INFO L85 PathProgramCache]: Analyzing trace with hash 1969343, now seen corresponding path program 7 times [2024-11-10 22:42:56,463 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:56,463 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [619296683] [2024-11-10 22:42:56,463 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:56,463 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:56,467 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:56,467 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:42:56,468 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:56,470 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:42:56,543 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-10 22:42:56,543 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 38 interpolants. [2024-11-10 22:42:56,544 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=223, Invalid=1183, Unknown=0, NotChecked=0, Total=1406 [2024-11-10 22:42:56,544 INFO L87 Difference]: Start difference. First operand 177 states and 197 transitions. cyclomatic complexity: 26 Second operand has 38 states, 38 states have (on average 3.9473684210526314) internal successors, (150), 38 states have internal predecessors, (150), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:42:57,686 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-10 22:42:57,686 INFO L93 Difference]: Finished difference Result 420 states and 447 transitions. [2024-11-10 22:42:57,686 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 420 states and 447 transitions. [2024-11-10 22:42:57,688 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 12 [2024-11-10 22:42:57,689 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 420 states to 135 states and 144 transitions. [2024-11-10 22:42:57,689 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 66 [2024-11-10 22:42:57,689 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 66 [2024-11-10 22:42:57,689 INFO L73 IsDeterministic]: Start isDeterministic. Operand 135 states and 144 transitions. [2024-11-10 22:42:57,690 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-10 22:42:57,690 INFO L218 hiAutomatonCegarLoop]: Abstraction has 135 states and 144 transitions. [2024-11-10 22:42:57,690 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 135 states and 144 transitions. [2024-11-10 22:42:57,691 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 135 to 128. [2024-11-10 22:42:57,692 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 128 states, 128 states have (on average 1.0625) internal successors, (136), 127 states have internal predecessors, (136), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:42:57,692 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 128 states to 128 states and 136 transitions. [2024-11-10 22:42:57,692 INFO L240 hiAutomatonCegarLoop]: Abstraction has 128 states and 136 transitions. [2024-11-10 22:42:57,693 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 49 states. [2024-11-10 22:42:57,693 INFO L425 stractBuchiCegarLoop]: Abstraction has 128 states and 136 transitions. [2024-11-10 22:42:57,693 INFO L332 stractBuchiCegarLoop]: ======== Iteration 18 ============ [2024-11-10 22:42:57,693 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 128 states and 136 transitions. [2024-11-10 22:42:57,694 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 12 [2024-11-10 22:42:57,694 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-10 22:42:57,694 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-10 22:42:57,695 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [9, 8, 8, 8, 8, 8, 7, 7, 6, 6, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-10 22:42:57,695 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-10 22:42:57,695 INFO L745 eck$LassoCheckResult]: Stem: 6814#ULTIMATE.startENTRY 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; 6815#ULTIMATE.init_returnLabel#1 assume true;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; 6798#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; 6799#L18 assume true; 6817#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 6818#L18 assume true; 6838#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 6882#L18 assume true; 6880#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 6878#L18 assume true; 6876#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 6874#L18 assume true; 6872#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 6870#L18 assume true; 6868#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 6866#L18 assume true; 6854#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 6853#L18 assume true; 6816#L18-1 assume !(init_nondet_~i~0#1 < ~N~0); 6804#init_nondet_returnLabel#1 assume true;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; 6805#L29-6 assume true; 6843#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 6792#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6793#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6840#L29-6 assume true; 6833#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 6834#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6841#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6830#L29-6 assume true; 6831#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 6794#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6795#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6884#L29-6 assume true; 6883#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 6881#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6879#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6877#L29-6 assume true; 6875#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 6873#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6871#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6869#L29-6 assume true; 6867#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 6865#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6856#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6858#L29-6 assume true; 6857#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 6855#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; 6850#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6852#L29-6 assume true; 6851#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 6849#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; 6848#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6828#L29-6 assume true; 6829#L29-8 assume !(rangesum_~i~1#1 < ~N~0); 6808#L35-2 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); 6809#L38-2 assume true;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; 6832#L29-3 assume true; 6800#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 6801#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6819#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6820#L29-3 assume true; 6839#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 6895#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6821#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6822#L29-3 assume true; 6802#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 6803#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6837#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6894#L29-3 assume true; 6893#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 6892#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6891#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6890#L29-3 assume true; 6889#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 6888#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6887#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6864#L29-3 assume true; 6886#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 6885#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6863#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6862#L29-3 assume true; 6861#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 6835#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 6836#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6860#L29-3 assume true; 6859#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 6845#L30-1 [2024-11-10 22:42:57,695 INFO L747 eck$LassoCheckResult]: Loop: 6845#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 6847#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6846#L29-3 assume true; 6844#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 6845#L30-1 [2024-11-10 22:42:57,695 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:57,696 INFO L85 PathProgramCache]: Analyzing trace with hash -1567328716, now seen corresponding path program 6 times [2024-11-10 22:42:57,696 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:57,696 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2092301705] [2024-11-10 22:42:57,696 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:57,696 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:57,717 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:42:58,080 INFO L134 CoverageAnalysis]: Checked inductivity of 282 backedges. 30 proven. 99 refuted. 0 times theorem prover too weak. 153 trivial. 0 not checked. [2024-11-10 22:42:58,081 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-10 22:42:58,081 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2092301705] [2024-11-10 22:42:58,081 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2092301705] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-10 22:42:58,081 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [467479596] [2024-11-10 22:42:58,081 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-10 22:42:58,081 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-10 22:42:58,082 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:42:58,085 INFO L229 MonitoredProcess]: Starting monitored process 101 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-10 22:42:58,086 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (101)] Waiting until timeout for monitored process [2024-11-10 22:42:58,484 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 9 check-sat command(s) [2024-11-10 22:42:58,484 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-10 22:42:58,486 INFO L255 TraceCheckSpWp]: Trace formula consists of 279 conjuncts, 18 conjuncts are in the unsatisfiable core [2024-11-10 22:42:58,488 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-10 22:42:58,868 INFO L134 CoverageAnalysis]: Checked inductivity of 282 backedges. 128 proven. 56 refuted. 0 times theorem prover too weak. 98 trivial. 0 not checked. [2024-11-10 22:42:58,868 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-10 22:42:59,140 INFO L134 CoverageAnalysis]: Checked inductivity of 282 backedges. 128 proven. 56 refuted. 0 times theorem prover too weak. 98 trivial. 0 not checked. [2024-11-10 22:42:59,141 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [467479596] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-10 22:42:59,141 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-10 22:42:59,141 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 19, 19] total 39 [2024-11-10 22:42:59,141 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [231180587] [2024-11-10 22:42:59,141 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-10 22:42:59,141 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-10 22:42:59,141 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:59,141 INFO L85 PathProgramCache]: Analyzing trace with hash 1969343, now seen corresponding path program 8 times [2024-11-10 22:42:59,142 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:59,142 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1236360777] [2024-11-10 22:42:59,142 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:59,142 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:59,145 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:59,145 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:42:59,147 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:42:59,148 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:42:59,211 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-10 22:42:59,211 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 39 interpolants. [2024-11-10 22:42:59,212 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=232, Invalid=1250, Unknown=0, NotChecked=0, Total=1482 [2024-11-10 22:42:59,212 INFO L87 Difference]: Start difference. First operand 128 states and 136 transitions. cyclomatic complexity: 16 Second operand has 39 states, 39 states have (on average 3.230769230769231) internal successors, (126), 39 states have internal predecessors, (126), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:42:59,680 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-10 22:42:59,680 INFO L93 Difference]: Finished difference Result 173 states and 181 transitions. [2024-11-10 22:42:59,680 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 173 states and 181 transitions. [2024-11-10 22:42:59,681 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 12 [2024-11-10 22:42:59,682 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 173 states to 149 states and 157 transitions. [2024-11-10 22:42:59,682 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 76 [2024-11-10 22:42:59,682 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 76 [2024-11-10 22:42:59,682 INFO L73 IsDeterministic]: Start isDeterministic. Operand 149 states and 157 transitions. [2024-11-10 22:42:59,683 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-10 22:42:59,683 INFO L218 hiAutomatonCegarLoop]: Abstraction has 149 states and 157 transitions. [2024-11-10 22:42:59,683 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 149 states and 157 transitions. [2024-11-10 22:42:59,684 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 149 to 138. [2024-11-10 22:42:59,687 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 138 states, 138 states have (on average 1.0579710144927537) internal successors, (146), 137 states have internal predecessors, (146), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:42:59,687 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 138 states to 138 states and 146 transitions. [2024-11-10 22:42:59,688 INFO L240 hiAutomatonCegarLoop]: Abstraction has 138 states and 146 transitions. [2024-11-10 22:42:59,688 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2024-11-10 22:42:59,689 INFO L425 stractBuchiCegarLoop]: Abstraction has 138 states and 146 transitions. [2024-11-10 22:42:59,689 INFO L332 stractBuchiCegarLoop]: ======== Iteration 19 ============ [2024-11-10 22:42:59,689 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 138 states and 146 transitions. [2024-11-10 22:42:59,690 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 12 [2024-11-10 22:42:59,690 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-10 22:42:59,690 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-10 22:42:59,690 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [10, 9, 9, 9, 9, 9, 8, 8, 6, 6, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-10 22:42:59,691 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-10 22:42:59,691 INFO L745 eck$LassoCheckResult]: Stem: 7709#ULTIMATE.startENTRY 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; 7710#ULTIMATE.init_returnLabel#1 assume true;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; 7693#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; 7694#L18 assume true; 7712#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 7713#L18 assume true; 7730#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 7775#L18 assume true; 7773#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 7771#L18 assume true; 7769#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 7767#L18 assume true; 7766#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 7764#L18 assume true; 7762#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~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 assume true; 7757#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 7755#L18 assume true; 7744#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 7743#L18 assume true; 7711#L18-1 assume !(init_nondet_~i~0#1 < ~N~0); 7695#init_nondet_returnLabel#1 assume true;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; 7696#L29-6 assume true; 7737#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7687#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7688#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7733#L29-6 assume true; 7800#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7799#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7734#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7723#L29-6 assume true; 7724#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7689#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7690#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7798#L29-6 assume true; 7797#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7796#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7795#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7794#L29-6 assume true; 7793#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7792#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7791#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7790#L29-6 assume true; 7789#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7788#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7785#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7787#L29-6 assume true; 7786#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7784#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; 7783#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7782#L29-6 assume true; 7781#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7780#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; 7746#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7754#L29-6 assume true; 7747#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7745#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; 7742#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7721#L29-6 assume true; 7722#L29-8 assume !(rangesum_~i~1#1 < ~N~0); 7703#L35-2 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); 7704#L38-2 assume true;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; 7725#L29-3 assume true; 7697#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 7698#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7714#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7715#L29-3 assume true; 7699#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 7700#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7716#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7717#L29-3 assume true; 7731#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 7728#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7729#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7779#L29-3 assume true; 7778#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 7777#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7776#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7774#L29-3 assume true; 7772#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 7770#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7768#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7761#L29-3 assume true; 7765#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 7763#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7760#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7758#L29-3 assume true; 7756#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 7726#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 7727#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7753#L29-3 assume true; 7752#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 7751#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 7750#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7749#L29-3 assume true; 7748#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 7739#L30-1 [2024-11-10 22:42:59,691 INFO L747 eck$LassoCheckResult]: Loop: 7739#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 7741#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7740#L29-3 assume true; 7738#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 7739#L30-1 [2024-11-10 22:42:59,691 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:42:59,692 INFO L85 PathProgramCache]: Analyzing trace with hash -1745703695, now seen corresponding path program 7 times [2024-11-10 22:42:59,692 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:42:59,692 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1524729160] [2024-11-10 22:42:59,692 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:42:59,692 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:42:59,718 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:43:00,268 INFO L134 CoverageAnalysis]: Checked inductivity of 362 backedges. 122 proven. 91 refuted. 0 times theorem prover too weak. 149 trivial. 0 not checked. [2024-11-10 22:43:00,268 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-10 22:43:00,268 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1524729160] [2024-11-10 22:43:00,269 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1524729160] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-10 22:43:00,269 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [449907724] [2024-11-10 22:43:00,269 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2024-11-10 22:43:00,269 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-10 22:43:00,269 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:43:00,271 INFO L229 MonitoredProcess]: Starting monitored process 102 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-10 22:43:00,272 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (102)] Waiting until timeout for monitored process [2024-11-10 22:43:00,375 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:43:00,376 INFO L255 TraceCheckSpWp]: Trace formula consists of 317 conjuncts, 20 conjuncts are in the unsatisfiable core [2024-11-10 22:43:00,377 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-10 22:43:00,765 INFO L134 CoverageAnalysis]: Checked inductivity of 362 backedges. 162 proven. 72 refuted. 0 times theorem prover too weak. 128 trivial. 0 not checked. [2024-11-10 22:43:00,765 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-10 22:43:01,185 INFO L134 CoverageAnalysis]: Checked inductivity of 362 backedges. 162 proven. 72 refuted. 0 times theorem prover too weak. 128 trivial. 0 not checked. [2024-11-10 22:43:01,185 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [449907724] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-10 22:43:01,185 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-10 22:43:01,185 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 21, 21] total 47 [2024-11-10 22:43:01,185 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1824948503] [2024-11-10 22:43:01,185 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-10 22:43:01,186 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-10 22:43:01,186 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:43:01,186 INFO L85 PathProgramCache]: Analyzing trace with hash 1969343, now seen corresponding path program 9 times [2024-11-10 22:43:01,186 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:43:01,186 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1832839357] [2024-11-10 22:43:01,186 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:43:01,186 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:43:01,190 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:43:01,190 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:43:01,192 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:43:01,193 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:43:01,247 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-10 22:43:01,248 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 47 interpolants. [2024-11-10 22:43:01,248 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=380, Invalid=1782, Unknown=0, NotChecked=0, Total=2162 [2024-11-10 22:43:01,249 INFO L87 Difference]: Start difference. First operand 138 states and 146 transitions. cyclomatic complexity: 16 Second operand has 47 states, 47 states have (on average 3.106382978723404) internal successors, (146), 47 states have internal predecessors, (146), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:43:01,538 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-10 22:43:01,538 INFO L93 Difference]: Finished difference Result 166 states and 174 transitions. [2024-11-10 22:43:01,538 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 166 states and 174 transitions. [2024-11-10 22:43:01,539 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 12 [2024-11-10 22:43:01,540 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 166 states to 141 states and 149 transitions. [2024-11-10 22:43:01,540 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 69 [2024-11-10 22:43:01,540 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 69 [2024-11-10 22:43:01,540 INFO L73 IsDeterministic]: Start isDeterministic. Operand 141 states and 149 transitions. [2024-11-10 22:43:01,540 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-10 22:43:01,540 INFO L218 hiAutomatonCegarLoop]: Abstraction has 141 states and 149 transitions. [2024-11-10 22:43:01,540 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 141 states and 149 transitions. [2024-11-10 22:43:01,542 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 141 to 140. [2024-11-10 22:43:01,542 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 140 states, 140 states have (on average 1.0571428571428572) internal successors, (148), 139 states have internal predecessors, (148), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:43:01,542 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 140 states to 140 states and 148 transitions. [2024-11-10 22:43:01,543 INFO L240 hiAutomatonCegarLoop]: Abstraction has 140 states and 148 transitions. [2024-11-10 22:43:01,544 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2024-11-10 22:43:01,544 INFO L425 stractBuchiCegarLoop]: Abstraction has 140 states and 148 transitions. [2024-11-10 22:43:01,544 INFO L332 stractBuchiCegarLoop]: ======== Iteration 20 ============ [2024-11-10 22:43:01,544 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 140 states and 148 transitions. [2024-11-10 22:43:01,545 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 12 [2024-11-10 22:43:01,545 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-10 22:43:01,545 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-10 22:43:01,546 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [10, 10, 9, 9, 9, 9, 9, 8, 6, 6, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-10 22:43:01,546 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-10 22:43:01,546 INFO L745 eck$LassoCheckResult]: Stem: 8646#ULTIMATE.startENTRY 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; 8647#ULTIMATE.init_returnLabel#1 assume true;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; 8627#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; 8628#L18 assume true; 8644#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 8645#L18 assume true; 8662#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 8736#L18 assume true; 8735#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 8734#L18 assume true; 8733#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 8732#L18 assume true; 8731#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 8730#L18 assume true; 8729#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 8728#L18 assume true; 8727#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 8726#L18 assume true; 8725#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 8724#L18 assume true; 8675#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 8674#L18 assume true; 8643#L18-1 assume !(init_nondet_~i~0#1 < ~N~0); 8629#init_nondet_returnLabel#1 assume true;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; 8630#L29-6 assume true; 8665#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8621#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8622#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8659#L29-6 assume true; 8660#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8623#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8624#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8663#L29-6 assume true; 8723#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8722#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8720#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8718#L29-6 assume true; 8716#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8714#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8712#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8710#L29-6 assume true; 8708#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8706#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8704#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8702#L29-6 assume true; 8700#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8699#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8691#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8696#L29-6 assume true; 8693#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8690#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; 8688#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8686#L29-6 assume true; 8684#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8682#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; 8677#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8679#L29-6 assume true; 8678#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8676#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; 8673#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8657#L29-6 assume true; 8658#L29-8 assume !(rangesum_~i~1#1 < ~N~0); 8637#L35-2 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); 8638#L38-2 assume true;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; 8661#L29-3 assume true; 8631#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 8632#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8648#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8649#L29-3 assume true; 8633#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 8634#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8650#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8651#L29-3 assume true; 8721#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 8719#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8717#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8715#L29-3 assume true; 8713#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 8711#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8709#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8707#L29-3 assume true; 8705#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 8703#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8701#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8695#L29-3 assume true; 8698#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 8697#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8694#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8692#L29-3 assume true; 8689#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 8687#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 8685#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8683#L29-3 assume true; 8681#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 8680#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 8672#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8671#L29-3 assume true; 8670#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 8667#L30-1 [2024-11-10 22:43:01,547 INFO L747 eck$LassoCheckResult]: Loop: 8667#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 8669#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8668#L29-3 assume true; 8666#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 8667#L30-1 [2024-11-10 22:43:01,547 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:43:01,547 INFO L85 PathProgramCache]: Analyzing trace with hash 1899139314, now seen corresponding path program 8 times [2024-11-10 22:43:01,547 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:43:01,547 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [137264921] [2024-11-10 22:43:01,548 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:43:01,548 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:43:01,585 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:43:01,956 INFO L134 CoverageAnalysis]: Checked inductivity of 380 backedges. 56 proven. 141 refuted. 0 times theorem prover too weak. 183 trivial. 0 not checked. [2024-11-10 22:43:01,957 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-10 22:43:01,957 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [137264921] [2024-11-10 22:43:01,957 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [137264921] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-10 22:43:01,957 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1138817275] [2024-11-10 22:43:01,957 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-10 22:43:01,957 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-10 22:43:01,958 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:43:01,960 INFO L229 MonitoredProcess]: Starting monitored process 103 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-10 22:43:01,961 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (103)] Waiting until timeout for monitored process [2024-11-10 22:43:02,092 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-10 22:43:02,092 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-10 22:43:02,094 INFO L255 TraceCheckSpWp]: Trace formula consists of 329 conjuncts, 19 conjuncts are in the unsatisfiable core [2024-11-10 22:43:02,096 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-10 22:43:02,634 INFO L134 CoverageAnalysis]: Checked inductivity of 380 backedges. 118 proven. 90 refuted. 0 times theorem prover too weak. 172 trivial. 0 not checked. [2024-11-10 22:43:02,634 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-10 22:43:03,527 INFO L134 CoverageAnalysis]: Checked inductivity of 380 backedges. 118 proven. 90 refuted. 0 times theorem prover too weak. 172 trivial. 0 not checked. [2024-11-10 22:43:03,528 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1138817275] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-10 22:43:03,528 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-10 22:43:03,528 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 19, 19] total 51 [2024-11-10 22:43:03,528 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [777637504] [2024-11-10 22:43:03,528 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-10 22:43:03,529 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-10 22:43:03,529 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:43:03,529 INFO L85 PathProgramCache]: Analyzing trace with hash 1969343, now seen corresponding path program 10 times [2024-11-10 22:43:03,529 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:43:03,530 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1216331470] [2024-11-10 22:43:03,530 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:43:03,530 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:43:03,533 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:43:03,533 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:43:03,535 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:43:03,537 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:43:03,603 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-10 22:43:03,604 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 51 interpolants. [2024-11-10 22:43:03,604 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=446, Invalid=2104, Unknown=0, NotChecked=0, Total=2550 [2024-11-10 22:43:03,605 INFO L87 Difference]: Start difference. First operand 140 states and 148 transitions. cyclomatic complexity: 16 Second operand has 51 states, 51 states have (on average 3.0784313725490198) internal successors, (157), 51 states have internal predecessors, (157), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:43:04,385 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-10 22:43:04,385 INFO L93 Difference]: Finished difference Result 193 states and 201 transitions. [2024-11-10 22:43:04,385 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 193 states and 201 transitions. [2024-11-10 22:43:04,386 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 12 [2024-11-10 22:43:04,387 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 193 states to 165 states and 173 transitions. [2024-11-10 22:43:04,387 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 84 [2024-11-10 22:43:04,387 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 84 [2024-11-10 22:43:04,387 INFO L73 IsDeterministic]: Start isDeterministic. Operand 165 states and 173 transitions. [2024-11-10 22:43:04,387 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-10 22:43:04,387 INFO L218 hiAutomatonCegarLoop]: Abstraction has 165 states and 173 transitions. [2024-11-10 22:43:04,388 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 165 states and 173 transitions. [2024-11-10 22:43:04,389 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 165 to 150. [2024-11-10 22:43:04,390 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 150 states, 150 states have (on average 1.0533333333333332) internal successors, (158), 149 states have internal predecessors, (158), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:43:04,390 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 150 states to 150 states and 158 transitions. [2024-11-10 22:43:04,390 INFO L240 hiAutomatonCegarLoop]: Abstraction has 150 states and 158 transitions. [2024-11-10 22:43:04,391 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 33 states. [2024-11-10 22:43:04,391 INFO L425 stractBuchiCegarLoop]: Abstraction has 150 states and 158 transitions. [2024-11-10 22:43:04,391 INFO L332 stractBuchiCegarLoop]: ======== Iteration 21 ============ [2024-11-10 22:43:04,391 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 150 states and 158 transitions. [2024-11-10 22:43:04,392 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 12 [2024-11-10 22:43:04,392 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-10 22:43:04,392 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-10 22:43:04,393 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [11, 11, 10, 10, 10, 10, 10, 9, 6, 6, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-10 22:43:04,393 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-10 22:43:04,393 INFO L745 eck$LassoCheckResult]: Stem: 9668#ULTIMATE.startENTRY 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; 9669#ULTIMATE.init_returnLabel#1 assume true;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; 9652#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; 9653#L18 assume true; 9671#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 9672#L18 assume true; 9688#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 9742#L18 assume true; 9740#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 9738#L18 assume true; 9736#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 9734#L18 assume true; 9732#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 9730#L18 assume true; 9728#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 9726#L18 assume true; 9724#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 9722#L18 assume true; 9720#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 9719#L18 assume true; 9717#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 9715#L18 assume true; 9702#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 9701#L18 assume true; 9670#L18-1 assume !(init_nondet_~i~0#1 < ~N~0); 9658#init_nondet_returnLabel#1 assume true;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; 9659#L29-6 assume true; 9692#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9646#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9647#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9682#L29-6 assume true; 9683#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9648#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9649#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9691#L29-6 assume true; 9685#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9686#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9769#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9768#L29-6 assume true; 9767#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9766#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9765#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9764#L29-6 assume true; 9763#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9762#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9761#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-6 assume true; 9759#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9758#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9755#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9757#L29-6 assume true; 9756#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9754#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; 9753#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9752#L29-6 assume true; 9751#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9750#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; 9749#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9748#L29-6 assume true; 9747#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9746#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; 9699#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9745#L29-6 assume true; 9700#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9698#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; 9697#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9680#L29-6 assume true; 9681#L29-8 assume !(rangesum_~i~1#1 < ~N~0); 9662#L35-2 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); 9663#L38-2 assume true;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; 9684#L29-3 assume true; 9744#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 9743#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9673#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9674#L29-3 assume true; 9656#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 9657#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9675#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9676#L29-3 assume true; 9741#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 9739#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9737#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9735#L29-3 assume true; 9733#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 9731#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9729#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9727#L29-3 assume true; 9725#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 9723#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9721#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9714#L29-3 assume true; 9718#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 9716#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9713#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9689#L29-3 assume true; 9654#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 9655#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 9687#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9712#L29-3 assume true; 9711#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 9710#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 9709#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9708#L29-3 assume true; 9707#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 9706#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 9705#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9704#L29-3 assume true; 9703#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 9694#L30-1 [2024-11-10 22:43:04,393 INFO L747 eck$LassoCheckResult]: Loop: 9694#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 9696#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9695#L29-3 assume true; 9693#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 9694#L30-1 [2024-11-10 22:43:04,394 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:43:04,394 INFO L85 PathProgramCache]: Analyzing trace with hash -938061777, now seen corresponding path program 9 times [2024-11-10 22:43:04,394 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:43:04,394 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [178182028] [2024-11-10 22:43:04,394 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:43:04,394 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:43:04,473 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unknown [2024-11-10 22:43:04,475 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [458768884] [2024-11-10 22:43:04,475 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-10 22:43:04,475 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-10 22:43:04,475 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:43:04,477 INFO L229 MonitoredProcess]: Starting monitored process 104 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-10 22:43:04,479 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (104)] Waiting until timeout for monitored process [2024-11-10 22:43:04,737 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 11 check-sat command(s) [2024-11-10 22:43:04,737 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-10 22:43:04,737 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:43:04,810 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:43:04,840 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:43:04,840 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:43:04,840 INFO L85 PathProgramCache]: Analyzing trace with hash 1969343, now seen corresponding path program 11 times [2024-11-10 22:43:04,840 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:43:04,841 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1563420896] [2024-11-10 22:43:04,841 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:43:04,841 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:43:04,845 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:43:04,846 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:43:04,847 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:43:04,849 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:43:04,849 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:43:04,849 INFO L85 PathProgramCache]: Analyzing trace with hash 924095981, now seen corresponding path program 10 times [2024-11-10 22:43:04,850 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:43:04,850 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [838904294] [2024-11-10 22:43:04,850 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:43:04,850 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:43:04,884 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:43:05,364 INFO L134 CoverageAnalysis]: Checked inductivity of 510 backedges. 162 proven. 148 refuted. 0 times theorem prover too weak. 200 trivial. 0 not checked. [2024-11-10 22:43:05,364 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-10 22:43:05,365 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [838904294] [2024-11-10 22:43:05,365 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [838904294] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-10 22:43:05,365 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1853081015] [2024-11-10 22:43:05,365 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-10 22:43:05,365 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-10 22:43:05,365 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:43:05,366 INFO L229 MonitoredProcess]: Starting monitored process 105 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-10 22:43:05,367 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (105)] Waiting until timeout for monitored process [2024-11-10 22:43:05,490 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-10 22:43:05,490 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-10 22:43:05,492 INFO L255 TraceCheckSpWp]: Trace formula consists of 337 conjuncts, 24 conjuncts are in the unsatisfiable core [2024-11-10 22:43:05,493 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-10 22:43:06,094 INFO L134 CoverageAnalysis]: Checked inductivity of 510 backedges. 200 proven. 200 refuted. 0 times theorem prover too weak. 110 trivial. 0 not checked. [2024-11-10 22:43:06,094 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-10 22:43:06,543 INFO L134 CoverageAnalysis]: Checked inductivity of 510 backedges. 200 proven. 200 refuted. 0 times theorem prover too weak. 110 trivial. 0 not checked. [2024-11-10 22:43:06,544 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1853081015] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-10 22:43:06,544 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-10 22:43:06,544 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [24, 24, 24] total 47 [2024-11-10 22:43:06,544 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1056190092] [2024-11-10 22:43:06,544 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-10 22:43:06,594 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-10 22:43:06,595 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 48 interpolants. [2024-11-10 22:43:06,595 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=404, Invalid=1852, Unknown=0, NotChecked=0, Total=2256 [2024-11-10 22:43:06,596 INFO L87 Difference]: Start difference. First operand 150 states and 158 transitions. cyclomatic complexity: 16 Second operand has 48 states, 47 states have (on average 3.6382978723404253) internal successors, (171), 48 states have internal predecessors, (171), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:43:07,630 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-10 22:43:07,630 INFO L93 Difference]: Finished difference Result 648 states and 687 transitions. [2024-11-10 22:43:07,630 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 648 states and 687 transitions. [2024-11-10 22:43:07,634 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 12 [2024-11-10 22:43:07,635 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 648 states to 419 states and 449 transitions. [2024-11-10 22:43:07,635 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 216 [2024-11-10 22:43:07,636 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 294 [2024-11-10 22:43:07,636 INFO L73 IsDeterministic]: Start isDeterministic. Operand 419 states and 449 transitions. [2024-11-10 22:43:07,636 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-10 22:43:07,636 INFO L218 hiAutomatonCegarLoop]: Abstraction has 419 states and 449 transitions. [2024-11-10 22:43:07,637 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 419 states and 449 transitions. [2024-11-10 22:43:07,640 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 419 to 378. [2024-11-10 22:43:07,641 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 378 states, 378 states have (on average 1.0740740740740742) internal successors, (406), 377 states have internal predecessors, (406), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:43:07,642 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 378 states to 378 states and 406 transitions. [2024-11-10 22:43:07,642 INFO L240 hiAutomatonCegarLoop]: Abstraction has 378 states and 406 transitions. [2024-11-10 22:43:07,643 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 60 states. [2024-11-10 22:43:07,643 INFO L425 stractBuchiCegarLoop]: Abstraction has 378 states and 406 transitions. [2024-11-10 22:43:07,643 INFO L332 stractBuchiCegarLoop]: ======== Iteration 22 ============ [2024-11-10 22:43:07,643 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 378 states and 406 transitions. [2024-11-10 22:43:07,645 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 12 [2024-11-10 22:43:07,645 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-10 22:43:07,645 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-10 22:43:07,646 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [15, 15, 14, 12, 12, 11, 11, 11, 11, 6, 5, 3, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-10 22:43:07,646 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-10 22:43:07,646 INFO L745 eck$LassoCheckResult]: Stem: 11235#ULTIMATE.startENTRY 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; 11236#ULTIMATE.init_returnLabel#1 assume true;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; 11219#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; 11220#L18 assume true; 11257#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 11258#L18 assume true; 11238#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 11239#L18 assume true; 11284#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 11283#L18 assume true; 11282#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 11281#L18 assume true; 11280#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 11279#L18 assume true; 11278#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 11277#L18 assume true; 11276#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 11275#L18 assume true; 11274#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 11273#L18 assume true; 11272#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 11271#L18 assume true; 11270#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 11269#L18 assume true; 11268#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 11267#L18 assume true; 11237#L18-1 assume !(init_nondet_~i~0#1 < ~N~0); 11221#init_nondet_returnLabel#1 assume true;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; 11222#L29-6 assume true; 11355#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 11354#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 11353#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11352#L29-6 assume true; 11350#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 11348#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 11263#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11251#L29-6 assume true; 11252#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 11215#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 11216#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11344#L29-6 assume true; 11343#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 11342#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 11341#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11340#L29-6 assume true; 11339#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 11338#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 11337#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11336#L29-6 assume true; 11335#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 11334#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 11333#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11332#L29-6 assume true; 11331#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 11329#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; 11330#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11517#L29-6 assume true; 11516#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 11515#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; 11514#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11513#L29-6 assume true; 11512#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 11511#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; 11510#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11508#L29-6 assume true; 11506#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 11504#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; 11502#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11501#L29-6 assume true; 11500#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 11293#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; 11290#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11287#L29-6 assume true; 11266#L29-8 assume !(rangesum_~i~1#1 < ~N~0); 11229#L35-2 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); 11230#L38-2 assume true;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; 11253#L29-3 assume true; 11405#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 11404#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 11403#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11402#L29-3 assume true; 11401#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 11400#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 11399#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11398#L29-3 assume true; 11397#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 11396#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 11395#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11394#L29-3 assume true; 11393#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 11392#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 11391#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11390#L29-3 assume true; 11389#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 11388#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 11387#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11386#L29-3 assume true; 11385#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 11384#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 11382#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11383#L29-3 assume true; 11465#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 11463#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 11460#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11457#L29-3 assume true; 11455#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 11453#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 11450#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11451#L29-3 assume true; 11464#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 11462#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 11458#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11459#L29-3 assume true; 11493#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 11492#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 11491#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11243#L29-3 assume true; 11225#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 11226#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 11242#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11244#L29-3 assume true; 11490#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 11488#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 11240#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11241#L29-3 assume true; 11489#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 11487#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 11486#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11484#L29-3 assume true; 11482#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 11480#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 11478#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11476#L29-3 assume true; 11347#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 11291#L30-1 [2024-11-10 22:43:07,646 INFO L747 eck$LassoCheckResult]: Loop: 11291#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 11292#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11285#L29-3 assume true; 11286#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 11291#L30-1 [2024-11-10 22:43:07,647 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:43:07,647 INFO L85 PathProgramCache]: Analyzing trace with hash 1199633023, now seen corresponding path program 11 times [2024-11-10 22:43:07,647 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:43:07,647 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1460095804] [2024-11-10 22:43:07,647 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:43:07,647 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:43:07,676 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:43:08,298 INFO L134 CoverageAnalysis]: Checked inductivity of 766 backedges. 332 proven. 245 refuted. 0 times theorem prover too weak. 189 trivial. 0 not checked. [2024-11-10 22:43:08,299 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-10 22:43:08,299 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1460095804] [2024-11-10 22:43:08,299 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1460095804] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-10 22:43:08,299 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [524578209] [2024-11-10 22:43:08,299 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-10 22:43:08,299 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-10 22:43:08,299 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:43:08,301 INFO L229 MonitoredProcess]: Starting monitored process 106 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-10 22:43:08,303 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (106)] Waiting until timeout for monitored process [2024-11-10 22:43:08,498 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 15 check-sat command(s) [2024-11-10 22:43:08,499 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-10 22:43:08,500 INFO L255 TraceCheckSpWp]: Trace formula consists of 417 conjuncts, 20 conjuncts are in the unsatisfiable core [2024-11-10 22:43:08,502 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-10 22:43:08,878 INFO L134 CoverageAnalysis]: Checked inductivity of 766 backedges. 371 proven. 206 refuted. 0 times theorem prover too weak. 189 trivial. 0 not checked. [2024-11-10 22:43:08,878 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-10 22:43:09,534 INFO L134 CoverageAnalysis]: Checked inductivity of 766 backedges. 371 proven. 206 refuted. 0 times theorem prover too weak. 189 trivial. 0 not checked. [2024-11-10 22:43:09,534 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [524578209] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-10 22:43:09,534 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-10 22:43:09,534 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [21, 21, 21] total 43 [2024-11-10 22:43:09,534 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2030910391] [2024-11-10 22:43:09,534 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-10 22:43:09,535 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-10 22:43:09,535 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:43:09,535 INFO L85 PathProgramCache]: Analyzing trace with hash 1969343, now seen corresponding path program 12 times [2024-11-10 22:43:09,535 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:43:09,535 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2092866847] [2024-11-10 22:43:09,535 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:43:09,535 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:43:09,539 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:43:09,539 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:43:09,540 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:43:09,542 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:43:09,601 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-10 22:43:09,602 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 43 interpolants. [2024-11-10 22:43:09,602 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=462, Invalid=1344, Unknown=0, NotChecked=0, Total=1806 [2024-11-10 22:43:09,603 INFO L87 Difference]: Start difference. First operand 378 states and 406 transitions. cyclomatic complexity: 36 Second operand has 43 states, 43 states have (on average 4.255813953488372) internal successors, (183), 43 states have internal predecessors, (183), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:43:10,950 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-10 22:43:10,950 INFO L93 Difference]: Finished difference Result 633 states and 672 transitions. [2024-11-10 22:43:10,951 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 633 states and 672 transitions. [2024-11-10 22:43:10,955 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 12 [2024-11-10 22:43:10,956 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 633 states to 239 states and 249 transitions. [2024-11-10 22:43:10,956 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 110 [2024-11-10 22:43:10,956 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 110 [2024-11-10 22:43:10,956 INFO L73 IsDeterministic]: Start isDeterministic. Operand 239 states and 249 transitions. [2024-11-10 22:43:10,956 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-10 22:43:10,957 INFO L218 hiAutomatonCegarLoop]: Abstraction has 239 states and 249 transitions. [2024-11-10 22:43:10,957 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 239 states and 249 transitions. [2024-11-10 22:43:10,959 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 239 to 212. [2024-11-10 22:43:10,960 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 212 states, 212 states have (on average 1.0377358490566038) internal successors, (220), 211 states have internal predecessors, (220), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:43:10,961 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 212 states to 212 states and 220 transitions. [2024-11-10 22:43:10,961 INFO L240 hiAutomatonCegarLoop]: Abstraction has 212 states and 220 transitions. [2024-11-10 22:43:10,961 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 64 states. [2024-11-10 22:43:10,962 INFO L425 stractBuchiCegarLoop]: Abstraction has 212 states and 220 transitions. [2024-11-10 22:43:10,962 INFO L332 stractBuchiCegarLoop]: ======== Iteration 23 ============ [2024-11-10 22:43:10,962 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 212 states and 220 transitions. [2024-11-10 22:43:10,964 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 12 [2024-11-10 22:43:10,964 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-10 22:43:10,964 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-10 22:43:10,965 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [16, 15, 15, 15, 15, 14, 12, 11, 11, 11, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-10 22:43:10,965 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-10 22:43:10,966 INFO L745 eck$LassoCheckResult]: Stem: 13174#ULTIMATE.startENTRY 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; 13175#ULTIMATE.init_returnLabel#1 assume true;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; 13158#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; 13159#L18 assume true; 13194#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 13195#L18 assume true; 13177#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 13178#L18 assume true; 13223#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 13222#L18 assume true; 13221#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 13220#L18 assume true; 13219#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 13218#L18 assume true; 13217#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 13216#L18 assume true; 13215#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 13214#L18 assume true; 13213#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 13212#L18 assume true; 13211#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 13210#L18 assume true; 13209#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 13208#L18 assume true; 13207#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 13206#L18 assume true; 13176#L18-1 assume !(init_nondet_~i~0#1 < ~N~0); 13164#init_nondet_returnLabel#1 assume true;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; 13165#L29-6 assume true; 13200#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13152#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13153#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13188#L29-6 assume true; 13189#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13154#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13155#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13199#L29-6 assume true; 13317#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13316#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13315#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13314#L29-6 assume true; 13313#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13312#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13311#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13310#L29-6 assume true; 13309#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13308#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13307#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13306#L29-6 assume true; 13305#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13304#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13303#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13302#L29-6 assume true; 13301#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13300#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13299#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13298#L29-6 assume true; 13297#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13296#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13295#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13294#L29-6 assume true; 13293#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13292#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13291#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13290#L29-6 assume true; 13289#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13288#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13287#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13286#L29-6 assume true; 13285#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13284#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13281#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13283#L29-6 assume true; 13282#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13280#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; 13279#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13278#L29-6 assume true; 13277#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13276#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; 13275#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13274#L29-6 assume true; 13273#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13272#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; 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; 13227#L29-6 assume true; 13226#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);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 13205#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13186#L29-6 assume true; 13187#L29-8 assume !(rangesum_~i~1#1 < ~N~0); 13168#L35-2 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); 13169#L38-2 assume true;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; 13190#L29-3 assume true; 13196#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 13238#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13179#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13180#L29-3 assume true; 13162#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 13163#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13181#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13182#L29-3 assume true; 13197#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 13192#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13193#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13271#L29-3 assume true; 13270#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 13269#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13268#L29-4 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 true; 13266#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 13265#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13264#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13263#L29-3 assume true; 13262#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 13261#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13260#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13259#L29-3 assume true; 13258#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 13257#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13256#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13255#L29-3 assume true; 13254#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 13253#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13252#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13251#L29-3 assume true; 13250#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 13249#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13248#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13247#L29-3 assume true; 13246#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 13245#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13244#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13241#L29-3 assume true; 13243#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 13242#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13240#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13239#L29-3 assume true; 13160#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 13161#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 13191#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13237#L29-3 assume true; 13236#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 13235#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 13234#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13233#L29-3 assume true; 13232#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 13231#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 13230#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13229#L29-3 assume true; 13228#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 13202#L30-1 [2024-11-10 22:43:10,966 INFO L747 eck$LassoCheckResult]: Loop: 13202#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 13204#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13203#L29-3 assume true; 13201#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 13202#L30-1 [2024-11-10 22:43:10,967 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:43:10,967 INFO L85 PathProgramCache]: Analyzing trace with hash 981521362, now seen corresponding path program 12 times [2024-11-10 22:43:10,967 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:43:10,967 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [848741289] [2024-11-10 22:43:10,967 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:43:10,968 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:43:11,009 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:43:11,537 INFO L134 CoverageAnalysis]: Checked inductivity of 974 backedges. 90 proven. 282 refuted. 0 times theorem prover too weak. 602 trivial. 0 not checked. [2024-11-10 22:43:11,537 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-10 22:43:11,537 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [848741289] [2024-11-10 22:43:11,537 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [848741289] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-10 22:43:11,538 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1191026478] [2024-11-10 22:43:11,538 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-10 22:43:11,538 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-10 22:43:11,538 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:43:11,540 INFO L229 MonitoredProcess]: Starting monitored process 107 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-10 22:43:11,541 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (107)] Waiting until timeout for monitored process [2024-11-10 22:43:11,994 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 16 check-sat command(s) [2024-11-10 22:43:11,995 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-10 22:43:11,999 INFO L255 TraceCheckSpWp]: Trace formula consists of 429 conjuncts, 29 conjuncts are in the unsatisfiable core [2024-11-10 22:43:12,001 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-10 22:43:12,639 INFO L134 CoverageAnalysis]: Checked inductivity of 974 backedges. 450 proven. 132 refuted. 0 times theorem prover too weak. 392 trivial. 0 not checked. [2024-11-10 22:43:12,640 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-10 22:43:13,288 INFO L134 CoverageAnalysis]: Checked inductivity of 974 backedges. 450 proven. 132 refuted. 0 times theorem prover too weak. 392 trivial. 0 not checked. [2024-11-10 22:43:13,288 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1191026478] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-10 22:43:13,288 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-10 22:43:13,288 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [20, 30, 30] total 67 [2024-11-10 22:43:13,289 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [387589310] [2024-11-10 22:43:13,289 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-10 22:43:13,289 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-10 22:43:13,289 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:43:13,289 INFO L85 PathProgramCache]: Analyzing trace with hash 1969343, now seen corresponding path program 13 times [2024-11-10 22:43:13,289 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:43:13,289 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [66112460] [2024-11-10 22:43:13,289 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:43:13,290 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:43:13,292 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:43:13,293 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:43:13,294 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:43:13,295 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:43:13,342 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-10 22:43:13,342 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 67 interpolants. [2024-11-10 22:43:13,343 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=711, Invalid=3711, Unknown=0, NotChecked=0, Total=4422 [2024-11-10 22:43:13,344 INFO L87 Difference]: Start difference. First operand 212 states and 220 transitions. cyclomatic complexity: 16 Second operand has 67 states, 67 states have (on average 3.1940298507462686) internal successors, (214), 67 states have internal predecessors, (214), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:43:14,569 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-10 22:43:14,569 INFO L93 Difference]: Finished difference Result 322 states and 332 transitions. [2024-11-10 22:43:14,569 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 322 states and 332 transitions. [2024-11-10 22:43:14,571 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 12 [2024-11-10 22:43:14,572 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 322 states to 247 states and 255 transitions. [2024-11-10 22:43:14,572 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 112 [2024-11-10 22:43:14,572 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 112 [2024-11-10 22:43:14,572 INFO L73 IsDeterministic]: Start isDeterministic. Operand 247 states and 255 transitions. [2024-11-10 22:43:14,572 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-10 22:43:14,572 INFO L218 hiAutomatonCegarLoop]: Abstraction has 247 states and 255 transitions. [2024-11-10 22:43:14,572 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 247 states and 255 transitions. [2024-11-10 22:43:14,575 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 247 to 228. [2024-11-10 22:43:14,575 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 228 states, 228 states have (on average 1.0350877192982457) internal successors, (236), 227 states have internal predecessors, (236), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:43:14,576 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 228 states to 228 states and 236 transitions. [2024-11-10 22:43:14,576 INFO L240 hiAutomatonCegarLoop]: Abstraction has 228 states and 236 transitions. [2024-11-10 22:43:14,579 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 58 states. [2024-11-10 22:43:14,579 INFO L425 stractBuchiCegarLoop]: Abstraction has 228 states and 236 transitions. [2024-11-10 22:43:14,579 INFO L332 stractBuchiCegarLoop]: ======== Iteration 24 ============ [2024-11-10 22:43:14,579 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 228 states and 236 transitions. [2024-11-10 22:43:14,580 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 12 [2024-11-10 22:43:14,580 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-10 22:43:14,580 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-10 22:43:14,581 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [17, 16, 16, 16, 16, 16, 15, 15, 11, 11, 5, 4, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-10 22:43:14,581 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-10 22:43:14,582 INFO L745 eck$LassoCheckResult]: Stem: 14781#ULTIMATE.startENTRY 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; 14782#ULTIMATE.init_returnLabel#1 assume true;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; 14762#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; 14763#L18 assume true; 14779#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14780#L18 assume true; 14798#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14876#L18 assume true; 14874#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14872#L18 assume true; 14870#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14868#L18 assume true; 14866#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14864#L18 assume true; 14862#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14860#L18 assume true; 14858#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~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 assume true; 14854#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14852#L18 assume true; 14850#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14848#L18 assume true; 14846#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14844#L18 assume true; 14842#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14841#L18 assume true; 14839#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14837#L18 assume true; 14834#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14833#L18 assume true; 14831#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~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 assume true; 14814#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14813#L18 assume true; 14778#L18-1 assume !(init_nondet_~i~0#1 < ~N~0); 14764#init_nondet_returnLabel#1 assume true;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; 14765#L29-6 assume true; 14804#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14756#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14757#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14792#L29-6 assume true; 14793#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14937#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14802#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14803#L29-6 assume true; 14795#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14758#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14759#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-6 assume true; 14935#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14934#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14933#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14932#L29-6 assume true; 14931#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14930#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14929#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14928#L29-6 assume true; 14927#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14926#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14925#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14924#L29-6 assume true; 14923#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14922#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14921#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14920#L29-6 assume true; 14919#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14918#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14917#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14916#L29-6 assume true; 14915#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14914#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14913#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14912#L29-6 assume true; 14911#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14910#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14909#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14908#L29-6 assume true; 14907#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14906#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14903#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14905#L29-6 assume true; 14904#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14902#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; 14901#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14900#L29-6 assume true; 14899#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14898#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; 14897#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14896#L29-6 assume true; 14895#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14894#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; 14893#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14892#L29-6 assume true; 14891#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14890#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; 14816#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14888#L29-6 assume true; 14817#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14815#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; 14812#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14790#L29-6 assume true; 14791#L29-8 assume !(rangesum_~i~1#1 < ~N~0); 14772#L35-2 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); 14773#L38-2 assume true;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; 14794#L29-3 assume true; 14832#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 14830#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14783#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14784#L29-3 assume true; 14800#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 14889#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14785#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14786#L29-3 assume true; 14768#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 14769#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14797#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14887#L29-3 assume true; 14886#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 14885#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14884#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14883#L29-3 assume true; 14882#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 14881#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14880#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14879#L29-3 assume true; 14878#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 14877#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14875#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14873#L29-3 assume true; 14871#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 14869#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14867#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14865#L29-3 assume true; 14863#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 14861#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14859#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14857#L29-3 assume true; 14855#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 14853#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14851#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14849#L29-3 assume true; 14847#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 14845#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14843#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14836#L29-3 assume true; 14840#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 14838#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14835#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14799#L29-3 assume true; 14766#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 14767#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 14796#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14828#L29-3 assume true; 14827#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 14826#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 14825#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14824#L29-3 assume true; 14823#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 14822#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 14821#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14820#L29-3 assume true; 14819#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 14818#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 14811#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14810#L29-3 assume true; 14809#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 14806#L30-1 [2024-11-10 22:43:14,583 INFO L747 eck$LassoCheckResult]: Loop: 14806#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 14808#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14807#L29-3 assume true; 14805#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 14806#L30-1 [2024-11-10 22:43:14,583 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:43:14,583 INFO L85 PathProgramCache]: Analyzing trace with hash -1045259950, now seen corresponding path program 13 times [2024-11-10 22:43:14,584 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:43:14,584 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [548754144] [2024-11-10 22:43:14,584 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:43:14,584 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:43:14,622 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:43:16,694 INFO L134 CoverageAnalysis]: Checked inductivity of 1202 backedges. 728 proven. 438 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2024-11-10 22:43:16,695 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-10 22:43:16,695 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [548754144] [2024-11-10 22:43:16,695 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [548754144] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-10 22:43:16,695 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1199493487] [2024-11-10 22:43:16,695 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2024-11-10 22:43:16,696 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-10 22:43:16,696 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:43:16,697 INFO L229 MonitoredProcess]: Starting monitored process 108 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-10 22:43:16,698 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (108)] Waiting until timeout for monitored process [2024-11-10 22:43:16,862 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:43:16,864 INFO L255 TraceCheckSpWp]: Trace formula consists of 503 conjuncts, 34 conjuncts are in the unsatisfiable core [2024-11-10 22:43:16,867 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-10 22:43:18,151 INFO L134 CoverageAnalysis]: Checked inductivity of 1202 backedges. 512 proven. 240 refuted. 0 times theorem prover too weak. 450 trivial. 0 not checked. [2024-11-10 22:43:18,151 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-10 22:43:19,368 INFO L134 CoverageAnalysis]: Checked inductivity of 1202 backedges. 512 proven. 240 refuted. 0 times theorem prover too weak. 450 trivial. 0 not checked. [2024-11-10 22:43:19,368 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1199493487] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-10 22:43:19,368 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-10 22:43:19,368 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [50, 35, 35] total 99 [2024-11-10 22:43:19,368 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1601259120] [2024-11-10 22:43:19,368 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-10 22:43:19,369 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-10 22:43:19,369 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:43:19,369 INFO L85 PathProgramCache]: Analyzing trace with hash 1969343, now seen corresponding path program 14 times [2024-11-10 22:43:19,369 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:43:19,369 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1453999384] [2024-11-10 22:43:19,369 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:43:19,369 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:43:19,372 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:43:19,372 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:43:19,373 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:43:19,375 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:43:19,428 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-10 22:43:19,429 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 99 interpolants. [2024-11-10 22:43:19,431 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=988, Invalid=8714, Unknown=0, NotChecked=0, Total=9702 [2024-11-10 22:43:19,431 INFO L87 Difference]: Start difference. First operand 228 states and 236 transitions. cyclomatic complexity: 16 Second operand has 99 states, 99 states have (on average 3.202020202020202) internal successors, (317), 99 states have internal predecessors, (317), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:43:22,604 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-10 22:43:22,604 INFO L93 Difference]: Finished difference Result 308 states and 317 transitions. [2024-11-10 22:43:22,604 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 308 states and 317 transitions. [2024-11-10 22:43:22,605 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 12 [2024-11-10 22:43:22,606 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 308 states to 268 states and 277 transitions. [2024-11-10 22:43:22,606 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 125 [2024-11-10 22:43:22,607 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 125 [2024-11-10 22:43:22,607 INFO L73 IsDeterministic]: Start isDeterministic. Operand 268 states and 277 transitions. [2024-11-10 22:43:22,607 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-10 22:43:22,607 INFO L218 hiAutomatonCegarLoop]: Abstraction has 268 states and 277 transitions. [2024-11-10 22:43:22,607 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 268 states and 277 transitions. [2024-11-10 22:43:22,610 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 268 to 238. [2024-11-10 22:43:22,610 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 238 states, 238 states have (on average 1.0336134453781514) internal successors, (246), 237 states have internal predecessors, (246), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:43:22,611 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 238 states to 238 states and 246 transitions. [2024-11-10 22:43:22,611 INFO L240 hiAutomatonCegarLoop]: Abstraction has 238 states and 246 transitions. [2024-11-10 22:43:22,611 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 60 states. [2024-11-10 22:43:22,611 INFO L425 stractBuchiCegarLoop]: Abstraction has 238 states and 246 transitions. [2024-11-10 22:43:22,611 INFO L332 stractBuchiCegarLoop]: ======== Iteration 25 ============ [2024-11-10 22:43:22,611 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 238 states and 246 transitions. [2024-11-10 22:43:22,612 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 12 [2024-11-10 22:43:22,612 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-10 22:43:22,612 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-10 22:43:22,614 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [18, 17, 17, 17, 17, 17, 16, 16, 11, 11, 6, 5, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-10 22:43:22,614 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-10 22:43:22,614 INFO L745 eck$LassoCheckResult]: Stem: 16514#ULTIMATE.startENTRY 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; 16515#ULTIMATE.init_returnLabel#1 assume true;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; 16498#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; 16499#L18 assume true; 16517#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16518#L18 assume true; 16534#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16576#L18 assume true; 16575#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16574#L18 assume true; 16573#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16572#L18 assume true; 16571#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16570#L18 assume true; 16569#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16568#L18 assume true; 16567#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16566#L18 assume true; 16565#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16564#L18 assume true; 16563#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16562#L18 assume true; 16561#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16560#L18 assume true; 16559#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16558#L18 assume true; 16557#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16556#L18 assume true; 16555#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16554#L18 assume true; 16553#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16552#L18 assume true; 16551#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16550#L18 assume true; 16547#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16546#L18 assume true; 16516#L18-1 assume !(init_nondet_~i~0#1 < ~N~0); 16504#init_nondet_returnLabel#1 assume true;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; 16505#L29-6 assume true; 16540#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16492#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16493#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16528#L29-6 assume true; 16529#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16531#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16538#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16539#L29-6 assume true; 16683#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16494#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16495#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16682#L29-6 assume true; 16681#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16680#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16679#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16678#L29-6 assume true; 16677#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16676#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16675#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16674#L29-6 assume true; 16673#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16672#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16671#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16670#L29-6 assume true; 16669#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16668#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16667#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16666#L29-6 assume true; 16665#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16664#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16663#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16662#L29-6 assume true; 16661#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16660#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16659#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16658#L29-6 assume true; 16657#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16656#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16655#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16654#L29-6 assume true; 16653#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16652#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16649#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16651#L29-6 assume true; 16650#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16648#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; 16647#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16646#L29-6 assume true; 16645#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16644#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; 16643#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16642#L29-6 assume true; 16641#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16640#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; 16639#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16638#L29-6 assume true; 16637#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16636#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; 16635#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16634#L29-6 assume true; 16633#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16632#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; 16549#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16578#L29-6 assume true; 16577#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16548#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; 16545#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16526#L29-6 assume true; 16527#L29-8 assume !(rangesum_~i~1#1 < ~N~0); 16508#L35-2 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); 16509#L38-2 assume true;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; 16530#L29-3 assume true; 16598#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 16532#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16519#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16520#L29-3 assume true; 16536#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 16533#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16521#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16522#L29-3 assume true; 16502#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 16503#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16631#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16630#L29-3 assume true; 16629#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 16628#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16627#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16626#L29-3 assume true; 16625#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 16624#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16623#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16622#L29-3 assume true; 16621#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 16620#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16619#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16618#L29-3 assume true; 16617#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 16616#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16615#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16614#L29-3 assume true; 16613#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 16612#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16611#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16610#L29-3 assume true; 16609#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 16608#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16607#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16606#L29-3 assume true; 16605#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 16604#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16603#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16600#L29-3 assume true; 16602#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 16601#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16599#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16535#L29-3 assume true; 16500#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 16501#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 16597#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16596#L29-3 assume true; 16595#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 16594#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 16593#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16592#L29-3 assume true; 16591#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 16590#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 16589#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16588#L29-3 assume true; 16587#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 16586#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 16585#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16584#L29-3 assume true; 16583#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 16582#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 16581#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16580#L29-3 assume true; 16579#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 16542#L30-1 [2024-11-10 22:43:22,614 INFO L747 eck$LassoCheckResult]: Loop: 16542#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 16544#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16543#L29-3 assume true; 16541#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 16542#L30-1 [2024-11-10 22:43:22,615 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:43:22,615 INFO L85 PathProgramCache]: Analyzing trace with hash -91566705, now seen corresponding path program 14 times [2024-11-10 22:43:22,615 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:43:22,615 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [253127087] [2024-11-10 22:43:22,615 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:43:22,615 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:43:22,652 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:43:24,904 INFO L134 CoverageAnalysis]: Checked inductivity of 1362 backedges. 799 proven. 508 refuted. 0 times theorem prover too weak. 55 trivial. 0 not checked. [2024-11-10 22:43:24,904 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-10 22:43:24,904 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [253127087] [2024-11-10 22:43:24,904 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [253127087] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-10 22:43:24,904 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [633963613] [2024-11-10 22:43:24,904 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-10 22:43:24,904 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-10 22:43:24,904 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:43:24,906 INFO L229 MonitoredProcess]: Starting monitored process 109 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-10 22:43:24,907 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (109)] Waiting until timeout for monitored process [2024-11-10 22:43:25,066 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-10 22:43:25,066 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-10 22:43:25,068 INFO L255 TraceCheckSpWp]: Trace formula consists of 541 conjuncts, 36 conjuncts are in the unsatisfiable core [2024-11-10 22:43:25,070 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-10 22:43:26,430 INFO L134 CoverageAnalysis]: Checked inductivity of 1362 backedges. 578 proven. 272 refuted. 0 times theorem prover too weak. 512 trivial. 0 not checked. [2024-11-10 22:43:26,431 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-10 22:43:27,758 INFO L134 CoverageAnalysis]: Checked inductivity of 1362 backedges. 578 proven. 272 refuted. 0 times theorem prover too weak. 512 trivial. 0 not checked. [2024-11-10 22:43:27,758 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [633963613] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-10 22:43:27,758 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-10 22:43:27,758 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [52, 37, 37] total 104 [2024-11-10 22:43:27,759 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [947938486] [2024-11-10 22:43:27,759 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-10 22:43:27,759 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-10 22:43:27,759 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:43:27,759 INFO L85 PathProgramCache]: Analyzing trace with hash 1969343, now seen corresponding path program 15 times [2024-11-10 22:43:27,760 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:43:27,760 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2020840978] [2024-11-10 22:43:27,760 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:43:27,760 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:43:27,764 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:43:27,764 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:43:27,765 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:43:27,767 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:43:27,833 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-10 22:43:27,834 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 104 interpolants. [2024-11-10 22:43:27,837 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1108, Invalid=9604, Unknown=0, NotChecked=0, Total=10712 [2024-11-10 22:43:27,837 INFO L87 Difference]: Start difference. First operand 238 states and 246 transitions. cyclomatic complexity: 16 Second operand has 104 states, 104 states have (on average 3.201923076923077) internal successors, (333), 104 states have internal predecessors, (333), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:43:32,025 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-10 22:43:32,025 INFO L93 Difference]: Finished difference Result 326 states and 335 transitions. [2024-11-10 22:43:32,025 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 326 states and 335 transitions. [2024-11-10 22:43:32,026 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 12 [2024-11-10 22:43:32,027 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 326 states to 282 states and 291 transitions. [2024-11-10 22:43:32,027 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 133 [2024-11-10 22:43:32,027 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 133 [2024-11-10 22:43:32,027 INFO L73 IsDeterministic]: Start isDeterministic. Operand 282 states and 291 transitions. [2024-11-10 22:43:32,027 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-10 22:43:32,027 INFO L218 hiAutomatonCegarLoop]: Abstraction has 282 states and 291 transitions. [2024-11-10 22:43:32,028 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 282 states and 291 transitions. [2024-11-10 22:43:32,030 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 282 to 248. [2024-11-10 22:43:32,030 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 248 states, 248 states have (on average 1.032258064516129) internal successors, (256), 247 states have internal predecessors, (256), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:43:32,031 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 248 states to 248 states and 256 transitions. [2024-11-10 22:43:32,031 INFO L240 hiAutomatonCegarLoop]: Abstraction has 248 states and 256 transitions. [2024-11-10 22:43:32,032 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 66 states. [2024-11-10 22:43:32,032 INFO L425 stractBuchiCegarLoop]: Abstraction has 248 states and 256 transitions. [2024-11-10 22:43:32,032 INFO L332 stractBuchiCegarLoop]: ======== Iteration 26 ============ [2024-11-10 22:43:32,032 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 248 states and 256 transitions. [2024-11-10 22:43:32,033 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 12 [2024-11-10 22:43:32,033 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-10 22:43:32,033 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-10 22:43:32,035 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [19, 18, 18, 18, 18, 18, 17, 17, 11, 11, 7, 6, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-10 22:43:32,035 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-10 22:43:32,035 INFO L745 eck$LassoCheckResult]: Stem: 18358#ULTIMATE.startENTRY 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; 18359#ULTIMATE.init_returnLabel#1 assume true;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; 18339#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; 18340#L18 assume true; 18356#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 18357#L18 assume true; 18376#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 18476#L18 assume true; 18475#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 18474#L18 assume true; 18473#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 18472#L18 assume true; 18471#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 18470#L18 assume true; 18469#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 18468#L18 assume true; 18467#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 18466#L18 assume true; 18465#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 18464#L18 assume true; 18463#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 18462#L18 assume true; 18461#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 18460#L18 assume true; 18459#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 18458#L18 assume true; 18457#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 18456#L18 assume true; 18455#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 18454#L18 assume true; 18453#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 18452#L18 assume true; 18451#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 18450#L18 assume true; 18449#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 18448#L18 assume true; 18387#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 18386#L18 assume true; 18355#L18-1 assume !(init_nondet_~i~0#1 < ~N~0); 18341#init_nondet_returnLabel#1 assume true;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; 18342#L29-6 assume true; 18380#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18333#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18334#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18379#L29-6 assume true; 18534#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18335#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18336#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18369#L29-6 assume true; 18370#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18372#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18533#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18532#L29-6 assume true; 18531#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18530#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18529#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18528#L29-6 assume true; 18527#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18526#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18525#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18524#L29-6 assume true; 18523#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18522#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18521#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18520#L29-6 assume true; 18519#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18518#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18517#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18516#L29-6 assume true; 18515#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18514#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18513#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18512#L29-6 assume true; 18511#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18510#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18509#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18508#L29-6 assume true; 18507#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18506#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18505#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18504#L29-6 assume true; 18503#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18502#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18499#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18501#L29-6 assume true; 18500#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18498#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; 18497#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18496#L29-6 assume true; 18495#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18494#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; 18493#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18492#L29-6 assume true; 18491#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18490#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; 18489#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18488#L29-6 assume true; 18487#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18486#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; 18485#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18484#L29-6 assume true; 18483#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18482#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; 18481#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18480#L29-6 assume true; 18479#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18478#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; 18411#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18477#L29-6 assume true; 18447#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18410#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; 18385#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18367#L29-6 assume true; 18368#L29-8 assume !(rangesum_~i~1#1 < ~N~0); 18349#L35-2 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); 18350#L38-2 assume true;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; 18371#L29-3 assume true; 18413#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 18412#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18360#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18361#L29-3 assume true; 18345#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 18346#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18362#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18363#L29-3 assume true; 18446#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 18374#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18375#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18445#L29-3 assume true; 18444#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 18443#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18442#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18441#L29-3 assume true; 18440#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 18439#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18438#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18437#L29-3 assume true; 18436#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 18435#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18434#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18433#L29-3 assume true; 18432#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 18431#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18430#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18429#L29-3 assume true; 18428#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 18427#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18426#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18425#L29-3 assume true; 18424#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 18423#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18422#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18421#L29-3 assume true; 18420#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 18419#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18418#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18415#L29-3 assume true; 18417#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 18416#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18414#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18377#L29-3 assume true; 18343#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 18344#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 18373#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18409#L29-3 assume true; 18408#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 18407#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 18406#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18405#L29-3 assume true; 18404#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 18403#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 18402#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18401#L29-3 assume true; 18400#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 18399#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 18398#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18397#L29-3 assume true; 18396#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 18395#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 18394#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18393#L29-3 assume true; 18392#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 18391#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 18390#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18389#L29-3 assume true; 18388#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 18382#L30-1 [2024-11-10 22:43:32,036 INFO L747 eck$LassoCheckResult]: Loop: 18382#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 18384#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18383#L29-3 assume true; 18381#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 18382#L30-1 [2024-11-10 22:43:32,036 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:43:32,036 INFO L85 PathProgramCache]: Analyzing trace with hash 106502028, now seen corresponding path program 15 times [2024-11-10 22:43:32,036 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:43:32,036 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [983266364] [2024-11-10 22:43:32,036 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:43:32,036 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:43:32,078 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:43:32,893 INFO L134 CoverageAnalysis]: Checked inductivity of 1532 backedges. 240 proven. 504 refuted. 0 times theorem prover too weak. 788 trivial. 0 not checked. [2024-11-10 22:43:32,893 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-10 22:43:32,893 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [983266364] [2024-11-10 22:43:32,893 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [983266364] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-10 22:43:32,894 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1639998043] [2024-11-10 22:43:32,894 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-10 22:43:32,894 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-10 22:43:32,894 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:43:32,896 INFO L229 MonitoredProcess]: Starting monitored process 110 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-10 22:43:32,897 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (110)] Waiting until timeout for monitored process [2024-11-10 22:43:33,713 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 18 check-sat command(s) [2024-11-10 22:43:33,713 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-10 22:43:33,718 INFO L255 TraceCheckSpWp]: Trace formula consists of 574 conjuncts, 38 conjuncts are in the unsatisfiable core [2024-11-10 22:43:33,720 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-10 22:43:34,799 INFO L134 CoverageAnalysis]: Checked inductivity of 1532 backedges. 578 proven. 306 refuted. 0 times theorem prover too weak. 648 trivial. 0 not checked. [2024-11-10 22:43:34,799 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-10 22:43:35,813 INFO L134 CoverageAnalysis]: Checked inductivity of 1532 backedges. 578 proven. 306 refuted. 0 times theorem prover too weak. 648 trivial. 0 not checked. [2024-11-10 22:43:35,814 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1639998043] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-10 22:43:35,814 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-10 22:43:35,814 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [29, 38, 38] total 84 [2024-11-10 22:43:35,814 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [27565992] [2024-11-10 22:43:35,814 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-10 22:43:35,815 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-10 22:43:35,815 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:43:35,815 INFO L85 PathProgramCache]: Analyzing trace with hash 1969343, now seen corresponding path program 16 times [2024-11-10 22:43:35,815 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:43:35,815 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1730326471] [2024-11-10 22:43:35,815 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:43:35,815 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:43:35,819 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:43:35,819 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:43:35,820 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:43:35,822 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:43:35,888 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-10 22:43:35,889 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 84 interpolants. [2024-11-10 22:43:35,891 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=987, Invalid=5985, Unknown=0, NotChecked=0, Total=6972 [2024-11-10 22:43:35,891 INFO L87 Difference]: Start difference. First operand 248 states and 256 transitions. cyclomatic complexity: 16 Second operand has 84 states, 84 states have (on average 3.2142857142857144) internal successors, (270), 84 states have internal predecessors, (270), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:43:37,250 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-10 22:43:37,250 INFO L93 Difference]: Finished difference Result 333 states and 341 transitions. [2024-11-10 22:43:37,250 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 333 states and 341 transitions. [2024-11-10 22:43:37,251 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 12 [2024-11-10 22:43:37,252 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 333 states to 289 states and 297 transitions. [2024-11-10 22:43:37,252 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 136 [2024-11-10 22:43:37,253 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 136 [2024-11-10 22:43:37,253 INFO L73 IsDeterministic]: Start isDeterministic. Operand 289 states and 297 transitions. [2024-11-10 22:43:37,253 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-10 22:43:37,253 INFO L218 hiAutomatonCegarLoop]: Abstraction has 289 states and 297 transitions. [2024-11-10 22:43:37,253 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 289 states and 297 transitions. [2024-11-10 22:43:37,256 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 289 to 258. [2024-11-10 22:43:37,256 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 258 states, 258 states have (on average 1.0310077519379846) internal successors, (266), 257 states have internal predecessors, (266), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:43:37,257 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 258 states to 258 states and 266 transitions. [2024-11-10 22:43:37,257 INFO L240 hiAutomatonCegarLoop]: Abstraction has 258 states and 266 transitions. [2024-11-10 22:43:37,257 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 51 states. [2024-11-10 22:43:37,258 INFO L425 stractBuchiCegarLoop]: Abstraction has 258 states and 266 transitions. [2024-11-10 22:43:37,258 INFO L332 stractBuchiCegarLoop]: ======== Iteration 27 ============ [2024-11-10 22:43:37,258 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 258 states and 266 transitions. [2024-11-10 22:43:37,259 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 12 [2024-11-10 22:43:37,259 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-10 22:43:37,259 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-10 22:43:37,261 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [20, 19, 19, 19, 19, 19, 18, 18, 11, 11, 8, 7, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-10 22:43:37,261 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-10 22:43:37,261 INFO L745 eck$LassoCheckResult]: Stem: 20225#ULTIMATE.startENTRY 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; 20226#ULTIMATE.init_returnLabel#1 assume true;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; 20209#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; 20210#L18 assume true; 20228#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20229#L18 assume true; 20246#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20349#L18 assume true; 20347#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20345#L18 assume true; 20343#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20341#L18 assume true; 20339#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20337#L18 assume true; 20335#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20333#L18 assume true; 20331#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20329#L18 assume true; 20327#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20325#L18 assume true; 20323#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20321#L18 assume true; 20319#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20317#L18 assume true; 20315#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20313#L18 assume true; 20311#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20309#L18 assume true; 20307#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20305#L18 assume true; 20303#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20301#L18 assume true; 20299#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20297#L18 assume true; 20295#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20294#L18 assume true; 20292#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20290#L18 assume true; 20260#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20259#L18 assume true; 20227#L18-1 assume !(init_nondet_~i~0#1 < ~N~0); 20215#init_nondet_returnLabel#1 assume true;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; 20216#L29-6 assume true; 20250#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20203#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20204#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20239#L29-6 assume true; 20240#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20205#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20206#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20249#L29-6 assume true; 20242#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20243#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20414#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20413#L29-6 assume true; 20412#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20411#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20410#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20409#L29-6 assume true; 20408#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20407#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20406#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20405#L29-6 assume true; 20404#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20403#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20402#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20401#L29-6 assume true; 20400#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20399#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20398#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20397#L29-6 assume true; 20396#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20395#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20394#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20393#L29-6 assume true; 20392#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20391#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20390#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20389#L29-6 assume true; 20388#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20387#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20386#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20385#L29-6 assume true; 20384#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20383#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20380#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20382#L29-6 assume true; 20381#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20379#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; 20378#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20377#L29-6 assume true; 20376#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20375#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; 20374#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20373#L29-6 assume true; 20372#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20371#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; 20370#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20369#L29-6 assume true; 20368#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20367#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; 20366#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20365#L29-6 assume true; 20364#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20363#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; 20362#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20361#L29-6 assume true; 20360#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20359#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; 20358#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20357#L29-6 assume true; 20356#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20355#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; 20257#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20354#L29-6 assume true; 20258#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20256#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; 20255#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20237#L29-6 assume true; 20238#L29-8 assume !(rangesum_~i~1#1 < ~N~0); 20219#L35-2 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); 20220#L38-2 assume true;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; 20241#L29-3 assume true; 20211#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 20212#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20230#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20231#L29-3 assume true; 20213#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 20214#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20232#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20233#L29-3 assume true; 20247#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 20352#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20351#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20350#L29-3 assume true; 20348#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 20346#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20344#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20342#L29-3 assume true; 20340#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 20338#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20336#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20334#L29-3 assume true; 20332#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 20330#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20328#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20326#L29-3 assume true; 20324#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 20322#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20320#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20318#L29-3 assume true; 20316#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 20314#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20312#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20310#L29-3 assume true; 20308#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 20306#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20304#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20302#L29-3 assume true; 20300#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 20298#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20296#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20289#L29-3 assume true; 20293#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 20291#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20287#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20288#L29-3 assume true; 20353#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 20244#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 20245#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20286#L29-3 assume true; 20285#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 20284#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 20283#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20282#L29-3 assume true; 20281#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 20280#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 20279#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20278#L29-3 assume true; 20277#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 20276#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 20275#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20274#L29-3 assume true; 20273#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 20272#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 20271#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20270#L29-3 assume true; 20269#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 20268#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 20267#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20266#L29-3 assume true; 20265#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 20264#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 20263#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20262#L29-3 assume true; 20261#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 20252#L30-1 [2024-11-10 22:43:37,261 INFO L747 eck$LassoCheckResult]: Loop: 20252#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 20254#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20253#L29-3 assume true; 20251#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 20252#L30-1 [2024-11-10 22:43:37,262 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:43:37,262 INFO L85 PathProgramCache]: Analyzing trace with hash 1958692681, now seen corresponding path program 16 times [2024-11-10 22:43:37,262 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:43:37,262 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1077843958] [2024-11-10 22:43:37,262 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:43:37,262 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:43:37,308 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:43:38,393 INFO L134 CoverageAnalysis]: Checked inductivity of 1712 backedges. 652 proven. 412 refuted. 0 times theorem prover too weak. 648 trivial. 0 not checked. [2024-11-10 22:43:38,394 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-10 22:43:38,394 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1077843958] [2024-11-10 22:43:38,394 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1077843958] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-10 22:43:38,394 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1842777308] [2024-11-10 22:43:38,394 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-10 22:43:38,394 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-10 22:43:38,394 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:43:38,395 INFO L229 MonitoredProcess]: Starting monitored process 111 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-10 22:43:38,396 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (111)] Waiting until timeout for monitored process [2024-11-10 22:43:38,570 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-10 22:43:38,570 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-10 22:43:38,572 INFO L255 TraceCheckSpWp]: Trace formula consists of 574 conjuncts, 31 conjuncts are in the unsatisfiable core [2024-11-10 22:43:38,575 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-10 22:43:39,212 INFO L134 CoverageAnalysis]: Checked inductivity of 1712 backedges. 564 proven. 158 refuted. 0 times theorem prover too weak. 990 trivial. 0 not checked. [2024-11-10 22:43:39,212 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-10 22:43:39,784 INFO L134 CoverageAnalysis]: Checked inductivity of 1712 backedges. 210 proven. 512 refuted. 0 times theorem prover too weak. 990 trivial. 0 not checked. [2024-11-10 22:43:39,784 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1842777308] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-10 22:43:39,784 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-10 22:43:39,784 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [41, 23, 24] total 73 [2024-11-10 22:43:39,784 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [945077974] [2024-11-10 22:43:39,784 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-10 22:43:39,785 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-10 22:43:39,785 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:43:39,785 INFO L85 PathProgramCache]: Analyzing trace with hash 1969343, now seen corresponding path program 17 times [2024-11-10 22:43:39,785 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:43:39,785 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [293879617] [2024-11-10 22:43:39,785 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:43:39,785 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:43:39,788 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:43:39,788 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:43:39,789 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:43:39,791 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:43:39,845 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-10 22:43:39,846 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 73 interpolants. [2024-11-10 22:43:39,847 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=743, Invalid=4513, Unknown=0, NotChecked=0, Total=5256 [2024-11-10 22:43:39,847 INFO L87 Difference]: Start difference. First operand 258 states and 266 transitions. cyclomatic complexity: 16 Second operand has 73 states, 73 states have (on average 3.3698630136986303) internal successors, (246), 73 states have internal predecessors, (246), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:43:45,671 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-10 22:43:45,671 INFO L93 Difference]: Finished difference Result 979 states and 1013 transitions. [2024-11-10 22:43:45,672 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 979 states and 1013 transitions. [2024-11-10 22:43:45,675 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 12 [2024-11-10 22:43:45,677 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 979 states to 904 states and 935 transitions. [2024-11-10 22:43:45,677 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 521 [2024-11-10 22:43:45,678 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 521 [2024-11-10 22:43:45,678 INFO L73 IsDeterministic]: Start isDeterministic. Operand 904 states and 935 transitions. [2024-11-10 22:43:45,678 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-10 22:43:45,678 INFO L218 hiAutomatonCegarLoop]: Abstraction has 904 states and 935 transitions. [2024-11-10 22:43:45,679 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 904 states and 935 transitions. [2024-11-10 22:43:45,684 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 904 to 332. [2024-11-10 22:43:45,684 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 332 states, 332 states have (on average 1.0481927710843373) internal successors, (348), 331 states have internal predecessors, (348), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:43:45,685 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 332 states to 332 states and 348 transitions. [2024-11-10 22:43:45,685 INFO L240 hiAutomatonCegarLoop]: Abstraction has 332 states and 348 transitions. [2024-11-10 22:43:45,686 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 131 states. [2024-11-10 22:43:45,687 INFO L425 stractBuchiCegarLoop]: Abstraction has 332 states and 348 transitions. [2024-11-10 22:43:45,687 INFO L332 stractBuchiCegarLoop]: ======== Iteration 28 ============ [2024-11-10 22:43:45,687 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 332 states and 348 transitions. [2024-11-10 22:43:45,688 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 12 [2024-11-10 22:43:45,688 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-10 22:43:45,688 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-10 22:43:45,689 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [21, 20, 20, 20, 20, 20, 19, 19, 11, 11, 9, 8, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-10 22:43:45,690 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-10 22:43:45,690 INFO L745 eck$LassoCheckResult]: Stem: 22899#ULTIMATE.startENTRY 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; 22900#ULTIMATE.init_returnLabel#1 assume true;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; 22883#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; 22884#L18 assume true; 22919#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 22920#L18 assume true; 22902#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 22903#L18 assume true; 22965#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 22964#L18 assume true; 22963#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 22962#L18 assume true; 22961#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 22960#L18 assume true; 22959#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 22958#L18 assume true; 22957#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 22956#L18 assume true; 22955#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 22954#L18 assume true; 22953#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 22952#L18 assume true; 22951#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 22950#L18 assume true; 22949#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 22948#L18 assume true; 22947#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 22946#L18 assume true; 22945#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 22944#L18 assume true; 22943#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 22942#L18 assume true; 22941#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 22940#L18 assume true; 22939#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 22938#L18 assume true; 22937#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 22936#L18 assume true; 22935#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 22934#L18 assume true; 22931#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 22930#L18 assume true; 22901#L18-1 assume !(init_nondet_~i~0#1 < ~N~0); 22889#init_nondet_returnLabel#1 assume true;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; 22890#L29-6 assume true; 22924#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 22876#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 22877#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22923#L29-6 assume true; 23137#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23136#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23135#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23134#L29-6 assume true; 23133#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23132#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23131#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23130#L29-6 assume true; 23129#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23128#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23127#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23126#L29-6 assume true; 23125#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23124#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23123#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23122#L29-6 assume true; 23121#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23120#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23119#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23118#L29-6 assume true; 23117#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23116#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23115#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23114#L29-6 assume true; 23113#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23112#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23111#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23110#L29-6 assume true; 23109#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23108#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23107#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23106#L29-6 assume true; 23105#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23104#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23103#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23102#L29-6 assume true; 23101#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23099#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23100#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23145#L29-6 assume true; 23144#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23142#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; 23026#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23024#L29-6 assume true; 23022#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23020#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; 23018#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23016#L29-6 assume true; 23014#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23012#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; 23010#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23008#L29-6 assume true; 23006#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23004#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; 23002#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23000#L29-6 assume true; 22998#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 22996#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; 22994#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22992#L29-6 assume true; 22990#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 22988#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; 22986#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22985#L29-6 assume true; 22984#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 22983#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; 22982#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22981#L29-6 assume true; 22980#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 22979#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; 22933#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22970#L29-6 assume true; 22966#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 22932#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; 22929#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22912#L29-6 assume true; 22913#L29-8 assume !(rangesum_~i~1#1 < ~N~0); 22893#L35-2 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); 22894#L38-2 assume true;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; 22916#L29-3 assume true; 23077#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 23076#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23075#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23074#L29-3 assume true; 23073#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 23072#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23071#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23070#L29-3 assume true; 23069#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 23068#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23067#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23066#L29-3 assume true; 23065#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 23064#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23063#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23062#L29-3 assume true; 23061#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 23060#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23059#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23058#L29-3 assume true; 23057#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 23056#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23055#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23054#L29-3 assume true; 23053#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 23052#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23051#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23050#L29-3 assume true; 23049#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 23048#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23047#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23046#L29-3 assume true; 23045#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 23044#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23043#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23042#L29-3 assume true; 23041#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 23040#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23039#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23038#L29-3 assume true; 23037#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 23036#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23034#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23031#L29-3 assume true; 23029#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 23027#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 23025#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23023#L29-3 assume true; 23021#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 23019#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 23017#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23015#L29-3 assume true; 23013#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 23011#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 23009#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23007#L29-3 assume true; 23005#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 23003#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 23001#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22999#L29-3 assume true; 22997#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 22995#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 22993#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22991#L29-3 assume true; 22989#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 22987#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 22978#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22977#L29-3 assume true; 22976#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 22975#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 22974#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22973#L29-3 assume true; 22972#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 22971#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 22969#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22968#L29-3 assume true; 22967#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 22926#L30-1 [2024-11-10 22:43:45,690 INFO L747 eck$LassoCheckResult]: Loop: 22926#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 22928#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22927#L29-3 assume true; 22925#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 22926#L30-1 [2024-11-10 22:43:45,690 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:43:45,691 INFO L85 PathProgramCache]: Analyzing trace with hash -1755632442, now seen corresponding path program 17 times [2024-11-10 22:43:45,691 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:43:45,691 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1535961630] [2024-11-10 22:43:45,691 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:43:45,691 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:43:45,739 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 22:43:46,950 INFO L134 CoverageAnalysis]: Checked inductivity of 1902 backedges. 726 proven. 454 refuted. 0 times theorem prover too weak. 722 trivial. 0 not checked. [2024-11-10 22:43:46,950 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-10 22:43:46,950 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1535961630] [2024-11-10 22:43:46,950 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1535961630] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-10 22:43:46,950 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [373227615] [2024-11-10 22:43:46,951 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-10 22:43:46,951 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-10 22:43:46,951 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:43:46,952 INFO L229 MonitoredProcess]: Starting monitored process 112 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-10 22:43:46,953 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (112)] Waiting until timeout for monitored process [2024-11-10 22:43:47,280 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 21 check-sat command(s) [2024-11-10 22:43:47,280 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-10 22:43:47,283 INFO L255 TraceCheckSpWp]: Trace formula consists of 655 conjuncts, 43 conjuncts are in the unsatisfiable core [2024-11-10 22:43:47,286 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-10 22:43:48,738 INFO L134 CoverageAnalysis]: Checked inductivity of 1902 backedges. 1102 proven. 411 refuted. 0 times theorem prover too weak. 389 trivial. 0 not checked. [2024-11-10 22:43:48,738 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-10 22:43:49,982 INFO L134 CoverageAnalysis]: Checked inductivity of 1902 backedges. 722 proven. 744 refuted. 0 times theorem prover too weak. 436 trivial. 0 not checked. [2024-11-10 22:43:49,982 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [373227615] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-10 22:43:49,982 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-10 22:43:49,983 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [43, 44, 43] total 85 [2024-11-10 22:43:49,983 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2147002378] [2024-11-10 22:43:49,983 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-10 22:43:49,983 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-10 22:43:49,983 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:43:49,983 INFO L85 PathProgramCache]: Analyzing trace with hash 1969343, now seen corresponding path program 18 times [2024-11-10 22:43:49,984 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:43:49,984 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1780687333] [2024-11-10 22:43:49,984 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:43:49,984 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:43:49,988 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:43:49,988 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:43:49,989 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:43:49,992 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:43:50,059 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-10 22:43:50,060 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 85 interpolants. [2024-11-10 22:43:50,061 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1363, Invalid=5777, Unknown=0, NotChecked=0, Total=7140 [2024-11-10 22:43:50,061 INFO L87 Difference]: Start difference. First operand 332 states and 348 transitions. cyclomatic complexity: 24 Second operand has 85 states, 85 states have (on average 3.541176470588235) internal successors, (301), 85 states have internal predecessors, (301), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:43:50,638 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-10 22:43:50,638 INFO L93 Difference]: Finished difference Result 392 states and 408 transitions. [2024-11-10 22:43:50,639 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 392 states and 408 transitions. [2024-11-10 22:43:50,640 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 12 [2024-11-10 22:43:50,641 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 392 states to 347 states and 363 transitions. [2024-11-10 22:43:50,641 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 141 [2024-11-10 22:43:50,642 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 141 [2024-11-10 22:43:50,642 INFO L73 IsDeterministic]: Start isDeterministic. Operand 347 states and 363 transitions. [2024-11-10 22:43:50,642 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-10 22:43:50,644 INFO L218 hiAutomatonCegarLoop]: Abstraction has 347 states and 363 transitions. [2024-11-10 22:43:50,644 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 347 states and 363 transitions. [2024-11-10 22:43:50,647 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 347 to 334. [2024-11-10 22:43:50,648 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 334 states, 334 states have (on average 1.0479041916167664) internal successors, (350), 333 states have internal predecessors, (350), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 22:43:50,648 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 334 states to 334 states and 350 transitions. [2024-11-10 22:43:50,649 INFO L240 hiAutomatonCegarLoop]: Abstraction has 334 states and 350 transitions. [2024-11-10 22:43:50,649 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 35 states. [2024-11-10 22:43:50,650 INFO L425 stractBuchiCegarLoop]: Abstraction has 334 states and 350 transitions. [2024-11-10 22:43:50,650 INFO L332 stractBuchiCegarLoop]: ======== Iteration 29 ============ [2024-11-10 22:43:50,650 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 334 states and 350 transitions. [2024-11-10 22:43:50,652 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 12 [2024-11-10 22:43:50,652 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-10 22:43:50,652 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-10 22:43:50,653 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [21, 21, 20, 20, 20, 20, 20, 19, 11, 11, 9, 8, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-10 22:43:50,653 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-10 22:43:50,653 INFO L745 eck$LassoCheckResult]: Stem: 24959#ULTIMATE.startENTRY 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; 24960#ULTIMATE.init_returnLabel#1 assume true;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; 24943#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; 24944#L18 assume true; 24962#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 24963#L18 assume true; 24981#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25091#L18 assume true; 25090#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25089#L18 assume true; 25088#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25087#L18 assume true; 25086#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25085#L18 assume true; 25084#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25083#L18 assume true; 25082#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25081#L18 assume true; 25080#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25079#L18 assume true; 25078#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25077#L18 assume true; 25076#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25075#L18 assume true; 25074#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25073#L18 assume true; 25072#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25071#L18 assume true; 25070#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25069#L18 assume true; 25068#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25067#L18 assume true; 25066#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25065#L18 assume true; 25064#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25063#L18 assume true; 25062#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25061#L18 assume true; 25060#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25059#L18 assume true; 25058#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25057#L18 assume true; 24995#L18-1 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1;init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 24994#L18 assume true; 24961#L18-1 assume !(init_nondet_~i~0#1 < ~N~0); 24949#init_nondet_returnLabel#1 assume true;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; 24950#L29-6 assume true; 24984#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 24936#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 24937#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 24982#L29-6 assume true; 25185#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 25184#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25183#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25182#L29-6 assume true; 25181#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 25180#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25179#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25178#L29-6 assume true; 25177#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 25176#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25175#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25174#L29-6 assume true; 25173#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 25172#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25171#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25170#L29-6 assume true; 25169#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 25168#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25167#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25166#L29-6 assume true; 25165#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 25164#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25163#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25162#L29-6 assume true; 25161#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 25160#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25159#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25158#L29-6 assume true; 25157#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 25156#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25155#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25154#L29-6 assume true; 25153#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 25152#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25151#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25150#L29-6 assume true; 25149#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 25148#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25098#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25099#L29-6 assume true; 25092#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 25093#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; 25047#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25045#L29-6 assume true; 25043#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 25041#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 25039#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25037#L29-6 assume true; 25035#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 25033#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; 25031#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25029#L29-6 assume true; 25027#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 25025#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; 25023#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25021#L29-6 assume true; 25019#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 25017#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; 25015#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25013#L29-6 assume true; 25011#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 25009#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; 25007#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25005#L29-6 assume true; 25003#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 25001#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; 24999#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 24998#L29-6 assume true; 24997#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 24996#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; 24991#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 24993#L29-6 assume true; 24992#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 24990#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; 24989#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 24973#L29-6 assume true; 24974#L29-8 assume !(rangesum_~i~1#1 < ~N~0); 24953#L35-2 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); 24954#L38-2 assume true;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; 24977#L29-3 assume true; 25145#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 25144#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25143#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25142#L29-3 assume true; 25141#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 25140#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25139#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25138#L29-3 assume true; 25137#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 25136#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25135#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25134#L29-3 assume true; 25133#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 25132#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25131#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25130#L29-3 assume true; 25129#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 25128#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25127#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25126#L29-3 assume true; 25125#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 25124#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25123#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25122#L29-3 assume true; 25121#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 25120#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25119#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25118#L29-3 assume true; 25117#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 25116#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25115#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25114#L29-3 assume true; 25113#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 25112#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25111#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25110#L29-3 assume true; 25109#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 25108#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25107#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25106#L29-3 assume true; 25105#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 25103#L30-1 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25100#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25097#L29-3 assume true; 25094#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 25056#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 25055#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25054#L29-3 assume true; 25053#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 25052#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 25051#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25050#L29-3 assume true; 25048#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 25046#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 25044#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25042#L29-3 assume true; 25040#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 25038#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 25036#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25034#L29-3 assume true; 25032#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 25030#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 25028#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25026#L29-3 assume true; 25024#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 25022#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 25020#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25018#L29-3 assume true; 25016#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 25014#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 25012#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25010#L29-3 assume true; 25008#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 25006#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 25004#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25002#L29-3 assume true; 25000#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 24986#L30-1 [2024-11-10 22:43:50,654 INFO L747 eck$LassoCheckResult]: Loop: 24986#L30-1 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 24988#L29-4 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 24987#L29-3 assume true; 24985#L29-5 assume !!(rangesum_~i~1#1 < ~N~0); 24986#L30-1 [2024-11-10 22:43:50,654 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:43:50,654 INFO L85 PathProgramCache]: Analyzing trace with hash -1171017977, now seen corresponding path program 18 times [2024-11-10 22:43:50,654 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:43:50,654 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1671460102] [2024-11-10 22:43:50,654 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:43:50,655 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:43:50,783 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unknown [2024-11-10 22:43:50,786 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1557604879] [2024-11-10 22:43:50,786 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-10 22:43:50,786 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-10 22:43:50,786 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 22:43:50,789 INFO L229 MonitoredProcess]: Starting monitored process 113 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-10 22:43:50,792 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (113)] Waiting until timeout for monitored process [2024-11-10 22:43:52,520 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 21 check-sat command(s) [2024-11-10 22:43:52,520 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-10 22:43:52,520 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:43:53,014 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:43:53,059 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:43:53,059 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:43:53,059 INFO L85 PathProgramCache]: Analyzing trace with hash 1969343, now seen corresponding path program 19 times [2024-11-10 22:43:53,059 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:43:53,059 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1625100971] [2024-11-10 22:43:53,059 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:43:53,059 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:43:53,063 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:43:53,063 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 22:43:53,064 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 22:43:53,065 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 22:43:53,066 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 22:43:53,066 INFO L85 PathProgramCache]: Analyzing trace with hash 188139717, now seen corresponding path program 19 times [2024-11-10 22:43:53,066 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 22:43:53,066 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [475702809] [2024-11-10 22:43:53,066 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 22:43:53,066 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 22:43:53,109 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat