./Ultimate.py --spec ../../sv-benchmarks/c/properties/termination.prp --file ../../sv-benchmarks/c/recursified_loop-simple/recursified_nested_5.c --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for termination Using default analysis Version 30e01a73 Calling Ultimate with: /usr/lib/jvm/java-11-openjdk-amd64/bin/java -Dosgi.configuration.area=/tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_31b1204a-741c-4da8-8208-e27463b23dc5/bin/uautomizer-verify-zZY32mL2XJ/data/config -Xmx15G -Xms4m -jar /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_31b1204a-741c-4da8-8208-e27463b23dc5/bin/uautomizer-verify-zZY32mL2XJ/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_31b1204a-741c-4da8-8208-e27463b23dc5/bin/uautomizer-verify-zZY32mL2XJ/data -tc /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_31b1204a-741c-4da8-8208-e27463b23dc5/bin/uautomizer-verify-zZY32mL2XJ/config/AutomizerTermination.xml -i ../../sv-benchmarks/c/recursified_loop-simple/recursified_nested_5.c -s /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_31b1204a-741c-4da8-8208-e27463b23dc5/bin/uautomizer-verify-zZY32mL2XJ/config/svcomp-Termination-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_31b1204a-741c-4da8-8208-e27463b23dc5/bin/uautomizer-verify-zZY32mL2XJ --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 c9dfd2bf12e8d041fe6d1d6bf651e6b1ba93f167a26b0485680374a443f598c5 --- Real Ultimate output --- This is Ultimate 0.2.3-dev-30e01a7 [2023-11-23 21:35:31,036 INFO L188 SettingsManager]: Resetting all preferences to default values... [2023-11-23 21:35:31,157 INFO L114 SettingsManager]: Loading settings from /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_31b1204a-741c-4da8-8208-e27463b23dc5/bin/uautomizer-verify-zZY32mL2XJ/config/svcomp-Termination-32bit-Automizer_Default.epf [2023-11-23 21:35:31,170 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2023-11-23 21:35:31,170 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2023-11-23 21:35:31,211 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2023-11-23 21:35:31,212 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2023-11-23 21:35:31,213 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2023-11-23 21:35:31,214 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2023-11-23 21:35:31,219 INFO L153 SettingsManager]: * Use memory slicer=true [2023-11-23 21:35:31,220 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2023-11-23 21:35:31,221 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2023-11-23 21:35:31,221 INFO L153 SettingsManager]: * Use SBE=true [2023-11-23 21:35:31,224 INFO L151 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2023-11-23 21:35:31,224 INFO L153 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2023-11-23 21:35:31,225 INFO L153 SettingsManager]: * Use old map elimination=false [2023-11-23 21:35:31,225 INFO L153 SettingsManager]: * Use external solver (rank synthesis)=false [2023-11-23 21:35:31,226 INFO L153 SettingsManager]: * Use only trivial implications for array writes=true [2023-11-23 21:35:31,226 INFO L153 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2023-11-23 21:35:31,228 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2023-11-23 21:35:31,228 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2023-11-23 21:35:31,229 INFO L153 SettingsManager]: * sizeof long=4 [2023-11-23 21:35:31,230 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2023-11-23 21:35:31,230 INFO L153 SettingsManager]: * sizeof POINTER=4 [2023-11-23 21:35:31,230 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2023-11-23 21:35:31,231 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2023-11-23 21:35:31,231 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2023-11-23 21:35:31,232 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2023-11-23 21:35:31,232 INFO L153 SettingsManager]: * Check unreachability of reach_error function=false [2023-11-23 21:35:31,233 INFO L153 SettingsManager]: * sizeof long double=12 [2023-11-23 21:35:31,234 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2023-11-23 21:35:31,234 INFO L153 SettingsManager]: * Assume nondeterminstic values are in range=false [2023-11-23 21:35:31,235 INFO L153 SettingsManager]: * Use constant arrays=true [2023-11-23 21:35:31,235 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2023-11-23 21:35:31,235 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2023-11-23 21:35:31,235 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2023-11-23 21:35:31,236 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2023-11-23 21:35:31,236 INFO L151 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2023-11-23 21:35:31,237 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:/tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_31b1204a-741c-4da8-8208-e27463b23dc5/bin/uautomizer-verify-zZY32mL2XJ/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 -> /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_31b1204a-741c-4da8-8208-e27463b23dc5/bin/uautomizer-verify-zZY32mL2XJ 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 -> c9dfd2bf12e8d041fe6d1d6bf651e6b1ba93f167a26b0485680374a443f598c5 [2023-11-23 21:35:31,527 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2023-11-23 21:35:31,551 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2023-11-23 21:35:31,554 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2023-11-23 21:35:31,555 INFO L270 PluginConnector]: Initializing CDTParser... [2023-11-23 21:35:31,556 INFO L274 PluginConnector]: CDTParser initialized [2023-11-23 21:35:31,558 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_31b1204a-741c-4da8-8208-e27463b23dc5/bin/uautomizer-verify-zZY32mL2XJ/../../sv-benchmarks/c/recursified_loop-simple/recursified_nested_5.c [2023-11-23 21:35:34,689 INFO L533 CDTParser]: Created temporary CDT project at NULL [2023-11-23 21:35:34,945 INFO L384 CDTParser]: Found 1 translation units. [2023-11-23 21:35:34,946 INFO L180 CDTParser]: Scanning /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_31b1204a-741c-4da8-8208-e27463b23dc5/sv-benchmarks/c/recursified_loop-simple/recursified_nested_5.c [2023-11-23 21:35:34,955 INFO L427 CDTParser]: About to delete temporary CDT project at /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_31b1204a-741c-4da8-8208-e27463b23dc5/bin/uautomizer-verify-zZY32mL2XJ/data/b3ca9eaa2/e6f6b7ce0d9044e782ba526a97dc5203/FLAG9f313ea05 [2023-11-23 21:35:34,975 INFO L435 CDTParser]: Successfully deleted /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_31b1204a-741c-4da8-8208-e27463b23dc5/bin/uautomizer-verify-zZY32mL2XJ/data/b3ca9eaa2/e6f6b7ce0d9044e782ba526a97dc5203 [2023-11-23 21:35:34,981 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2023-11-23 21:35:34,984 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2023-11-23 21:35:34,987 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2023-11-23 21:35:34,988 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2023-11-23 21:35:34,993 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2023-11-23 21:35:34,994 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 09:35:34" (1/1) ... [2023-11-23 21:35:34,995 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1b64701c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:35:34, skipping insertion in model container [2023-11-23 21:35:34,995 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 09:35:34" (1/1) ... [2023-11-23 21:35:35,026 INFO L177 MainTranslator]: Built tables and reachable declarations [2023-11-23 21:35:35,240 INFO L209 PostProcessor]: Analyzing one entry point: main [2023-11-23 21:35:35,256 INFO L202 MainTranslator]: Completed pre-run [2023-11-23 21:35:35,286 INFO L209 PostProcessor]: Analyzing one entry point: main [2023-11-23 21:35:35,305 INFO L206 MainTranslator]: Completed translation [2023-11-23 21:35:35,305 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:35:35 WrapperNode [2023-11-23 21:35:35,305 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2023-11-23 21:35:35,307 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2023-11-23 21:35:35,307 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2023-11-23 21:35:35,307 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2023-11-23 21:35:35,315 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:35:35" (1/1) ... [2023-11-23 21:35:35,335 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:35:35" (1/1) ... [2023-11-23 21:35:35,365 INFO L138 Inliner]: procedures = 16, calls = 63, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 81 [2023-11-23 21:35:35,365 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2023-11-23 21:35:35,366 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2023-11-23 21:35:35,366 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2023-11-23 21:35:35,366 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2023-11-23 21:35:35,377 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:35:35" (1/1) ... [2023-11-23 21:35:35,378 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:35:35" (1/1) ... [2023-11-23 21:35:35,387 INFO L184 PluginConnector]: Executing the observer HeapSplitter from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:35:35" (1/1) ... [2023-11-23 21:35:35,406 INFO L189 HeapSplitter]: Split 32 memory accesses to 6 slices as follows [2, 6, 6, 6, 6, 6] [2023-11-23 21:35:35,406 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:35:35" (1/1) ... [2023-11-23 21:35:35,406 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:35:35" (1/1) ... [2023-11-23 21:35:35,427 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:35:35" (1/1) ... [2023-11-23 21:35:35,429 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:35:35" (1/1) ... [2023-11-23 21:35:35,446 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:35:35" (1/1) ... [2023-11-23 21:35:35,448 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:35:35" (1/1) ... [2023-11-23 21:35:35,452 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2023-11-23 21:35:35,453 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2023-11-23 21:35:35,453 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2023-11-23 21:35:35,461 INFO L274 PluginConnector]: RCFGBuilder initialized [2023-11-23 21:35:35,462 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:35:35" (1/1) ... [2023-11-23 21:35:35,468 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-11-23 21:35:35,481 INFO L189 MonitoredProcess]: No working directory specified, using /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_31b1204a-741c-4da8-8208-e27463b23dc5/bin/uautomizer-verify-zZY32mL2XJ/z3 [2023-11-23 21:35:35,496 INFO L229 MonitoredProcess]: Starting monitored process 1 with /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_31b1204a-741c-4da8-8208-e27463b23dc5/bin/uautomizer-verify-zZY32mL2XJ/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2023-11-23 21:35:35,517 INFO L327 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_31b1204a-741c-4da8-8208-e27463b23dc5/bin/uautomizer-verify-zZY32mL2XJ/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Waiting until timeout for monitored process [2023-11-23 21:35:35,541 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2023-11-23 21:35:35,542 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2023-11-23 21:35:35,542 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2023-11-23 21:35:35,542 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#2 [2023-11-23 21:35:35,543 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#3 [2023-11-23 21:35:35,543 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#4 [2023-11-23 21:35:35,543 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#5 [2023-11-23 21:35:35,543 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2023-11-23 21:35:35,543 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2023-11-23 21:35:35,543 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2023-11-23 21:35:35,544 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#2 [2023-11-23 21:35:35,544 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#3 [2023-11-23 21:35:35,544 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#4 [2023-11-23 21:35:35,544 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#5 [2023-11-23 21:35:35,544 INFO L130 BoogieDeclarations]: Found specification of procedure func_to_recursive_line_24_to_25_0 [2023-11-23 21:35:35,546 INFO L138 BoogieDeclarations]: Found implementation of procedure func_to_recursive_line_24_to_25_0 [2023-11-23 21:35:35,547 INFO L130 BoogieDeclarations]: Found specification of procedure func_to_recursive_line_23_to_24_0 [2023-11-23 21:35:35,547 INFO L138 BoogieDeclarations]: Found implementation of procedure func_to_recursive_line_23_to_24_0 [2023-11-23 21:35:35,547 INFO L130 BoogieDeclarations]: Found specification of procedure func_to_recursive_line_25_to_26_0 [2023-11-23 21:35:35,548 INFO L138 BoogieDeclarations]: Found implementation of procedure func_to_recursive_line_25_to_26_0 [2023-11-23 21:35:35,548 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2023-11-23 21:35:35,548 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2023-11-23 21:35:35,548 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2023-11-23 21:35:35,548 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#1 [2023-11-23 21:35:35,549 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#2 [2023-11-23 21:35:35,549 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#3 [2023-11-23 21:35:35,549 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#4 [2023-11-23 21:35:35,549 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#5 [2023-11-23 21:35:35,549 INFO L130 BoogieDeclarations]: Found specification of procedure func_to_recursive_line_27_to_27_0 [2023-11-23 21:35:35,550 INFO L138 BoogieDeclarations]: Found implementation of procedure func_to_recursive_line_27_to_27_0 [2023-11-23 21:35:35,550 INFO L130 BoogieDeclarations]: Found specification of procedure func_to_recursive_line_26_to_27_0 [2023-11-23 21:35:35,551 INFO L138 BoogieDeclarations]: Found implementation of procedure func_to_recursive_line_26_to_27_0 [2023-11-23 21:35:35,551 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2023-11-23 21:35:35,700 INFO L241 CfgBuilder]: Building ICFG [2023-11-23 21:35:35,702 INFO L267 CfgBuilder]: Building CFG for each procedure with an implementation [2023-11-23 21:35:36,050 INFO L282 CfgBuilder]: Performing block encoding [2023-11-23 21:35:36,061 INFO L304 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2023-11-23 21:35:36,071 INFO L309 CfgBuilder]: Removed 0 assume(true) statements. [2023-11-23 21:35:36,073 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 09:35:36 BoogieIcfgContainer [2023-11-23 21:35:36,073 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2023-11-23 21:35:36,075 INFO L112 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2023-11-23 21:35:36,075 INFO L270 PluginConnector]: Initializing BuchiAutomizer... [2023-11-23 21:35:36,079 INFO L274 PluginConnector]: BuchiAutomizer initialized [2023-11-23 21:35:36,080 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2023-11-23 21:35:36,081 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 23.11 09:35:34" (1/3) ... [2023-11-23 21:35:36,082 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@47f41f33 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 23.11 09:35:36, skipping insertion in model container [2023-11-23 21:35:36,083 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2023-11-23 21:35:36,083 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 09:35:35" (2/3) ... [2023-11-23 21:35:36,084 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@47f41f33 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 23.11 09:35:36, skipping insertion in model container [2023-11-23 21:35:36,084 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2023-11-23 21:35:36,084 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 09:35:36" (3/3) ... [2023-11-23 21:35:36,085 INFO L332 chiAutomizerObserver]: Analyzing ICFG recursified_nested_5.c [2023-11-23 21:35:36,148 INFO L303 stractBuchiCegarLoop]: Interprodecural is true [2023-11-23 21:35:36,148 INFO L304 stractBuchiCegarLoop]: Hoare is false [2023-11-23 21:35:36,148 INFO L305 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2023-11-23 21:35:36,149 INFO L306 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2023-11-23 21:35:36,149 INFO L307 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2023-11-23 21:35:36,149 INFO L308 stractBuchiCegarLoop]: Difference is false [2023-11-23 21:35:36,149 INFO L309 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2023-11-23 21:35:36,149 INFO L313 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2023-11-23 21:35:36,153 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 50 states, 34 states have (on average 1.2941176470588236) internal successors, (44), 39 states have internal predecessors, (44), 10 states have call successors, (10), 5 states have call predecessors, (10), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2023-11-23 21:35:36,179 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 23 [2023-11-23 21:35:36,180 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-11-23 21:35:36,180 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-11-23 21:35:36,187 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2023-11-23 21:35:36,188 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-11-23 21:35:36,188 INFO L335 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2023-11-23 21:35:36,189 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 50 states, 34 states have (on average 1.2941176470588236) internal successors, (44), 39 states have internal predecessors, (44), 10 states have call successors, (10), 5 states have call predecessors, (10), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2023-11-23 21:35:36,194 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 23 [2023-11-23 21:35:36,195 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-11-23 21:35:36,195 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-11-23 21:35:36,196 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2023-11-23 21:35:36,196 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-11-23 21:35:36,204 INFO L748 eck$LassoCheckResult]: Stem: 19#$Ultimate##0true assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); 26#L-1true assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~mem19#1, main_#t~mem20#1, main_#t~short21#1, main_#t~mem22#1, main_#t~short23#1, main_#t~mem24#1, main_#t~short25#1, main_#t~mem26#1, main_#t~short27#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset, main_~#e~0#1.base, main_~#e~0#1.offset;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#1(6, main_~#a~0#1.base, main_~#a~0#1.offset, 4);call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#2(6, main_~#b~0#1.base, main_~#b~0#1.offset, 4);call main_~#c~0#1.base, main_~#c~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#4(6, main_~#c~0#1.base, main_~#c~0#1.offset, 4);call main_~#d~0#1.base, main_~#d~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#3(6, main_~#d~0#1.base, main_~#d~0#1.offset, 4);call main_~#e~0#1.base, main_~#e~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#5(6, main_~#e~0#1.base, main_~#e~0#1.offset, 4);call write~int#1(0, main_~#a~0#1.base, main_~#a~0#1.offset, 4); 39#L128true call func_to_recursive_line_23_to_24_0(main_~#a~0#1.base, main_~#a~0#1.offset, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#e~0#1.base, main_~#e~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset);< 29#$Ultimate##0true [2023-11-23 21:35:36,205 INFO L750 eck$LassoCheckResult]: Loop: 29#$Ultimate##0true ~a.base, ~a.offset := #in~a.base, #in~a.offset;~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~e.base, ~e.offset := #in~e.base, #in~e.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem16 := read~int#1(~a.base, ~a.offset, 4); 5#L101true assume #t~mem16 < 6;havoc #t~mem16;call write~int#2(0, ~b.base, ~b.offset, 4); 6#L107true call func_to_recursive_line_24_to_25_0(~e.base, ~e.offset, ~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 42#$Ultimate##0true ~e.base, ~e.offset := #in~e.base, #in~e.offset;~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem13 := read~int#2(~b.base, ~b.offset, 4); 25#L81true assume !(#t~mem13 < 6);havoc #t~mem13; 21#L81-1true assume true; 20#func_to_recursive_line_24_to_25_0EXITtrue >#112#return; 3#L107-1true call #t~mem17 := read~int#1(~a.base, ~a.offset, 4);#t~pre18 := 1 + #t~mem17;call write~int#1(1 + #t~mem17, ~a.base, ~a.offset, 4);havoc #t~mem17;havoc #t~pre18; 34#L112true call func_to_recursive_line_23_to_24_0(~a.base, ~a.offset, ~b.base, ~b.offset, ~c.base, ~c.offset, ~e.base, ~e.offset, ~d.base, ~d.offset);< 29#$Ultimate##0true [2023-11-23 21:35:36,211 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:35:36,212 INFO L85 PathProgramCache]: Analyzing trace with hash 82544, now seen corresponding path program 1 times [2023-11-23 21:35:36,222 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 21:35:36,223 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1187948866] [2023-11-23 21:35:36,223 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:35:36,224 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 21:35:36,433 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 21:35:36,433 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-11-23 21:35:36,499 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 21:35:36,541 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-11-23 21:35:36,544 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:35:36,545 INFO L85 PathProgramCache]: Analyzing trace with hash 2053320187, now seen corresponding path program 1 times [2023-11-23 21:35:36,545 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 21:35:36,545 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [455506325] [2023-11-23 21:35:36,545 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:35:36,546 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 21:35:36,582 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:37,018 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:37,030 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:37,196 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-11-23 21:35:37,197 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-11-23 21:35:37,197 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [455506325] [2023-11-23 21:35:37,198 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [455506325] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-23 21:35:37,198 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-23 21:35:37,199 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2023-11-23 21:35:37,199 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1807871949] [2023-11-23 21:35:37,200 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-23 21:35:37,204 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-11-23 21:35:37,205 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-11-23 21:35:37,248 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2023-11-23 21:35:37,249 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2023-11-23 21:35:37,251 INFO L87 Difference]: Start difference. First operand has 50 states, 34 states have (on average 1.2941176470588236) internal successors, (44), 39 states have internal predecessors, (44), 10 states have call successors, (10), 5 states have call predecessors, (10), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand has 6 states, 5 states have (on average 1.2) internal successors, (6), 5 states have internal predecessors, (6), 2 states have call successors, (2), 2 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2023-11-23 21:35:37,552 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-11-23 21:35:37,553 INFO L93 Difference]: Finished difference Result 59 states and 76 transitions. [2023-11-23 21:35:37,555 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 59 states and 76 transitions. [2023-11-23 21:35:37,560 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 23 [2023-11-23 21:35:37,579 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 59 states to 42 states and 53 transitions. [2023-11-23 21:35:37,581 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 42 [2023-11-23 21:35:37,583 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 42 [2023-11-23 21:35:37,583 INFO L73 IsDeterministic]: Start isDeterministic. Operand 42 states and 53 transitions. [2023-11-23 21:35:37,585 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2023-11-23 21:35:37,586 INFO L218 hiAutomatonCegarLoop]: Abstraction has 42 states and 53 transitions. [2023-11-23 21:35:37,604 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 42 states and 53 transitions. [2023-11-23 21:35:37,618 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 42 to 36. [2023-11-23 21:35:37,619 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 25 states have internal predecessors, (25), 10 states have call successors, (10), 5 states have call predecessors, (10), 5 states have return successors, (9), 8 states have call predecessors, (9), 8 states have call successors, (9) [2023-11-23 21:35:37,621 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 44 transitions. [2023-11-23 21:35:37,622 INFO L240 hiAutomatonCegarLoop]: Abstraction has 36 states and 44 transitions. [2023-11-23 21:35:37,623 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2023-11-23 21:35:37,627 INFO L428 stractBuchiCegarLoop]: Abstraction has 36 states and 44 transitions. [2023-11-23 21:35:37,627 INFO L335 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2023-11-23 21:35:37,628 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 36 states and 44 transitions. [2023-11-23 21:35:37,629 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 23 [2023-11-23 21:35:37,629 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-11-23 21:35:37,630 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-11-23 21:35:37,631 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2023-11-23 21:35:37,631 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-11-23 21:35:37,631 INFO L748 eck$LassoCheckResult]: Stem: 161#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); 145#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~mem19#1, main_#t~mem20#1, main_#t~short21#1, main_#t~mem22#1, main_#t~short23#1, main_#t~mem24#1, main_#t~short25#1, main_#t~mem26#1, main_#t~short27#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset, main_~#e~0#1.base, main_~#e~0#1.offset;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#1(6, main_~#a~0#1.base, main_~#a~0#1.offset, 4);call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#2(6, main_~#b~0#1.base, main_~#b~0#1.offset, 4);call main_~#c~0#1.base, main_~#c~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#4(6, main_~#c~0#1.base, main_~#c~0#1.offset, 4);call main_~#d~0#1.base, main_~#d~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#3(6, main_~#d~0#1.base, main_~#d~0#1.offset, 4);call main_~#e~0#1.base, main_~#e~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#5(6, main_~#e~0#1.base, main_~#e~0#1.offset, 4);call write~int#1(0, main_~#a~0#1.base, main_~#a~0#1.offset, 4); 134#L128 call func_to_recursive_line_23_to_24_0(main_~#a~0#1.base, main_~#a~0#1.offset, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#e~0#1.base, main_~#e~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset);< 158#$Ultimate##0 [2023-11-23 21:35:37,632 INFO L750 eck$LassoCheckResult]: Loop: 158#$Ultimate##0 ~a.base, ~a.offset := #in~a.base, #in~a.offset;~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~e.base, ~e.offset := #in~e.base, #in~e.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem16 := read~int#1(~a.base, ~a.offset, 4); 143#L101 assume #t~mem16 < 6;havoc #t~mem16;call write~int#2(0, ~b.base, ~b.offset, 4); 139#L107 call func_to_recursive_line_24_to_25_0(~e.base, ~e.offset, ~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 144#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem13 := read~int#2(~b.base, ~b.offset, 4); 138#L81 assume #t~mem13 < 6;havoc #t~mem13;call write~int#4(0, ~c.base, ~c.offset, 4); 141#L87 call func_to_recursive_line_25_to_26_0(~e.base, ~e.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 159#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#4(~c.base, ~c.offset, 4); 160#L61 assume !(#t~mem10 < 6);havoc #t~mem10; 149#L61-1 assume true; 146#func_to_recursive_line_25_to_26_0EXIT >#98#return; 148#L87-1 call #t~mem14 := read~int#2(~b.base, ~b.offset, 4);#t~pre15 := 1 + #t~mem14;call write~int#2(1 + #t~mem14, ~b.base, ~b.offset, 4);havoc #t~mem14;havoc #t~pre15; 140#L92 call func_to_recursive_line_24_to_25_0(~e.base, ~e.offset, ~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 144#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem13 := read~int#2(~b.base, ~b.offset, 4); 138#L81 assume !(#t~mem13 < 6);havoc #t~mem13; 142#L81-1 assume true; 162#func_to_recursive_line_24_to_25_0EXIT >#100#return; 163#L81-1 assume true; 164#func_to_recursive_line_24_to_25_0EXIT >#112#return; 133#L107-1 call #t~mem17 := read~int#1(~a.base, ~a.offset, 4);#t~pre18 := 1 + #t~mem17;call write~int#1(1 + #t~mem17, ~a.base, ~a.offset, 4);havoc #t~mem17;havoc #t~pre18; 135#L112 call func_to_recursive_line_23_to_24_0(~a.base, ~a.offset, ~b.base, ~b.offset, ~c.base, ~c.offset, ~e.base, ~e.offset, ~d.base, ~d.offset);< 158#$Ultimate##0 [2023-11-23 21:35:37,632 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:35:37,632 INFO L85 PathProgramCache]: Analyzing trace with hash 82544, now seen corresponding path program 2 times [2023-11-23 21:35:37,633 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 21:35:37,633 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [335455380] [2023-11-23 21:35:37,633 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:35:37,634 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 21:35:37,657 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 21:35:37,658 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-11-23 21:35:37,673 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 21:35:37,678 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-11-23 21:35:37,679 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:35:37,679 INFO L85 PathProgramCache]: Analyzing trace with hash 54735792, now seen corresponding path program 1 times [2023-11-23 21:35:37,680 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 21:35:37,680 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1706172151] [2023-11-23 21:35:37,680 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:35:37,681 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 21:35:37,700 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:37,944 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:37,972 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:38,118 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:38,126 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:38,202 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 8 [2023-11-23 21:35:38,206 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:38,211 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2023-11-23 21:35:38,212 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-11-23 21:35:38,213 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1706172151] [2023-11-23 21:35:38,213 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1706172151] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-23 21:35:38,214 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-23 21:35:38,214 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2023-11-23 21:35:38,214 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [161958500] [2023-11-23 21:35:38,219 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-23 21:35:38,220 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-11-23 21:35:38,221 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-11-23 21:35:38,221 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2023-11-23 21:35:38,222 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2023-11-23 21:35:38,222 INFO L87 Difference]: Start difference. First operand 36 states and 44 transitions. cyclomatic complexity: 13 Second operand has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 3 states have call successors, (4), 2 states have call predecessors, (4), 3 states have return successors, (3), 1 states have call predecessors, (3), 3 states have call successors, (3) [2023-11-23 21:35:38,430 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-11-23 21:35:38,430 INFO L93 Difference]: Finished difference Result 42 states and 52 transitions. [2023-11-23 21:35:38,431 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 42 states and 52 transitions. [2023-11-23 21:35:38,440 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 23 [2023-11-23 21:35:38,443 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 42 states to 42 states and 52 transitions. [2023-11-23 21:35:38,444 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 42 [2023-11-23 21:35:38,445 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 42 [2023-11-23 21:35:38,445 INFO L73 IsDeterministic]: Start isDeterministic. Operand 42 states and 52 transitions. [2023-11-23 21:35:38,446 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2023-11-23 21:35:38,446 INFO L218 hiAutomatonCegarLoop]: Abstraction has 42 states and 52 transitions. [2023-11-23 21:35:38,447 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 42 states and 52 transitions. [2023-11-23 21:35:38,454 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 42 to 38. [2023-11-23 21:35:38,455 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 38 states, 22 states have (on average 1.1818181818181819) internal successors, (26), 26 states have internal predecessors, (26), 10 states have call successors, (10), 5 states have call predecessors, (10), 6 states have return successors, (10), 8 states have call predecessors, (10), 8 states have call successors, (10) [2023-11-23 21:35:38,456 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 46 transitions. [2023-11-23 21:35:38,457 INFO L240 hiAutomatonCegarLoop]: Abstraction has 38 states and 46 transitions. [2023-11-23 21:35:38,457 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2023-11-23 21:35:38,459 INFO L428 stractBuchiCegarLoop]: Abstraction has 38 states and 46 transitions. [2023-11-23 21:35:38,459 INFO L335 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2023-11-23 21:35:38,459 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 38 states and 46 transitions. [2023-11-23 21:35:38,466 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 23 [2023-11-23 21:35:38,466 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-11-23 21:35:38,466 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-11-23 21:35:38,469 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2023-11-23 21:35:38,470 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-11-23 21:35:38,470 INFO L748 eck$LassoCheckResult]: Stem: 277#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); 259#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~mem19#1, main_#t~mem20#1, main_#t~short21#1, main_#t~mem22#1, main_#t~short23#1, main_#t~mem24#1, main_#t~short25#1, main_#t~mem26#1, main_#t~short27#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset, main_~#e~0#1.base, main_~#e~0#1.offset;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#1(6, main_~#a~0#1.base, main_~#a~0#1.offset, 4);call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#2(6, main_~#b~0#1.base, main_~#b~0#1.offset, 4);call main_~#c~0#1.base, main_~#c~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#4(6, main_~#c~0#1.base, main_~#c~0#1.offset, 4);call main_~#d~0#1.base, main_~#d~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#3(6, main_~#d~0#1.base, main_~#d~0#1.offset, 4);call main_~#e~0#1.base, main_~#e~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#5(6, main_~#e~0#1.base, main_~#e~0#1.offset, 4);call write~int#1(0, main_~#a~0#1.base, main_~#a~0#1.offset, 4); 249#L128 call func_to_recursive_line_23_to_24_0(main_~#a~0#1.base, main_~#a~0#1.offset, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#e~0#1.base, main_~#e~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset);< 271#$Ultimate##0 [2023-11-23 21:35:38,470 INFO L750 eck$LassoCheckResult]: Loop: 271#$Ultimate##0 ~a.base, ~a.offset := #in~a.base, #in~a.offset;~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~e.base, ~e.offset := #in~e.base, #in~e.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem16 := read~int#1(~a.base, ~a.offset, 4); 257#L101 assume #t~mem16 < 6;havoc #t~mem16;call write~int#2(0, ~b.base, ~b.offset, 4); 254#L107 call func_to_recursive_line_24_to_25_0(~e.base, ~e.offset, ~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 258#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem13 := read~int#2(~b.base, ~b.offset, 4); 252#L81 assume #t~mem13 < 6;havoc #t~mem13;call write~int#4(0, ~c.base, ~c.offset, 4); 255#L87 call func_to_recursive_line_25_to_26_0(~e.base, ~e.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 272#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#4(~c.base, ~c.offset, 4); 275#L61 assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~d.base, ~d.offset, 4); 266#L67 call func_to_recursive_line_26_to_27_0(~e.base, ~e.offset, ~d.base, ~d.offset);< 264#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem7 := read~int#3(~d.base, ~d.offset, 4); 267#L41 assume !(#t~mem7 < 6);havoc #t~mem7; 269#L41-1 assume true; 268#func_to_recursive_line_26_to_27_0EXIT >#102#return; 270#L67-1 call #t~mem11 := read~int#4(~c.base, ~c.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#4(1 + #t~mem11, ~c.base, ~c.offset, 4);havoc #t~mem11;havoc #t~pre12; 261#L72 call func_to_recursive_line_25_to_26_0(~e.base, ~e.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 272#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#4(~c.base, ~c.offset, 4); 275#L61 assume !(#t~mem10 < 6);havoc #t~mem10; 276#L61-1 assume true; 260#func_to_recursive_line_25_to_26_0EXIT >#104#return; 262#L61-1 assume true; 274#func_to_recursive_line_25_to_26_0EXIT >#98#return; 273#L87-1 call #t~mem14 := read~int#2(~b.base, ~b.offset, 4);#t~pre15 := 1 + #t~mem14;call write~int#2(1 + #t~mem14, ~b.base, ~b.offset, 4);havoc #t~mem14;havoc #t~pre15; 253#L92 call func_to_recursive_line_24_to_25_0(~e.base, ~e.offset, ~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 258#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem13 := read~int#2(~b.base, ~b.offset, 4); 252#L81 assume !(#t~mem13 < 6);havoc #t~mem13; 256#L81-1 assume true; 278#func_to_recursive_line_24_to_25_0EXIT >#100#return; 279#L81-1 assume true; 280#func_to_recursive_line_24_to_25_0EXIT >#112#return; 247#L107-1 call #t~mem17 := read~int#1(~a.base, ~a.offset, 4);#t~pre18 := 1 + #t~mem17;call write~int#1(1 + #t~mem17, ~a.base, ~a.offset, 4);havoc #t~mem17;havoc #t~pre18; 248#L112 call func_to_recursive_line_23_to_24_0(~a.base, ~a.offset, ~b.base, ~b.offset, ~c.base, ~c.offset, ~e.base, ~e.offset, ~d.base, ~d.offset);< 271#$Ultimate##0 [2023-11-23 21:35:38,471 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:35:38,471 INFO L85 PathProgramCache]: Analyzing trace with hash 82544, now seen corresponding path program 3 times [2023-11-23 21:35:38,471 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 21:35:38,472 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2101317994] [2023-11-23 21:35:38,472 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:35:38,473 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 21:35:38,513 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 21:35:38,513 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-11-23 21:35:38,540 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 21:35:38,546 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-11-23 21:35:38,547 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:35:38,547 INFO L85 PathProgramCache]: Analyzing trace with hash 1525796123, now seen corresponding path program 1 times [2023-11-23 21:35:38,548 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 21:35:38,548 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [622017104] [2023-11-23 21:35:38,548 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:35:38,548 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 21:35:38,576 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:38,756 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:38,808 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:38,940 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:38,950 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:39,024 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:39,027 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:39,071 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 8 [2023-11-23 21:35:39,074 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:39,077 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 19 [2023-11-23 21:35:39,079 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:39,083 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2023-11-23 21:35:39,083 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-11-23 21:35:39,083 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [622017104] [2023-11-23 21:35:39,083 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [622017104] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-23 21:35:39,084 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-23 21:35:39,084 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2023-11-23 21:35:39,084 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [219445343] [2023-11-23 21:35:39,084 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-23 21:35:39,085 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-11-23 21:35:39,085 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-11-23 21:35:39,085 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2023-11-23 21:35:39,086 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2023-11-23 21:35:39,086 INFO L87 Difference]: Start difference. First operand 38 states and 46 transitions. cyclomatic complexity: 13 Second operand has 6 states, 5 states have (on average 3.6) internal successors, (18), 5 states have internal predecessors, (18), 3 states have call successors, (6), 2 states have call predecessors, (6), 3 states have return successors, (5), 1 states have call predecessors, (5), 3 states have call successors, (5) [2023-11-23 21:35:39,251 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-11-23 21:35:39,251 INFO L93 Difference]: Finished difference Result 42 states and 51 transitions. [2023-11-23 21:35:39,251 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 42 states and 51 transitions. [2023-11-23 21:35:39,253 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 23 [2023-11-23 21:35:39,254 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 42 states to 42 states and 51 transitions. [2023-11-23 21:35:39,254 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 42 [2023-11-23 21:35:39,255 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 42 [2023-11-23 21:35:39,255 INFO L73 IsDeterministic]: Start isDeterministic. Operand 42 states and 51 transitions. [2023-11-23 21:35:39,256 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2023-11-23 21:35:39,256 INFO L218 hiAutomatonCegarLoop]: Abstraction has 42 states and 51 transitions. [2023-11-23 21:35:39,256 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 42 states and 51 transitions. [2023-11-23 21:35:39,260 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 42 to 40. [2023-11-23 21:35:39,260 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 40 states, 23 states have (on average 1.173913043478261) internal successors, (27), 27 states have internal predecessors, (27), 10 states have call successors, (10), 5 states have call predecessors, (10), 7 states have return successors, (11), 8 states have call predecessors, (11), 8 states have call successors, (11) [2023-11-23 21:35:39,262 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 48 transitions. [2023-11-23 21:35:39,263 INFO L240 hiAutomatonCegarLoop]: Abstraction has 40 states and 48 transitions. [2023-11-23 21:35:39,263 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2023-11-23 21:35:39,264 INFO L428 stractBuchiCegarLoop]: Abstraction has 40 states and 48 transitions. [2023-11-23 21:35:39,264 INFO L335 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2023-11-23 21:35:39,264 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 40 states and 48 transitions. [2023-11-23 21:35:39,265 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 23 [2023-11-23 21:35:39,266 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-11-23 21:35:39,266 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-11-23 21:35:39,267 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2023-11-23 21:35:39,267 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-11-23 21:35:39,268 INFO L748 eck$LassoCheckResult]: Stem: 425#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); 405#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~mem19#1, main_#t~mem20#1, main_#t~short21#1, main_#t~mem22#1, main_#t~short23#1, main_#t~mem24#1, main_#t~short25#1, main_#t~mem26#1, main_#t~short27#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset, main_~#e~0#1.base, main_~#e~0#1.offset;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#1(6, main_~#a~0#1.base, main_~#a~0#1.offset, 4);call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#2(6, main_~#b~0#1.base, main_~#b~0#1.offset, 4);call main_~#c~0#1.base, main_~#c~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#4(6, main_~#c~0#1.base, main_~#c~0#1.offset, 4);call main_~#d~0#1.base, main_~#d~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#3(6, main_~#d~0#1.base, main_~#d~0#1.offset, 4);call main_~#e~0#1.base, main_~#e~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#5(6, main_~#e~0#1.base, main_~#e~0#1.offset, 4);call write~int#1(0, main_~#a~0#1.base, main_~#a~0#1.offset, 4); 391#L128 call func_to_recursive_line_23_to_24_0(main_~#a~0#1.base, main_~#a~0#1.offset, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#e~0#1.base, main_~#e~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset);< 416#$Ultimate##0 [2023-11-23 21:35:39,268 INFO L750 eck$LassoCheckResult]: Loop: 416#$Ultimate##0 ~a.base, ~a.offset := #in~a.base, #in~a.offset;~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~e.base, ~e.offset := #in~e.base, #in~e.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem16 := read~int#1(~a.base, ~a.offset, 4); 403#L101 assume #t~mem16 < 6;havoc #t~mem16;call write~int#2(0, ~b.base, ~b.offset, 4); 399#L107 call func_to_recursive_line_24_to_25_0(~e.base, ~e.offset, ~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 404#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem13 := read~int#2(~b.base, ~b.offset, 4); 398#L81 assume #t~mem13 < 6;havoc #t~mem13;call write~int#4(0, ~c.base, ~c.offset, 4); 401#L87 call func_to_recursive_line_25_to_26_0(~e.base, ~e.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 418#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#4(~c.base, ~c.offset, 4); 422#L61 assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~d.base, ~d.offset, 4); 411#L67 call func_to_recursive_line_26_to_27_0(~e.base, ~e.offset, ~d.base, ~d.offset);< 410#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem7 := read~int#3(~d.base, ~d.offset, 4); 413#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#5(0, ~e.base, ~e.offset, 4); 394#L47 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 396#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 397#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 392#L25-1 assume true; 395#func_to_recursive_line_27_to_27_0EXIT >#108#return; 409#L47-1 call #t~mem8 := read~int#3(~d.base, ~d.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~d.base, ~d.offset, 4);havoc #t~mem8;havoc #t~pre9; 412#L52 call func_to_recursive_line_26_to_27_0(~e.base, ~e.offset, ~d.base, ~d.offset);< 410#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem7 := read~int#3(~d.base, ~d.offset, 4); 413#L41 assume !(#t~mem7 < 6);havoc #t~mem7; 417#L41-1 assume true; 414#func_to_recursive_line_26_to_27_0EXIT >#110#return; 415#L41-1 assume true; 428#func_to_recursive_line_26_to_27_0EXIT >#102#return; 420#L67-1 call #t~mem11 := read~int#4(~c.base, ~c.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#4(1 + #t~mem11, ~c.base, ~c.offset, 4);havoc #t~mem11;havoc #t~pre12; 407#L72 call func_to_recursive_line_25_to_26_0(~e.base, ~e.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 418#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#4(~c.base, ~c.offset, 4); 422#L61 assume !(#t~mem10 < 6);havoc #t~mem10; 421#L61-1 assume true; 406#func_to_recursive_line_25_to_26_0EXIT >#104#return; 408#L61-1 assume true; 427#func_to_recursive_line_25_to_26_0EXIT >#98#return; 419#L87-1 call #t~mem14 := read~int#2(~b.base, ~b.offset, 4);#t~pre15 := 1 + #t~mem14;call write~int#2(1 + #t~mem14, ~b.base, ~b.offset, 4);havoc #t~mem14;havoc #t~pre15; 400#L92 call func_to_recursive_line_24_to_25_0(~e.base, ~e.offset, ~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 404#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem13 := read~int#2(~b.base, ~b.offset, 4); 398#L81 assume !(#t~mem13 < 6);havoc #t~mem13; 402#L81-1 assume true; 423#func_to_recursive_line_24_to_25_0EXIT >#100#return; 424#L81-1 assume true; 426#func_to_recursive_line_24_to_25_0EXIT >#112#return; 389#L107-1 call #t~mem17 := read~int#1(~a.base, ~a.offset, 4);#t~pre18 := 1 + #t~mem17;call write~int#1(1 + #t~mem17, ~a.base, ~a.offset, 4);havoc #t~mem17;havoc #t~pre18; 390#L112 call func_to_recursive_line_23_to_24_0(~a.base, ~a.offset, ~b.base, ~b.offset, ~c.base, ~c.offset, ~e.base, ~e.offset, ~d.base, ~d.offset);< 416#$Ultimate##0 [2023-11-23 21:35:39,268 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:35:39,269 INFO L85 PathProgramCache]: Analyzing trace with hash 82544, now seen corresponding path program 4 times [2023-11-23 21:35:39,269 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 21:35:39,269 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [648429859] [2023-11-23 21:35:39,269 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:35:39,270 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 21:35:39,285 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 21:35:39,286 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-11-23 21:35:39,294 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 21:35:39,299 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-11-23 21:35:39,300 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:35:39,300 INFO L85 PathProgramCache]: Analyzing trace with hash 1439872263, now seen corresponding path program 1 times [2023-11-23 21:35:39,300 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 21:35:39,300 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2051106974] [2023-11-23 21:35:39,300 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:35:39,301 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 21:35:39,325 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:39,562 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:39,578 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:39,730 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:39,754 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:39,875 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:39,882 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:39,955 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:39,958 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:40,024 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 8 [2023-11-23 21:35:40,026 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:40,030 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 19 [2023-11-23 21:35:40,034 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:40,038 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 30 [2023-11-23 21:35:40,044 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:40,051 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2023-11-23 21:35:40,051 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-11-23 21:35:40,052 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2051106974] [2023-11-23 21:35:40,052 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2051106974] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-23 21:35:40,053 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-23 21:35:40,053 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2023-11-23 21:35:40,053 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1009343613] [2023-11-23 21:35:40,054 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-23 21:35:40,055 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-11-23 21:35:40,055 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-11-23 21:35:40,056 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2023-11-23 21:35:40,056 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2023-11-23 21:35:40,056 INFO L87 Difference]: Start difference. First operand 40 states and 48 transitions. cyclomatic complexity: 13 Second operand has 6 states, 5 states have (on average 4.8) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (8), 2 states have call predecessors, (8), 3 states have return successors, (7), 1 states have call predecessors, (7), 3 states have call successors, (7) [2023-11-23 21:35:40,218 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-11-23 21:35:40,218 INFO L93 Difference]: Finished difference Result 42 states and 50 transitions. [2023-11-23 21:35:40,218 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 42 states and 50 transitions. [2023-11-23 21:35:40,220 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 23 [2023-11-23 21:35:40,222 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 42 states to 42 states and 50 transitions. [2023-11-23 21:35:40,222 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 42 [2023-11-23 21:35:40,222 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 42 [2023-11-23 21:35:40,222 INFO L73 IsDeterministic]: Start isDeterministic. Operand 42 states and 50 transitions. [2023-11-23 21:35:40,223 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2023-11-23 21:35:40,223 INFO L218 hiAutomatonCegarLoop]: Abstraction has 42 states and 50 transitions. [2023-11-23 21:35:40,224 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 42 states and 50 transitions. [2023-11-23 21:35:40,231 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 42 to 42. [2023-11-23 21:35:40,232 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 42 states, 24 states have (on average 1.1666666666666667) internal successors, (28), 28 states have internal predecessors, (28), 10 states have call successors, (10), 5 states have call predecessors, (10), 8 states have return successors, (12), 8 states have call predecessors, (12), 8 states have call successors, (12) [2023-11-23 21:35:40,232 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 42 states to 42 states and 50 transitions. [2023-11-23 21:35:40,233 INFO L240 hiAutomatonCegarLoop]: Abstraction has 42 states and 50 transitions. [2023-11-23 21:35:40,233 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2023-11-23 21:35:40,234 INFO L428 stractBuchiCegarLoop]: Abstraction has 42 states and 50 transitions. [2023-11-23 21:35:40,234 INFO L335 stractBuchiCegarLoop]: ======== Iteration 5 ============ [2023-11-23 21:35:40,234 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 42 states and 50 transitions. [2023-11-23 21:35:40,235 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 23 [2023-11-23 21:35:40,235 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-11-23 21:35:40,236 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-11-23 21:35:40,237 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2023-11-23 21:35:40,237 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-11-23 21:35:40,238 INFO L748 eck$LassoCheckResult]: Stem: 613#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); 594#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~mem19#1, main_#t~mem20#1, main_#t~short21#1, main_#t~mem22#1, main_#t~short23#1, main_#t~mem24#1, main_#t~short25#1, main_#t~mem26#1, main_#t~short27#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset, main_~#e~0#1.base, main_~#e~0#1.offset;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#1(6, main_~#a~0#1.base, main_~#a~0#1.offset, 4);call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#2(6, main_~#b~0#1.base, main_~#b~0#1.offset, 4);call main_~#c~0#1.base, main_~#c~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#4(6, main_~#c~0#1.base, main_~#c~0#1.offset, 4);call main_~#d~0#1.base, main_~#d~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#3(6, main_~#d~0#1.base, main_~#d~0#1.offset, 4);call main_~#e~0#1.base, main_~#e~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#5(6, main_~#e~0#1.base, main_~#e~0#1.offset, 4);call write~int#1(0, main_~#a~0#1.base, main_~#a~0#1.offset, 4); 580#L128 call func_to_recursive_line_23_to_24_0(main_~#a~0#1.base, main_~#a~0#1.offset, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#e~0#1.base, main_~#e~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset);< 605#$Ultimate##0 [2023-11-23 21:35:40,238 INFO L750 eck$LassoCheckResult]: Loop: 605#$Ultimate##0 ~a.base, ~a.offset := #in~a.base, #in~a.offset;~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~e.base, ~e.offset := #in~e.base, #in~e.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem16 := read~int#1(~a.base, ~a.offset, 4); 592#L101 assume #t~mem16 < 6;havoc #t~mem16;call write~int#2(0, ~b.base, ~b.offset, 4); 588#L107 call func_to_recursive_line_24_to_25_0(~e.base, ~e.offset, ~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 593#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem13 := read~int#2(~b.base, ~b.offset, 4); 587#L81 assume #t~mem13 < 6;havoc #t~mem13;call write~int#4(0, ~c.base, ~c.offset, 4); 590#L87 call func_to_recursive_line_25_to_26_0(~e.base, ~e.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 607#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#4(~c.base, ~c.offset, 4); 611#L61 assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~d.base, ~d.offset, 4); 600#L67 call func_to_recursive_line_26_to_27_0(~e.base, ~e.offset, ~d.base, ~d.offset);< 599#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem7 := read~int#3(~d.base, ~d.offset, 4); 602#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#5(0, ~e.base, ~e.offset, 4); 583#L47 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 585#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 586#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 582#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 585#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 586#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 581#L25-1 assume true; 584#func_to_recursive_line_27_to_27_0EXIT >#106#return; 598#L25-1 assume true; 618#func_to_recursive_line_27_to_27_0EXIT >#108#return; 616#L47-1 call #t~mem8 := read~int#3(~d.base, ~d.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~d.base, ~d.offset, 4);havoc #t~mem8;havoc #t~pre9; 601#L52 call func_to_recursive_line_26_to_27_0(~e.base, ~e.offset, ~d.base, ~d.offset);< 599#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem7 := read~int#3(~d.base, ~d.offset, 4); 602#L41 assume !(#t~mem7 < 6);havoc #t~mem7; 606#L41-1 assume true; 603#func_to_recursive_line_26_to_27_0EXIT >#110#return; 604#L41-1 assume true; 619#func_to_recursive_line_26_to_27_0EXIT >#102#return; 609#L67-1 call #t~mem11 := read~int#4(~c.base, ~c.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#4(1 + #t~mem11, ~c.base, ~c.offset, 4);havoc #t~mem11;havoc #t~pre12; 596#L72 call func_to_recursive_line_25_to_26_0(~e.base, ~e.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 607#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#4(~c.base, ~c.offset, 4); 611#L61 assume !(#t~mem10 < 6);havoc #t~mem10; 612#L61-1 assume true; 595#func_to_recursive_line_25_to_26_0EXIT >#104#return; 597#L61-1 assume true; 610#func_to_recursive_line_25_to_26_0EXIT >#98#return; 608#L87-1 call #t~mem14 := read~int#2(~b.base, ~b.offset, 4);#t~pre15 := 1 + #t~mem14;call write~int#2(1 + #t~mem14, ~b.base, ~b.offset, 4);havoc #t~mem14;havoc #t~pre15; 589#L92 call func_to_recursive_line_24_to_25_0(~e.base, ~e.offset, ~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 593#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem13 := read~int#2(~b.base, ~b.offset, 4); 587#L81 assume !(#t~mem13 < 6);havoc #t~mem13; 591#L81-1 assume true; 614#func_to_recursive_line_24_to_25_0EXIT >#100#return; 615#L81-1 assume true; 617#func_to_recursive_line_24_to_25_0EXIT >#112#return; 578#L107-1 call #t~mem17 := read~int#1(~a.base, ~a.offset, 4);#t~pre18 := 1 + #t~mem17;call write~int#1(1 + #t~mem17, ~a.base, ~a.offset, 4);havoc #t~mem17;havoc #t~pre18; 579#L112 call func_to_recursive_line_23_to_24_0(~a.base, ~a.offset, ~b.base, ~b.offset, ~c.base, ~c.offset, ~e.base, ~e.offset, ~d.base, ~d.offset);< 605#$Ultimate##0 [2023-11-23 21:35:40,238 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:35:40,238 INFO L85 PathProgramCache]: Analyzing trace with hash 82544, now seen corresponding path program 5 times [2023-11-23 21:35:40,239 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 21:35:40,239 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [258574954] [2023-11-23 21:35:40,239 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:35:40,239 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 21:35:40,258 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 21:35:40,259 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-11-23 21:35:40,268 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 21:35:40,275 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-11-23 21:35:40,276 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:35:40,276 INFO L85 PathProgramCache]: Analyzing trace with hash 405682375, now seen corresponding path program 1 times [2023-11-23 21:35:40,276 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 21:35:40,277 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1263655738] [2023-11-23 21:35:40,277 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:35:40,277 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 21:35:40,305 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:40,675 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:40,712 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:41,017 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:41,032 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:41,228 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:41,236 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:41,368 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:41,376 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:41,519 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:41,521 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:41,587 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 13 [2023-11-23 21:35:41,590 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:41,593 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 24 [2023-11-23 21:35:41,599 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:41,602 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 35 [2023-11-23 21:35:41,607 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:41,611 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 6 proven. 3 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2023-11-23 21:35:41,612 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-11-23 21:35:41,612 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1263655738] [2023-11-23 21:35:41,616 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1263655738] provided 0 perfect and 1 imperfect interpolant sequences [2023-11-23 21:35:41,617 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1795183449] [2023-11-23 21:35:41,617 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:35:41,617 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-11-23 21:35:41,618 INFO L189 MonitoredProcess]: No working directory specified, using /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_31b1204a-741c-4da8-8208-e27463b23dc5/bin/uautomizer-verify-zZY32mL2XJ/z3 [2023-11-23 21:35:41,623 INFO L229 MonitoredProcess]: Starting monitored process 2 with /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_31b1204a-741c-4da8-8208-e27463b23dc5/bin/uautomizer-verify-zZY32mL2XJ/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-11-23 21:35:41,628 INFO L327 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_31b1204a-741c-4da8-8208-e27463b23dc5/bin/uautomizer-verify-zZY32mL2XJ/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2023-11-23 21:35:41,803 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:41,807 INFO L262 TraceCheckSpWp]: Trace formula consists of 461 conjuncts, 31 conjunts are in the unsatisfiable core [2023-11-23 21:35:41,812 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 21:35:41,869 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2023-11-23 21:35:42,137 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 4 proven. 3 refuted. 0 times theorem prover too weak. 9 trivial. 0 not checked. [2023-11-23 21:35:42,137 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2023-11-23 21:35:43,144 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1795183449] provided 0 perfect and 1 imperfect interpolant sequences [2023-11-23 21:35:43,144 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-11-23 21:35:43,144 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 16 [2023-11-23 21:35:43,144 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1941624409] [2023-11-23 21:35:43,144 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-11-23 21:35:43,145 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-11-23 21:35:43,145 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-11-23 21:35:43,146 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2023-11-23 21:35:43,146 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=85, Invalid=467, Unknown=0, NotChecked=0, Total=552 [2023-11-23 21:35:43,147 INFO L87 Difference]: Start difference. First operand 42 states and 50 transitions. cyclomatic complexity: 13 Second operand has 16 states, 12 states have (on average 3.75) internal successors, (45), 15 states have internal predecessors, (45), 8 states have call successors, (17), 4 states have call predecessors, (17), 7 states have return successors, (14), 5 states have call predecessors, (14), 8 states have call successors, (14) [2023-11-23 21:35:43,735 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-11-23 21:35:43,736 INFO L93 Difference]: Finished difference Result 46 states and 54 transitions. [2023-11-23 21:35:43,736 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 46 states and 54 transitions. [2023-11-23 21:35:43,737 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 23 [2023-11-23 21:35:43,739 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 46 states to 46 states and 54 transitions. [2023-11-23 21:35:43,739 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 46 [2023-11-23 21:35:43,739 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 46 [2023-11-23 21:35:43,739 INFO L73 IsDeterministic]: Start isDeterministic. Operand 46 states and 54 transitions. [2023-11-23 21:35:43,740 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2023-11-23 21:35:43,740 INFO L218 hiAutomatonCegarLoop]: Abstraction has 46 states and 54 transitions. [2023-11-23 21:35:43,740 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 46 states and 54 transitions. [2023-11-23 21:35:43,744 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 46 to 46. [2023-11-23 21:35:43,744 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 46 states, 26 states have (on average 1.1538461538461537) internal successors, (30), 30 states have internal predecessors, (30), 10 states have call successors, (10), 5 states have call predecessors, (10), 10 states have return successors, (14), 10 states have call predecessors, (14), 8 states have call successors, (14) [2023-11-23 21:35:43,745 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 46 states to 46 states and 54 transitions. [2023-11-23 21:35:43,745 INFO L240 hiAutomatonCegarLoop]: Abstraction has 46 states and 54 transitions. [2023-11-23 21:35:43,746 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2023-11-23 21:35:43,746 INFO L428 stractBuchiCegarLoop]: Abstraction has 46 states and 54 transitions. [2023-11-23 21:35:43,746 INFO L335 stractBuchiCegarLoop]: ======== Iteration 6 ============ [2023-11-23 21:35:43,747 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 46 states and 54 transitions. [2023-11-23 21:35:43,747 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 23 [2023-11-23 21:35:43,747 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-11-23 21:35:43,748 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-11-23 21:35:43,750 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2023-11-23 21:35:43,750 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [6, 6, 4, 4, 4, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-11-23 21:35:43,750 INFO L748 eck$LassoCheckResult]: Stem: 1101#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); 1081#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~mem19#1, main_#t~mem20#1, main_#t~short21#1, main_#t~mem22#1, main_#t~short23#1, main_#t~mem24#1, main_#t~short25#1, main_#t~mem26#1, main_#t~short27#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset, main_~#e~0#1.base, main_~#e~0#1.offset;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#1(6, main_~#a~0#1.base, main_~#a~0#1.offset, 4);call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#2(6, main_~#b~0#1.base, main_~#b~0#1.offset, 4);call main_~#c~0#1.base, main_~#c~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#4(6, main_~#c~0#1.base, main_~#c~0#1.offset, 4);call main_~#d~0#1.base, main_~#d~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#3(6, main_~#d~0#1.base, main_~#d~0#1.offset, 4);call main_~#e~0#1.base, main_~#e~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#5(6, main_~#e~0#1.base, main_~#e~0#1.offset, 4);call write~int#1(0, main_~#a~0#1.base, main_~#a~0#1.offset, 4); 1070#L128 call func_to_recursive_line_23_to_24_0(main_~#a~0#1.base, main_~#a~0#1.offset, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#e~0#1.base, main_~#e~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset);< 1092#$Ultimate##0 [2023-11-23 21:35:43,750 INFO L750 eck$LassoCheckResult]: Loop: 1092#$Ultimate##0 ~a.base, ~a.offset := #in~a.base, #in~a.offset;~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~e.base, ~e.offset := #in~e.base, #in~e.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem16 := read~int#1(~a.base, ~a.offset, 4); 1079#L101 assume #t~mem16 < 6;havoc #t~mem16;call write~int#2(0, ~b.base, ~b.offset, 4); 1076#L107 call func_to_recursive_line_24_to_25_0(~e.base, ~e.offset, ~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 1080#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem13 := read~int#2(~b.base, ~b.offset, 4); 1074#L81 assume #t~mem13 < 6;havoc #t~mem13;call write~int#4(0, ~c.base, ~c.offset, 4); 1077#L87 call func_to_recursive_line_25_to_26_0(~e.base, ~e.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 1094#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#4(~c.base, ~c.offset, 4); 1098#L61 assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~d.base, ~d.offset, 4); 1088#L67 call func_to_recursive_line_26_to_27_0(~e.base, ~e.offset, ~d.base, ~d.offset);< 1086#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem7 := read~int#3(~d.base, ~d.offset, 4); 1089#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#5(0, ~e.base, ~e.offset, 4); 1066#L47 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 1072#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 1073#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 1067#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 1072#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 1073#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 1067#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 1072#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 1073#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 1065#L25-1 assume true; 1068#func_to_recursive_line_27_to_27_0EXIT >#106#return; 1082#L25-1 assume true; 1109#func_to_recursive_line_27_to_27_0EXIT >#106#return; 1106#L25-1 assume true; 1105#func_to_recursive_line_27_to_27_0EXIT >#108#return; 1102#L47-1 call #t~mem8 := read~int#3(~d.base, ~d.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~d.base, ~d.offset, 4);havoc #t~mem8;havoc #t~pre9; 1087#L52 call func_to_recursive_line_26_to_27_0(~e.base, ~e.offset, ~d.base, ~d.offset);< 1086#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem7 := read~int#3(~d.base, ~d.offset, 4); 1089#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#5(0, ~e.base, ~e.offset, 4); 1066#L47 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 1072#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 1073#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 1067#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 1072#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 1073#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 1067#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 1072#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 1073#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 1065#L25-1 assume true; 1068#func_to_recursive_line_27_to_27_0EXIT >#106#return; 1082#L25-1 assume true; 1109#func_to_recursive_line_27_to_27_0EXIT >#106#return; 1106#L25-1 assume true; 1105#func_to_recursive_line_27_to_27_0EXIT >#108#return; 1102#L47-1 call #t~mem8 := read~int#3(~d.base, ~d.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~d.base, ~d.offset, 4);havoc #t~mem8;havoc #t~pre9; 1087#L52 call func_to_recursive_line_26_to_27_0(~e.base, ~e.offset, ~d.base, ~d.offset);< 1086#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem7 := read~int#3(~d.base, ~d.offset, 4); 1089#L41 assume !(#t~mem7 < 6);havoc #t~mem7; 1093#L41-1 assume true; 1090#func_to_recursive_line_26_to_27_0EXIT >#110#return; 1091#L41-1 assume true; 1110#func_to_recursive_line_26_to_27_0EXIT >#110#return; 1108#L41-1 assume true; 1107#func_to_recursive_line_26_to_27_0EXIT >#102#return; 1096#L67-1 call #t~mem11 := read~int#4(~c.base, ~c.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#4(1 + #t~mem11, ~c.base, ~c.offset, 4);havoc #t~mem11;havoc #t~pre12; 1084#L72 call func_to_recursive_line_25_to_26_0(~e.base, ~e.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 1094#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#4(~c.base, ~c.offset, 4); 1098#L61 assume !(#t~mem10 < 6);havoc #t~mem10; 1097#L61-1 assume true; 1083#func_to_recursive_line_25_to_26_0EXIT >#104#return; 1085#L61-1 assume true; 1104#func_to_recursive_line_25_to_26_0EXIT >#98#return; 1095#L87-1 call #t~mem14 := read~int#2(~b.base, ~b.offset, 4);#t~pre15 := 1 + #t~mem14;call write~int#2(1 + #t~mem14, ~b.base, ~b.offset, 4);havoc #t~mem14;havoc #t~pre15; 1075#L92 call func_to_recursive_line_24_to_25_0(~e.base, ~e.offset, ~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 1080#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem13 := read~int#2(~b.base, ~b.offset, 4); 1074#L81 assume !(#t~mem13 < 6);havoc #t~mem13; 1078#L81-1 assume true; 1099#func_to_recursive_line_24_to_25_0EXIT >#100#return; 1100#L81-1 assume true; 1103#func_to_recursive_line_24_to_25_0EXIT >#112#return; 1069#L107-1 call #t~mem17 := read~int#1(~a.base, ~a.offset, 4);#t~pre18 := 1 + #t~mem17;call write~int#1(1 + #t~mem17, ~a.base, ~a.offset, 4);havoc #t~mem17;havoc #t~pre18; 1071#L112 call func_to_recursive_line_23_to_24_0(~a.base, ~a.offset, ~b.base, ~b.offset, ~c.base, ~c.offset, ~e.base, ~e.offset, ~d.base, ~d.offset);< 1092#$Ultimate##0 [2023-11-23 21:35:43,751 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:35:43,751 INFO L85 PathProgramCache]: Analyzing trace with hash 82544, now seen corresponding path program 6 times [2023-11-23 21:35:43,751 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 21:35:43,751 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [559659828] [2023-11-23 21:35:43,751 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:35:43,752 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 21:35:43,769 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 21:35:43,770 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-11-23 21:35:43,776 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 21:35:43,781 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-11-23 21:35:43,781 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:35:43,782 INFO L85 PathProgramCache]: Analyzing trace with hash 688040901, now seen corresponding path program 2 times [2023-11-23 21:35:43,782 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 21:35:43,782 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [270492362] [2023-11-23 21:35:43,782 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:35:43,782 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 21:35:43,815 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:44,623 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:44,652 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:45,257 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:45,279 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:45,751 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:45,770 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:46,087 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:46,096 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:46,258 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:46,267 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:46,440 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:46,443 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:46,506 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 18 [2023-11-23 21:35:46,516 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:46,526 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:46,531 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:46,537 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:46,541 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:46,545 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:46,550 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:46,553 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 18 [2023-11-23 21:35:46,555 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:46,558 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 50 [2023-11-23 21:35:46,562 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:46,565 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 61 [2023-11-23 21:35:46,568 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:46,573 INFO L134 CoverageAnalysis]: Checked inductivity of 89 backedges. 10 proven. 42 refuted. 0 times theorem prover too weak. 37 trivial. 0 not checked. [2023-11-23 21:35:46,573 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-11-23 21:35:46,574 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [270492362] [2023-11-23 21:35:46,574 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [270492362] provided 0 perfect and 1 imperfect interpolant sequences [2023-11-23 21:35:46,574 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1089579589] [2023-11-23 21:35:46,574 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2023-11-23 21:35:46,575 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-11-23 21:35:46,575 INFO L189 MonitoredProcess]: No working directory specified, using /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_31b1204a-741c-4da8-8208-e27463b23dc5/bin/uautomizer-verify-zZY32mL2XJ/z3 [2023-11-23 21:35:46,608 INFO L229 MonitoredProcess]: Starting monitored process 3 with /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_31b1204a-741c-4da8-8208-e27463b23dc5/bin/uautomizer-verify-zZY32mL2XJ/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-11-23 21:35:46,611 INFO L327 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_31b1204a-741c-4da8-8208-e27463b23dc5/bin/uautomizer-verify-zZY32mL2XJ/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2023-11-23 21:35:46,836 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2023-11-23 21:35:46,837 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-11-23 21:35:46,841 INFO L262 TraceCheckSpWp]: Trace formula consists of 654 conjuncts, 69 conjunts are in the unsatisfiable core [2023-11-23 21:35:46,853 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 21:35:46,908 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 1 [2023-11-23 21:35:47,175 INFO L134 CoverageAnalysis]: Checked inductivity of 89 backedges. 49 proven. 8 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2023-11-23 21:35:47,175 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2023-11-23 21:35:48,883 INFO L134 CoverageAnalysis]: Checked inductivity of 89 backedges. 8 proven. 56 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2023-11-23 21:35:48,883 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1089579589] provided 0 perfect and 2 imperfect interpolant sequences [2023-11-23 21:35:48,883 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2023-11-23 21:35:48,883 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 13, 14] total 32 [2023-11-23 21:35:48,884 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1684439271] [2023-11-23 21:35:48,884 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2023-11-23 21:35:48,885 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-11-23 21:35:48,885 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-11-23 21:35:48,886 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 32 interpolants. [2023-11-23 21:35:48,887 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=153, Invalid=839, Unknown=0, NotChecked=0, Total=992 [2023-11-23 21:35:48,887 INFO L87 Difference]: Start difference. First operand 46 states and 54 transitions. cyclomatic complexity: 13 Second operand has 32 states, 24 states have (on average 3.0) internal successors, (72), 27 states have internal predecessors, (72), 12 states have call successors, (34), 7 states have call predecessors, (34), 9 states have return successors, (25), 7 states have call predecessors, (25), 12 states have call successors, (25) [2023-11-23 21:35:49,655 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-11-23 21:35:49,655 INFO L93 Difference]: Finished difference Result 50 states and 58 transitions. [2023-11-23 21:35:49,655 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 50 states and 58 transitions. [2023-11-23 21:35:49,657 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 23 [2023-11-23 21:35:49,658 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 50 states to 50 states and 58 transitions. [2023-11-23 21:35:49,658 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 50 [2023-11-23 21:35:49,659 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 50 [2023-11-23 21:35:49,659 INFO L73 IsDeterministic]: Start isDeterministic. Operand 50 states and 58 transitions. [2023-11-23 21:35:49,659 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2023-11-23 21:35:49,659 INFO L218 hiAutomatonCegarLoop]: Abstraction has 50 states and 58 transitions. [2023-11-23 21:35:49,660 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states and 58 transitions. [2023-11-23 21:35:49,663 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 50. [2023-11-23 21:35:49,664 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 50 states, 28 states have (on average 1.1428571428571428) internal successors, (32), 32 states have internal predecessors, (32), 10 states have call successors, (10), 5 states have call predecessors, (10), 12 states have return successors, (16), 12 states have call predecessors, (16), 8 states have call successors, (16) [2023-11-23 21:35:49,665 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 58 transitions. [2023-11-23 21:35:49,665 INFO L240 hiAutomatonCegarLoop]: Abstraction has 50 states and 58 transitions. [2023-11-23 21:35:49,668 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2023-11-23 21:35:49,668 INFO L428 stractBuchiCegarLoop]: Abstraction has 50 states and 58 transitions. [2023-11-23 21:35:49,669 INFO L335 stractBuchiCegarLoop]: ======== Iteration 7 ============ [2023-11-23 21:35:49,669 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 50 states and 58 transitions. [2023-11-23 21:35:49,669 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 23 [2023-11-23 21:35:49,670 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-11-23 21:35:49,670 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-11-23 21:35:49,672 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2023-11-23 21:35:49,672 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [10, 10, 8, 8, 8, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-11-23 21:35:49,673 INFO L748 eck$LassoCheckResult]: Stem: 1946#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); 1928#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~mem19#1, main_#t~mem20#1, main_#t~short21#1, main_#t~mem22#1, main_#t~short23#1, main_#t~mem24#1, main_#t~short25#1, main_#t~mem26#1, main_#t~short27#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset, main_~#e~0#1.base, main_~#e~0#1.offset;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#1(6, main_~#a~0#1.base, main_~#a~0#1.offset, 4);call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#2(6, main_~#b~0#1.base, main_~#b~0#1.offset, 4);call main_~#c~0#1.base, main_~#c~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#4(6, main_~#c~0#1.base, main_~#c~0#1.offset, 4);call main_~#d~0#1.base, main_~#d~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#3(6, main_~#d~0#1.base, main_~#d~0#1.offset, 4);call main_~#e~0#1.base, main_~#e~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#5(6, main_~#e~0#1.base, main_~#e~0#1.offset, 4);call write~int#1(0, main_~#a~0#1.base, main_~#a~0#1.offset, 4); 1917#L128 call func_to_recursive_line_23_to_24_0(main_~#a~0#1.base, main_~#a~0#1.offset, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#e~0#1.base, main_~#e~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset);< 1939#$Ultimate##0 [2023-11-23 21:35:49,673 INFO L750 eck$LassoCheckResult]: Loop: 1939#$Ultimate##0 ~a.base, ~a.offset := #in~a.base, #in~a.offset;~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~e.base, ~e.offset := #in~e.base, #in~e.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem16 := read~int#1(~a.base, ~a.offset, 4); 1926#L101 assume #t~mem16 < 6;havoc #t~mem16;call write~int#2(0, ~b.base, ~b.offset, 4); 1922#L107 call func_to_recursive_line_24_to_25_0(~e.base, ~e.offset, ~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 1927#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem13 := read~int#2(~b.base, ~b.offset, 4); 1921#L81 assume #t~mem13 < 6;havoc #t~mem13;call write~int#4(0, ~c.base, ~c.offset, 4); 1924#L87 call func_to_recursive_line_25_to_26_0(~e.base, ~e.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 1941#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#4(~c.base, ~c.offset, 4); 1945#L61 assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~d.base, ~d.offset, 4); 1934#L67 call func_to_recursive_line_26_to_27_0(~e.base, ~e.offset, ~d.base, ~d.offset);< 1933#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem7 := read~int#3(~d.base, ~d.offset, 4); 1936#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#5(0, ~e.base, ~e.offset, 4); 1914#L47 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 1919#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 1920#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 1913#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 1919#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 1920#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 1913#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 1919#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 1920#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 1913#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 1919#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 1920#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 1913#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 1919#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 1920#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 1912#L25-1 assume true; 1915#func_to_recursive_line_27_to_27_0EXIT >#106#return; 1932#L25-1 assume true; 1961#func_to_recursive_line_27_to_27_0EXIT >#106#return; 1960#L25-1 assume true; 1959#func_to_recursive_line_27_to_27_0EXIT >#106#return; 1957#L25-1 assume true; 1956#func_to_recursive_line_27_to_27_0EXIT >#106#return; 1953#L25-1 assume true; 1952#func_to_recursive_line_27_to_27_0EXIT >#108#return; 1949#L47-1 call #t~mem8 := read~int#3(~d.base, ~d.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~d.base, ~d.offset, 4);havoc #t~mem8;havoc #t~pre9; 1935#L52 call func_to_recursive_line_26_to_27_0(~e.base, ~e.offset, ~d.base, ~d.offset);< 1933#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem7 := read~int#3(~d.base, ~d.offset, 4); 1936#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#5(0, ~e.base, ~e.offset, 4); 1914#L47 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 1919#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 1920#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 1913#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 1919#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 1920#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 1913#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 1919#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 1920#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 1913#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 1919#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 1920#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 1913#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 1919#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 1920#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 1912#L25-1 assume true; 1915#func_to_recursive_line_27_to_27_0EXIT >#106#return; 1932#L25-1 assume true; 1961#func_to_recursive_line_27_to_27_0EXIT >#106#return; 1960#L25-1 assume true; 1959#func_to_recursive_line_27_to_27_0EXIT >#106#return; 1957#L25-1 assume true; 1956#func_to_recursive_line_27_to_27_0EXIT >#106#return; 1953#L25-1 assume true; 1952#func_to_recursive_line_27_to_27_0EXIT >#108#return; 1949#L47-1 call #t~mem8 := read~int#3(~d.base, ~d.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~d.base, ~d.offset, 4);havoc #t~mem8;havoc #t~pre9; 1935#L52 call func_to_recursive_line_26_to_27_0(~e.base, ~e.offset, ~d.base, ~d.offset);< 1933#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem7 := read~int#3(~d.base, ~d.offset, 4); 1936#L41 assume !(#t~mem7 < 6);havoc #t~mem7; 1940#L41-1 assume true; 1937#func_to_recursive_line_26_to_27_0EXIT >#110#return; 1938#L41-1 assume true; 1958#func_to_recursive_line_26_to_27_0EXIT >#110#return; 1955#L41-1 assume true; 1954#func_to_recursive_line_26_to_27_0EXIT >#102#return; 1943#L67-1 call #t~mem11 := read~int#4(~c.base, ~c.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#4(1 + #t~mem11, ~c.base, ~c.offset, 4);havoc #t~mem11;havoc #t~pre12; 1930#L72 call func_to_recursive_line_25_to_26_0(~e.base, ~e.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 1941#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#4(~c.base, ~c.offset, 4); 1945#L61 assume !(#t~mem10 < 6);havoc #t~mem10; 1944#L61-1 assume true; 1929#func_to_recursive_line_25_to_26_0EXIT >#104#return; 1931#L61-1 assume true; 1951#func_to_recursive_line_25_to_26_0EXIT >#98#return; 1942#L87-1 call #t~mem14 := read~int#2(~b.base, ~b.offset, 4);#t~pre15 := 1 + #t~mem14;call write~int#2(1 + #t~mem14, ~b.base, ~b.offset, 4);havoc #t~mem14;havoc #t~pre15; 1923#L92 call func_to_recursive_line_24_to_25_0(~e.base, ~e.offset, ~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 1927#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem13 := read~int#2(~b.base, ~b.offset, 4); 1921#L81 assume !(#t~mem13 < 6);havoc #t~mem13; 1925#L81-1 assume true; 1947#func_to_recursive_line_24_to_25_0EXIT >#100#return; 1948#L81-1 assume true; 1950#func_to_recursive_line_24_to_25_0EXIT >#112#return; 1916#L107-1 call #t~mem17 := read~int#1(~a.base, ~a.offset, 4);#t~pre18 := 1 + #t~mem17;call write~int#1(1 + #t~mem17, ~a.base, ~a.offset, 4);havoc #t~mem17;havoc #t~pre18; 1918#L112 call func_to_recursive_line_23_to_24_0(~a.base, ~a.offset, ~b.base, ~b.offset, ~c.base, ~c.offset, ~e.base, ~e.offset, ~d.base, ~d.offset);< 1939#$Ultimate##0 [2023-11-23 21:35:49,674 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:35:49,674 INFO L85 PathProgramCache]: Analyzing trace with hash 82544, now seen corresponding path program 7 times [2023-11-23 21:35:49,674 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 21:35:49,674 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1222658842] [2023-11-23 21:35:49,675 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:35:49,675 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 21:35:49,696 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 21:35:49,698 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-11-23 21:35:49,706 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 21:35:49,711 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-11-23 21:35:49,711 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:35:49,712 INFO L85 PathProgramCache]: Analyzing trace with hash 2100163973, now seen corresponding path program 3 times [2023-11-23 21:35:49,712 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 21:35:49,712 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [368033381] [2023-11-23 21:35:49,712 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:35:49,713 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 21:35:49,752 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:50,691 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:50,723 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:51,760 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:51,805 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:52,656 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:52,681 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:53,427 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:53,433 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:53,441 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:53,445 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:53,453 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:53,457 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:53,461 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:53,464 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:53,467 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:53,471 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:53,475 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 28 [2023-11-23 21:35:53,488 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:53,898 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:53,913 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:54,260 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:54,268 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:54,512 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:54,518 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:54,651 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:54,655 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:54,734 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:35:54,737 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:54,785 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 28 [2023-11-23 21:35:54,786 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:54,789 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 70 [2023-11-23 21:35:54,791 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:54,794 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 81 [2023-11-23 21:35:54,796 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:35:54,799 INFO L134 CoverageAnalysis]: Checked inductivity of 231 backedges. 108 proven. 24 refuted. 0 times theorem prover too weak. 99 trivial. 0 not checked. [2023-11-23 21:35:54,799 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-11-23 21:35:54,800 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [368033381] [2023-11-23 21:35:54,800 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [368033381] provided 0 perfect and 1 imperfect interpolant sequences [2023-11-23 21:35:54,800 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1711720990] [2023-11-23 21:35:54,800 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2023-11-23 21:35:54,801 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-11-23 21:35:54,801 INFO L189 MonitoredProcess]: No working directory specified, using /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_31b1204a-741c-4da8-8208-e27463b23dc5/bin/uautomizer-verify-zZY32mL2XJ/z3 [2023-11-23 21:35:54,807 INFO L229 MonitoredProcess]: Starting monitored process 4 with /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_31b1204a-741c-4da8-8208-e27463b23dc5/bin/uautomizer-verify-zZY32mL2XJ/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-11-23 21:35:54,831 INFO L327 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_31b1204a-741c-4da8-8208-e27463b23dc5/bin/uautomizer-verify-zZY32mL2XJ/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2023-11-23 21:35:55,301 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 8 check-sat command(s) [2023-11-23 21:35:55,301 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-11-23 21:35:55,307 INFO L262 TraceCheckSpWp]: Trace formula consists of 765 conjuncts, 81 conjunts are in the unsatisfiable core [2023-11-23 21:35:55,319 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 21:35:55,385 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 1 [2023-11-23 21:35:55,792 INFO L134 CoverageAnalysis]: Checked inductivity of 231 backedges. 127 proven. 24 refuted. 0 times theorem prover too weak. 80 trivial. 0 not checked. [2023-11-23 21:35:55,792 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2023-11-23 21:35:59,029 INFO L134 CoverageAnalysis]: Checked inductivity of 231 backedges. 127 proven. 46 refuted. 0 times theorem prover too weak. 58 trivial. 0 not checked. [2023-11-23 21:35:59,030 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1711720990] provided 0 perfect and 2 imperfect interpolant sequences [2023-11-23 21:35:59,030 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2023-11-23 21:35:59,030 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 15, 22] total 43 [2023-11-23 21:35:59,033 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [678412363] [2023-11-23 21:35:59,033 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2023-11-23 21:35:59,036 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-11-23 21:35:59,037 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-11-23 21:35:59,037 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 43 interpolants. [2023-11-23 21:35:59,038 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=273, Invalid=1533, Unknown=0, NotChecked=0, Total=1806 [2023-11-23 21:35:59,039 INFO L87 Difference]: Start difference. First operand 50 states and 58 transitions. cyclomatic complexity: 13 Second operand has 43 states, 32 states have (on average 2.4375) internal successors, (78), 36 states have internal predecessors, (78), 16 states have call successors, (36), 9 states have call predecessors, (36), 13 states have return successors, (32), 12 states have call predecessors, (32), 16 states have call successors, (32) [2023-11-23 21:35:59,928 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-11-23 21:35:59,928 INFO L93 Difference]: Finished difference Result 54 states and 62 transitions. [2023-11-23 21:35:59,928 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 54 states and 62 transitions. [2023-11-23 21:35:59,929 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 23 [2023-11-23 21:35:59,931 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 54 states to 54 states and 62 transitions. [2023-11-23 21:35:59,931 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 54 [2023-11-23 21:35:59,931 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 54 [2023-11-23 21:35:59,932 INFO L73 IsDeterministic]: Start isDeterministic. Operand 54 states and 62 transitions. [2023-11-23 21:35:59,935 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2023-11-23 21:35:59,935 INFO L218 hiAutomatonCegarLoop]: Abstraction has 54 states and 62 transitions. [2023-11-23 21:35:59,935 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 54 states and 62 transitions. [2023-11-23 21:35:59,939 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 54 to 54. [2023-11-23 21:35:59,939 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 54 states, 30 states have (on average 1.1333333333333333) internal successors, (34), 34 states have internal predecessors, (34), 10 states have call successors, (10), 5 states have call predecessors, (10), 14 states have return successors, (18), 14 states have call predecessors, (18), 8 states have call successors, (18) [2023-11-23 21:35:59,940 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 54 states to 54 states and 62 transitions. [2023-11-23 21:35:59,940 INFO L240 hiAutomatonCegarLoop]: Abstraction has 54 states and 62 transitions. [2023-11-23 21:35:59,941 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2023-11-23 21:35:59,941 INFO L428 stractBuchiCegarLoop]: Abstraction has 54 states and 62 transitions. [2023-11-23 21:35:59,942 INFO L335 stractBuchiCegarLoop]: ======== Iteration 8 ============ [2023-11-23 21:35:59,942 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 54 states and 62 transitions. [2023-11-23 21:35:59,943 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 23 [2023-11-23 21:35:59,943 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-11-23 21:35:59,943 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-11-23 21:35:59,945 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2023-11-23 21:35:59,945 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [14, 14, 12, 12, 12, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-11-23 21:35:59,945 INFO L748 eck$LassoCheckResult]: Stem: 3092#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); 3074#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~mem19#1, main_#t~mem20#1, main_#t~short21#1, main_#t~mem22#1, main_#t~short23#1, main_#t~mem24#1, main_#t~short25#1, main_#t~mem26#1, main_#t~short27#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset, main_~#e~0#1.base, main_~#e~0#1.offset;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#1(6, main_~#a~0#1.base, main_~#a~0#1.offset, 4);call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#2(6, main_~#b~0#1.base, main_~#b~0#1.offset, 4);call main_~#c~0#1.base, main_~#c~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#4(6, main_~#c~0#1.base, main_~#c~0#1.offset, 4);call main_~#d~0#1.base, main_~#d~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#3(6, main_~#d~0#1.base, main_~#d~0#1.offset, 4);call main_~#e~0#1.base, main_~#e~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#5(6, main_~#e~0#1.base, main_~#e~0#1.offset, 4);call write~int#1(0, main_~#a~0#1.base, main_~#a~0#1.offset, 4); 3063#L128 call func_to_recursive_line_23_to_24_0(main_~#a~0#1.base, main_~#a~0#1.offset, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#e~0#1.base, main_~#e~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset);< 3085#$Ultimate##0 [2023-11-23 21:35:59,946 INFO L750 eck$LassoCheckResult]: Loop: 3085#$Ultimate##0 ~a.base, ~a.offset := #in~a.base, #in~a.offset;~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~e.base, ~e.offset := #in~e.base, #in~e.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem16 := read~int#1(~a.base, ~a.offset, 4); 3072#L101 assume #t~mem16 < 6;havoc #t~mem16;call write~int#2(0, ~b.base, ~b.offset, 4); 3069#L107 call func_to_recursive_line_24_to_25_0(~e.base, ~e.offset, ~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 3073#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem13 := read~int#2(~b.base, ~b.offset, 4); 3067#L81 assume #t~mem13 < 6;havoc #t~mem13;call write~int#4(0, ~c.base, ~c.offset, 4); 3070#L87 call func_to_recursive_line_25_to_26_0(~e.base, ~e.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 3087#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#4(~c.base, ~c.offset, 4); 3091#L61 assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~d.base, ~d.offset, 4); 3081#L67 call func_to_recursive_line_26_to_27_0(~e.base, ~e.offset, ~d.base, ~d.offset);< 3079#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem7 := read~int#3(~d.base, ~d.offset, 4); 3082#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#5(0, ~e.base, ~e.offset, 4); 3059#L47 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 3065#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 3066#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 3060#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 3065#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 3066#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 3060#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 3065#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 3066#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 3060#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 3065#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 3066#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 3060#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 3065#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 3066#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 3060#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 3065#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 3066#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 3060#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 3065#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 3066#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 3058#L25-1 assume true; 3061#func_to_recursive_line_27_to_27_0EXIT >#106#return; 3078#L25-1 assume true; 3111#func_to_recursive_line_27_to_27_0EXIT >#106#return; 3110#L25-1 assume true; 3109#func_to_recursive_line_27_to_27_0EXIT >#106#return; 3108#L25-1 assume true; 3107#func_to_recursive_line_27_to_27_0EXIT >#106#return; 3106#L25-1 assume true; 3105#func_to_recursive_line_27_to_27_0EXIT >#106#return; 3103#L25-1 assume true; 3102#func_to_recursive_line_27_to_27_0EXIT >#106#return; 3099#L25-1 assume true; 3098#func_to_recursive_line_27_to_27_0EXIT >#108#return; 3095#L47-1 call #t~mem8 := read~int#3(~d.base, ~d.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~d.base, ~d.offset, 4);havoc #t~mem8;havoc #t~pre9; 3080#L52 call func_to_recursive_line_26_to_27_0(~e.base, ~e.offset, ~d.base, ~d.offset);< 3079#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem7 := read~int#3(~d.base, ~d.offset, 4); 3082#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#5(0, ~e.base, ~e.offset, 4); 3059#L47 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 3065#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 3066#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 3060#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 3065#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 3066#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 3060#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 3065#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 3066#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 3060#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 3065#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 3066#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 3060#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 3065#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 3066#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 3060#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 3065#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 3066#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 3060#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 3065#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 3066#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 3058#L25-1 assume true; 3061#func_to_recursive_line_27_to_27_0EXIT >#106#return; 3078#L25-1 assume true; 3111#func_to_recursive_line_27_to_27_0EXIT >#106#return; 3110#L25-1 assume true; 3109#func_to_recursive_line_27_to_27_0EXIT >#106#return; 3108#L25-1 assume true; 3107#func_to_recursive_line_27_to_27_0EXIT >#106#return; 3106#L25-1 assume true; 3105#func_to_recursive_line_27_to_27_0EXIT >#106#return; 3103#L25-1 assume true; 3102#func_to_recursive_line_27_to_27_0EXIT >#106#return; 3099#L25-1 assume true; 3098#func_to_recursive_line_27_to_27_0EXIT >#108#return; 3095#L47-1 call #t~mem8 := read~int#3(~d.base, ~d.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~d.base, ~d.offset, 4);havoc #t~mem8;havoc #t~pre9; 3080#L52 call func_to_recursive_line_26_to_27_0(~e.base, ~e.offset, ~d.base, ~d.offset);< 3079#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem7 := read~int#3(~d.base, ~d.offset, 4); 3082#L41 assume !(#t~mem7 < 6);havoc #t~mem7; 3086#L41-1 assume true; 3083#func_to_recursive_line_26_to_27_0EXIT >#110#return; 3084#L41-1 assume true; 3104#func_to_recursive_line_26_to_27_0EXIT >#110#return; 3101#L41-1 assume true; 3100#func_to_recursive_line_26_to_27_0EXIT >#102#return; 3089#L67-1 call #t~mem11 := read~int#4(~c.base, ~c.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#4(1 + #t~mem11, ~c.base, ~c.offset, 4);havoc #t~mem11;havoc #t~pre12; 3076#L72 call func_to_recursive_line_25_to_26_0(~e.base, ~e.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 3087#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#4(~c.base, ~c.offset, 4); 3091#L61 assume !(#t~mem10 < 6);havoc #t~mem10; 3090#L61-1 assume true; 3075#func_to_recursive_line_25_to_26_0EXIT >#104#return; 3077#L61-1 assume true; 3097#func_to_recursive_line_25_to_26_0EXIT >#98#return; 3088#L87-1 call #t~mem14 := read~int#2(~b.base, ~b.offset, 4);#t~pre15 := 1 + #t~mem14;call write~int#2(1 + #t~mem14, ~b.base, ~b.offset, 4);havoc #t~mem14;havoc #t~pre15; 3068#L92 call func_to_recursive_line_24_to_25_0(~e.base, ~e.offset, ~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 3073#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem13 := read~int#2(~b.base, ~b.offset, 4); 3067#L81 assume !(#t~mem13 < 6);havoc #t~mem13; 3071#L81-1 assume true; 3093#func_to_recursive_line_24_to_25_0EXIT >#100#return; 3094#L81-1 assume true; 3096#func_to_recursive_line_24_to_25_0EXIT >#112#return; 3062#L107-1 call #t~mem17 := read~int#1(~a.base, ~a.offset, 4);#t~pre18 := 1 + #t~mem17;call write~int#1(1 + #t~mem17, ~a.base, ~a.offset, 4);havoc #t~mem17;havoc #t~pre18; 3064#L112 call func_to_recursive_line_23_to_24_0(~a.base, ~a.offset, ~b.base, ~b.offset, ~c.base, ~c.offset, ~e.base, ~e.offset, ~d.base, ~d.offset);< 3085#$Ultimate##0 [2023-11-23 21:35:59,946 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:35:59,946 INFO L85 PathProgramCache]: Analyzing trace with hash 82544, now seen corresponding path program 8 times [2023-11-23 21:35:59,947 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 21:35:59,947 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1587969826] [2023-11-23 21:35:59,947 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:35:59,947 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 21:35:59,962 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 21:35:59,963 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-11-23 21:35:59,968 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 21:35:59,973 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-11-23 21:35:59,974 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:35:59,974 INFO L85 PathProgramCache]: Analyzing trace with hash 608095045, now seen corresponding path program 4 times [2023-11-23 21:35:59,974 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 21:35:59,974 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1891574459] [2023-11-23 21:35:59,974 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:35:59,975 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 21:36:00,025 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:36:01,343 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:36:01,384 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:36:02,406 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:36:02,439 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:36:03,465 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:36:03,495 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:36:04,446 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:36:04,458 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:36:04,600 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:36:04,610 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:36:04,669 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:36:04,677 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:36:04,725 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:36:04,733 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:36:04,768 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:36:04,775 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:36:04,798 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:36:04,802 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:36:04,815 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:36:04,818 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:36:04,826 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 38 [2023-11-23 21:36:04,844 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:36:05,284 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:36:05,296 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:36:05,393 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:36:05,402 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:36:05,455 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:36:05,463 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:36:05,502 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:36:05,509 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:36:05,568 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:36:05,573 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:36:05,616 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:36:05,619 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:36:05,648 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:36:05,650 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:36:05,655 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 38 [2023-11-23 21:36:05,657 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:36:05,704 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 90 [2023-11-23 21:36:05,706 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:36:05,708 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 101 [2023-11-23 21:36:05,710 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:36:05,714 INFO L134 CoverageAnalysis]: Checked inductivity of 453 backedges. 8 proven. 8 refuted. 0 times theorem prover too weak. 437 trivial. 0 not checked. [2023-11-23 21:36:05,714 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-11-23 21:36:05,714 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1891574459] [2023-11-23 21:36:05,714 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1891574459] provided 0 perfect and 1 imperfect interpolant sequences [2023-11-23 21:36:05,715 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1926653939] [2023-11-23 21:36:05,715 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2023-11-23 21:36:05,715 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-11-23 21:36:05,715 INFO L189 MonitoredProcess]: No working directory specified, using /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_31b1204a-741c-4da8-8208-e27463b23dc5/bin/uautomizer-verify-zZY32mL2XJ/z3 [2023-11-23 21:36:05,719 INFO L229 MonitoredProcess]: Starting monitored process 5 with /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_31b1204a-741c-4da8-8208-e27463b23dc5/bin/uautomizer-verify-zZY32mL2XJ/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-11-23 21:36:05,749 INFO L327 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_31b1204a-741c-4da8-8208-e27463b23dc5/bin/uautomizer-verify-zZY32mL2XJ/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2023-11-23 21:36:06,041 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2023-11-23 21:36:06,041 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-11-23 21:36:06,047 INFO L262 TraceCheckSpWp]: Trace formula consists of 950 conjuncts, 65 conjunts are in the unsatisfiable core [2023-11-23 21:36:06,058 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 21:36:06,066 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2023-11-23 21:36:06,464 INFO L134 CoverageAnalysis]: Checked inductivity of 453 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 450 trivial. 0 not checked. [2023-11-23 21:36:06,464 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2023-11-23 21:36:07,422 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1926653939] provided 0 perfect and 1 imperfect interpolant sequences [2023-11-23 21:36:07,423 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-11-23 21:36:07,423 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 9] total 25 [2023-11-23 21:36:07,423 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1351736586] [2023-11-23 21:36:07,423 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-11-23 21:36:07,424 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-11-23 21:36:07,424 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-11-23 21:36:07,425 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2023-11-23 21:36:07,426 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=130, Invalid=926, Unknown=0, NotChecked=0, Total=1056 [2023-11-23 21:36:07,426 INFO L87 Difference]: Start difference. First operand 54 states and 62 transitions. cyclomatic complexity: 13 Second operand has 25 states, 17 states have (on average 3.0588235294117645) internal successors, (52), 22 states have internal predecessors, (52), 13 states have call successors, (19), 3 states have call predecessors, (19), 9 states have return successors, (18), 9 states have call predecessors, (18), 13 states have call successors, (18) [2023-11-23 21:36:08,248 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-11-23 21:36:08,248 INFO L93 Difference]: Finished difference Result 58 states and 66 transitions. [2023-11-23 21:36:08,248 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 58 states and 66 transitions. [2023-11-23 21:36:08,249 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 23 [2023-11-23 21:36:08,251 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 58 states to 58 states and 66 transitions. [2023-11-23 21:36:08,251 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 58 [2023-11-23 21:36:08,252 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 58 [2023-11-23 21:36:08,252 INFO L73 IsDeterministic]: Start isDeterministic. Operand 58 states and 66 transitions. [2023-11-23 21:36:08,252 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2023-11-23 21:36:08,253 INFO L218 hiAutomatonCegarLoop]: Abstraction has 58 states and 66 transitions. [2023-11-23 21:36:08,253 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 58 states and 66 transitions. [2023-11-23 21:36:08,257 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 58 to 58. [2023-11-23 21:36:08,257 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 58 states, 32 states have (on average 1.125) internal successors, (36), 36 states have internal predecessors, (36), 10 states have call successors, (10), 5 states have call predecessors, (10), 16 states have return successors, (20), 16 states have call predecessors, (20), 8 states have call successors, (20) [2023-11-23 21:36:08,258 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 58 states to 58 states and 66 transitions. [2023-11-23 21:36:08,258 INFO L240 hiAutomatonCegarLoop]: Abstraction has 58 states and 66 transitions. [2023-11-23 21:36:08,262 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2023-11-23 21:36:08,263 INFO L428 stractBuchiCegarLoop]: Abstraction has 58 states and 66 transitions. [2023-11-23 21:36:08,263 INFO L335 stractBuchiCegarLoop]: ======== Iteration 9 ============ [2023-11-23 21:36:08,263 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 58 states and 66 transitions. [2023-11-23 21:36:08,264 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 23 [2023-11-23 21:36:08,264 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-11-23 21:36:08,264 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-11-23 21:36:08,269 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2023-11-23 21:36:08,269 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [42, 42, 36, 36, 36, 8, 8, 6, 6, 6, 6, 6, 6, 6, 4, 4, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1] [2023-11-23 21:36:08,269 INFO L748 eck$LassoCheckResult]: Stem: 4265#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); 4244#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~mem19#1, main_#t~mem20#1, main_#t~short21#1, main_#t~mem22#1, main_#t~short23#1, main_#t~mem24#1, main_#t~short25#1, main_#t~mem26#1, main_#t~short27#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset, main_~#e~0#1.base, main_~#e~0#1.offset;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#1(6, main_~#a~0#1.base, main_~#a~0#1.offset, 4);call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#2(6, main_~#b~0#1.base, main_~#b~0#1.offset, 4);call main_~#c~0#1.base, main_~#c~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#4(6, main_~#c~0#1.base, main_~#c~0#1.offset, 4);call main_~#d~0#1.base, main_~#d~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#3(6, main_~#d~0#1.base, main_~#d~0#1.offset, 4);call main_~#e~0#1.base, main_~#e~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#5(6, main_~#e~0#1.base, main_~#e~0#1.offset, 4);call write~int#1(0, main_~#a~0#1.base, main_~#a~0#1.offset, 4); 4229#L128 call func_to_recursive_line_23_to_24_0(main_~#a~0#1.base, main_~#a~0#1.offset, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#e~0#1.base, main_~#e~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset);< 4255#$Ultimate##0 [2023-11-23 21:36:08,270 INFO L750 eck$LassoCheckResult]: Loop: 4255#$Ultimate##0 ~a.base, ~a.offset := #in~a.base, #in~a.offset;~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~e.base, ~e.offset := #in~e.base, #in~e.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem16 := read~int#1(~a.base, ~a.offset, 4); 4242#L101 assume #t~mem16 < 6;havoc #t~mem16;call write~int#2(0, ~b.base, ~b.offset, 4); 4238#L107 call func_to_recursive_line_24_to_25_0(~e.base, ~e.offset, ~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 4243#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem13 := read~int#2(~b.base, ~b.offset, 4); 4237#L81 assume #t~mem13 < 6;havoc #t~mem13;call write~int#4(0, ~c.base, ~c.offset, 4); 4240#L87 call func_to_recursive_line_25_to_26_0(~e.base, ~e.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 4257#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#4(~c.base, ~c.offset, 4); 4261#L61 assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~d.base, ~d.offset, 4); 4250#L67 call func_to_recursive_line_26_to_27_0(~e.base, ~e.offset, ~d.base, ~d.offset);< 4249#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem7 := read~int#3(~d.base, ~d.offset, 4); 4252#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#5(0, ~e.base, ~e.offset, 4); 4233#L47 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 4231#L25-1 assume true; 4234#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4248#L25-1 assume true; 4280#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4279#L25-1 assume true; 4278#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4277#L25-1 assume true; 4276#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4275#L25-1 assume true; 4274#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4273#L25-1 assume true; 4271#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4270#L25-1 assume true; 4269#func_to_recursive_line_27_to_27_0EXIT >#108#return; 4266#L47-1 call #t~mem8 := read~int#3(~d.base, ~d.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~d.base, ~d.offset, 4);havoc #t~mem8;havoc #t~pre9; 4251#L52 call func_to_recursive_line_26_to_27_0(~e.base, ~e.offset, ~d.base, ~d.offset);< 4249#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem7 := read~int#3(~d.base, ~d.offset, 4); 4252#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#5(0, ~e.base, ~e.offset, 4); 4233#L47 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 4231#L25-1 assume true; 4234#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4248#L25-1 assume true; 4280#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4279#L25-1 assume true; 4278#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4277#L25-1 assume true; 4276#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4275#L25-1 assume true; 4274#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4273#L25-1 assume true; 4271#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4270#L25-1 assume true; 4269#func_to_recursive_line_27_to_27_0EXIT >#108#return; 4266#L47-1 call #t~mem8 := read~int#3(~d.base, ~d.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~d.base, ~d.offset, 4);havoc #t~mem8;havoc #t~pre9; 4251#L52 call func_to_recursive_line_26_to_27_0(~e.base, ~e.offset, ~d.base, ~d.offset);< 4249#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem7 := read~int#3(~d.base, ~d.offset, 4); 4252#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#5(0, ~e.base, ~e.offset, 4); 4233#L47 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 4231#L25-1 assume true; 4234#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4248#L25-1 assume true; 4280#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4279#L25-1 assume true; 4278#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4277#L25-1 assume true; 4276#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4275#L25-1 assume true; 4274#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4273#L25-1 assume true; 4271#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4270#L25-1 assume true; 4269#func_to_recursive_line_27_to_27_0EXIT >#108#return; 4266#L47-1 call #t~mem8 := read~int#3(~d.base, ~d.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~d.base, ~d.offset, 4);havoc #t~mem8;havoc #t~pre9; 4251#L52 call func_to_recursive_line_26_to_27_0(~e.base, ~e.offset, ~d.base, ~d.offset);< 4249#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem7 := read~int#3(~d.base, ~d.offset, 4); 4252#L41 assume !(#t~mem7 < 6);havoc #t~mem7; 4256#L41-1 assume true; 4253#func_to_recursive_line_26_to_27_0EXIT >#110#return; 4254#L41-1 assume true; 4285#func_to_recursive_line_26_to_27_0EXIT >#110#return; 4284#L41-1 assume true; 4283#func_to_recursive_line_26_to_27_0EXIT >#110#return; 4282#L41-1 assume true; 4281#func_to_recursive_line_26_to_27_0EXIT >#102#return; 4259#L67-1 call #t~mem11 := read~int#4(~c.base, ~c.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#4(1 + #t~mem11, ~c.base, ~c.offset, 4);havoc #t~mem11;havoc #t~pre12; 4246#L72 call func_to_recursive_line_25_to_26_0(~e.base, ~e.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 4257#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#4(~c.base, ~c.offset, 4); 4261#L61 assume !(#t~mem10 < 6);havoc #t~mem10; 4262#L61-1 assume true; 4245#func_to_recursive_line_25_to_26_0EXIT >#104#return; 4247#L61-1 assume true; 4260#func_to_recursive_line_25_to_26_0EXIT >#98#return; 4258#L87-1 call #t~mem14 := read~int#2(~b.base, ~b.offset, 4);#t~pre15 := 1 + #t~mem14;call write~int#2(1 + #t~mem14, ~b.base, ~b.offset, 4);havoc #t~mem14;havoc #t~pre15; 4239#L92 call func_to_recursive_line_24_to_25_0(~e.base, ~e.offset, ~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 4243#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem13 := read~int#2(~b.base, ~b.offset, 4); 4237#L81 assume #t~mem13 < 6;havoc #t~mem13;call write~int#4(0, ~c.base, ~c.offset, 4); 4240#L87 call func_to_recursive_line_25_to_26_0(~e.base, ~e.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 4257#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#4(~c.base, ~c.offset, 4); 4261#L61 assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~d.base, ~d.offset, 4); 4250#L67 call func_to_recursive_line_26_to_27_0(~e.base, ~e.offset, ~d.base, ~d.offset);< 4249#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem7 := read~int#3(~d.base, ~d.offset, 4); 4252#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#5(0, ~e.base, ~e.offset, 4); 4233#L47 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 4231#L25-1 assume true; 4234#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4248#L25-1 assume true; 4280#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4279#L25-1 assume true; 4278#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4277#L25-1 assume true; 4276#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4275#L25-1 assume true; 4274#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4273#L25-1 assume true; 4271#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4270#L25-1 assume true; 4269#func_to_recursive_line_27_to_27_0EXIT >#108#return; 4266#L47-1 call #t~mem8 := read~int#3(~d.base, ~d.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~d.base, ~d.offset, 4);havoc #t~mem8;havoc #t~pre9; 4251#L52 call func_to_recursive_line_26_to_27_0(~e.base, ~e.offset, ~d.base, ~d.offset);< 4249#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem7 := read~int#3(~d.base, ~d.offset, 4); 4252#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#5(0, ~e.base, ~e.offset, 4); 4233#L47 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 4231#L25-1 assume true; 4234#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4248#L25-1 assume true; 4280#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4279#L25-1 assume true; 4278#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4277#L25-1 assume true; 4276#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4275#L25-1 assume true; 4274#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4273#L25-1 assume true; 4271#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4270#L25-1 assume true; 4269#func_to_recursive_line_27_to_27_0EXIT >#108#return; 4266#L47-1 call #t~mem8 := read~int#3(~d.base, ~d.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~d.base, ~d.offset, 4);havoc #t~mem8;havoc #t~pre9; 4251#L52 call func_to_recursive_line_26_to_27_0(~e.base, ~e.offset, ~d.base, ~d.offset);< 4249#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem7 := read~int#3(~d.base, ~d.offset, 4); 4252#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#5(0, ~e.base, ~e.offset, 4); 4233#L47 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#5(~e.base, ~e.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#5(1 + #t~mem5, ~e.base, ~e.offset, 4);havoc #t~mem5;havoc #t~pre6; 4232#L32 call func_to_recursive_line_27_to_27_0(~e.base, ~e.offset);< 4235#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;call #t~mem4 := read~int#5(~e.base, ~e.offset, 4); 4236#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 4231#L25-1 assume true; 4234#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4248#L25-1 assume true; 4280#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4279#L25-1 assume true; 4278#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4277#L25-1 assume true; 4276#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4275#L25-1 assume true; 4274#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4273#L25-1 assume true; 4271#func_to_recursive_line_27_to_27_0EXIT >#106#return; 4270#L25-1 assume true; 4269#func_to_recursive_line_27_to_27_0EXIT >#108#return; 4266#L47-1 call #t~mem8 := read~int#3(~d.base, ~d.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~d.base, ~d.offset, 4);havoc #t~mem8;havoc #t~pre9; 4251#L52 call func_to_recursive_line_26_to_27_0(~e.base, ~e.offset, ~d.base, ~d.offset);< 4249#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem7 := read~int#3(~d.base, ~d.offset, 4); 4252#L41 assume !(#t~mem7 < 6);havoc #t~mem7; 4256#L41-1 assume true; 4253#func_to_recursive_line_26_to_27_0EXIT >#110#return; 4254#L41-1 assume true; 4285#func_to_recursive_line_26_to_27_0EXIT >#110#return; 4284#L41-1 assume true; 4283#func_to_recursive_line_26_to_27_0EXIT >#110#return; 4282#L41-1 assume true; 4281#func_to_recursive_line_26_to_27_0EXIT >#102#return; 4259#L67-1 call #t~mem11 := read~int#4(~c.base, ~c.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#4(1 + #t~mem11, ~c.base, ~c.offset, 4);havoc #t~mem11;havoc #t~pre12; 4246#L72 call func_to_recursive_line_25_to_26_0(~e.base, ~e.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 4257#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#4(~c.base, ~c.offset, 4); 4261#L61 assume !(#t~mem10 < 6);havoc #t~mem10; 4262#L61-1 assume true; 4245#func_to_recursive_line_25_to_26_0EXIT >#104#return; 4247#L61-1 assume true; 4260#func_to_recursive_line_25_to_26_0EXIT >#98#return; 4258#L87-1 call #t~mem14 := read~int#2(~b.base, ~b.offset, 4);#t~pre15 := 1 + #t~mem14;call write~int#2(1 + #t~mem14, ~b.base, ~b.offset, 4);havoc #t~mem14;havoc #t~pre15; 4239#L92 call func_to_recursive_line_24_to_25_0(~e.base, ~e.offset, ~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);< 4243#$Ultimate##0 ~e.base, ~e.offset := #in~e.base, #in~e.offset;~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem13 := read~int#2(~b.base, ~b.offset, 4); 4237#L81 assume !(#t~mem13 < 6);havoc #t~mem13; 4241#L81-1 assume true; 4263#func_to_recursive_line_24_to_25_0EXIT >#100#return; 4264#L81-1 assume true; 4272#func_to_recursive_line_24_to_25_0EXIT >#100#return; 4268#L81-1 assume true; 4267#func_to_recursive_line_24_to_25_0EXIT >#112#return; 4228#L107-1 call #t~mem17 := read~int#1(~a.base, ~a.offset, 4);#t~pre18 := 1 + #t~mem17;call write~int#1(1 + #t~mem17, ~a.base, ~a.offset, 4);havoc #t~mem17;havoc #t~pre18; 4230#L112 call func_to_recursive_line_23_to_24_0(~a.base, ~a.offset, ~b.base, ~b.offset, ~c.base, ~c.offset, ~e.base, ~e.offset, ~d.base, ~d.offset);< 4255#$Ultimate##0 [2023-11-23 21:36:08,271 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:36:08,271 INFO L85 PathProgramCache]: Analyzing trace with hash 82544, now seen corresponding path program 9 times [2023-11-23 21:36:08,271 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 21:36:08,271 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [683820327] [2023-11-23 21:36:08,271 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:36:08,272 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 21:36:08,286 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 21:36:08,286 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-11-23 21:36:08,292 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 21:36:08,297 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-11-23 21:36:08,297 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 21:36:08,298 INFO L85 PathProgramCache]: Analyzing trace with hash 1688810159, now seen corresponding path program 5 times [2023-11-23 21:36:08,298 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 21:36:08,298 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1006200480] [2023-11-23 21:36:08,298 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 21:36:08,298 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 21:36:08,378 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:36:11,545 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:36:11,638 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:36:13,748 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:36:13,803 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 21:36:15,747 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 21:36:15,787 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat