./Ultimate.py --spec ../../sv-benchmarks/c/properties/termination.prp --file ../../sv-benchmarks/c/recursified_loop-simple/recursified_nested_3.c --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for termination Using default analysis Version 30e01a73 Calling Ultimate with: /usr/lib/jvm/java-1.11.0-openjdk-amd64/bin/java -Dosgi.configuration.area=/tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e326d073-cb5e-4cd3-9dec-96ba03232eb6/bin/uautomizer-verify-zZY32mL2XJ/data/config -Xmx15G -Xms4m -jar /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e326d073-cb5e-4cd3-9dec-96ba03232eb6/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_e326d073-cb5e-4cd3-9dec-96ba03232eb6/bin/uautomizer-verify-zZY32mL2XJ/data -tc /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e326d073-cb5e-4cd3-9dec-96ba03232eb6/bin/uautomizer-verify-zZY32mL2XJ/config/AutomizerTermination.xml -i ../../sv-benchmarks/c/recursified_loop-simple/recursified_nested_3.c -s /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e326d073-cb5e-4cd3-9dec-96ba03232eb6/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_e326d073-cb5e-4cd3-9dec-96ba03232eb6/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 9a8e2b8a66923dd7d46d9db92fbd8b38c75eb8108da5237ec87b15cd1ae67985 --- Real Ultimate output --- This is Ultimate 0.2.3-dev-30e01a7 [2023-11-23 22:30:20,600 INFO L188 SettingsManager]: Resetting all preferences to default values... [2023-11-23 22:30:20,714 INFO L114 SettingsManager]: Loading settings from /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e326d073-cb5e-4cd3-9dec-96ba03232eb6/bin/uautomizer-verify-zZY32mL2XJ/config/svcomp-Termination-32bit-Automizer_Default.epf [2023-11-23 22:30:20,721 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2023-11-23 22:30:20,722 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2023-11-23 22:30:20,750 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2023-11-23 22:30:20,751 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2023-11-23 22:30:20,752 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2023-11-23 22:30:20,753 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2023-11-23 22:30:20,754 INFO L153 SettingsManager]: * Use memory slicer=true [2023-11-23 22:30:20,755 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2023-11-23 22:30:20,756 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2023-11-23 22:30:20,756 INFO L153 SettingsManager]: * Use SBE=true [2023-11-23 22:30:20,757 INFO L151 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2023-11-23 22:30:20,758 INFO L153 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2023-11-23 22:30:20,759 INFO L153 SettingsManager]: * Use old map elimination=false [2023-11-23 22:30:20,759 INFO L153 SettingsManager]: * Use external solver (rank synthesis)=false [2023-11-23 22:30:20,770 INFO L153 SettingsManager]: * Use only trivial implications for array writes=true [2023-11-23 22:30:20,770 INFO L153 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2023-11-23 22:30:20,771 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2023-11-23 22:30:20,772 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2023-11-23 22:30:20,773 INFO L153 SettingsManager]: * sizeof long=4 [2023-11-23 22:30:20,773 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2023-11-23 22:30:20,774 INFO L153 SettingsManager]: * sizeof POINTER=4 [2023-11-23 22:30:20,774 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2023-11-23 22:30:20,775 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2023-11-23 22:30:20,776 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2023-11-23 22:30:20,776 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2023-11-23 22:30:20,777 INFO L153 SettingsManager]: * Check unreachability of reach_error function=false [2023-11-23 22:30:20,777 INFO L153 SettingsManager]: * sizeof long double=12 [2023-11-23 22:30:20,778 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2023-11-23 22:30:20,779 INFO L153 SettingsManager]: * Assume nondeterminstic values are in range=false [2023-11-23 22:30:20,779 INFO L153 SettingsManager]: * Use constant arrays=true [2023-11-23 22:30:20,780 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2023-11-23 22:30:20,780 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2023-11-23 22:30:20,781 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2023-11-23 22:30:20,782 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2023-11-23 22:30:20,786 INFO L151 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2023-11-23 22:30:20,787 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_e326d073-cb5e-4cd3-9dec-96ba03232eb6/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_e326d073-cb5e-4cd3-9dec-96ba03232eb6/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 -> 9a8e2b8a66923dd7d46d9db92fbd8b38c75eb8108da5237ec87b15cd1ae67985 [2023-11-23 22:30:21,147 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2023-11-23 22:30:21,183 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2023-11-23 22:30:21,186 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2023-11-23 22:30:21,188 INFO L270 PluginConnector]: Initializing CDTParser... [2023-11-23 22:30:21,191 INFO L274 PluginConnector]: CDTParser initialized [2023-11-23 22:30:21,193 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e326d073-cb5e-4cd3-9dec-96ba03232eb6/bin/uautomizer-verify-zZY32mL2XJ/../../sv-benchmarks/c/recursified_loop-simple/recursified_nested_3.c [2023-11-23 22:30:24,412 INFO L533 CDTParser]: Created temporary CDT project at NULL [2023-11-23 22:30:24,638 INFO L384 CDTParser]: Found 1 translation units. [2023-11-23 22:30:24,639 INFO L180 CDTParser]: Scanning /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e326d073-cb5e-4cd3-9dec-96ba03232eb6/sv-benchmarks/c/recursified_loop-simple/recursified_nested_3.c [2023-11-23 22:30:24,649 INFO L427 CDTParser]: About to delete temporary CDT project at /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e326d073-cb5e-4cd3-9dec-96ba03232eb6/bin/uautomizer-verify-zZY32mL2XJ/data/aad8a8d6b/41e354b76542430aae9c689b351ffe6b/FLAGc8527484b [2023-11-23 22:30:24,675 INFO L435 CDTParser]: Successfully deleted /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e326d073-cb5e-4cd3-9dec-96ba03232eb6/bin/uautomizer-verify-zZY32mL2XJ/data/aad8a8d6b/41e354b76542430aae9c689b351ffe6b [2023-11-23 22:30:24,685 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2023-11-23 22:30:24,691 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2023-11-23 22:30:24,693 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2023-11-23 22:30:24,693 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2023-11-23 22:30:24,700 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2023-11-23 22:30:24,701 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 10:30:24" (1/1) ... [2023-11-23 22:30:24,702 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@529def23 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 10:30:24, skipping insertion in model container [2023-11-23 22:30:24,703 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 10:30:24" (1/1) ... [2023-11-23 22:30:24,728 INFO L177 MainTranslator]: Built tables and reachable declarations [2023-11-23 22:30:24,901 INFO L209 PostProcessor]: Analyzing one entry point: main [2023-11-23 22:30:24,913 INFO L202 MainTranslator]: Completed pre-run [2023-11-23 22:30:24,933 INFO L209 PostProcessor]: Analyzing one entry point: main [2023-11-23 22:30:24,951 INFO L206 MainTranslator]: Completed translation [2023-11-23 22:30:24,952 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 10:30:24 WrapperNode [2023-11-23 22:30:24,952 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2023-11-23 22:30:24,954 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2023-11-23 22:30:24,954 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2023-11-23 22:30:24,954 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2023-11-23 22:30:24,964 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 10:30:24" (1/1) ... [2023-11-23 22:30:24,974 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 10:30:24" (1/1) ... [2023-11-23 22:30:24,993 INFO L138 Inliner]: procedures = 14, calls = 41, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 53 [2023-11-23 22:30:24,994 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2023-11-23 22:30:24,995 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2023-11-23 22:30:24,995 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2023-11-23 22:30:24,995 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2023-11-23 22:30:25,007 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 10:30:24" (1/1) ... [2023-11-23 22:30:25,007 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 10:30:24" (1/1) ... [2023-11-23 22:30:25,010 INFO L184 PluginConnector]: Executing the observer HeapSplitter from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 10:30:24" (1/1) ... [2023-11-23 22:30:25,026 INFO L189 HeapSplitter]: Split 20 memory accesses to 4 slices as follows [2, 6, 6, 6] [2023-11-23 22:30:25,026 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 10:30:24" (1/1) ... [2023-11-23 22:30:25,027 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 10:30:24" (1/1) ... [2023-11-23 22:30:25,035 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 10:30:24" (1/1) ... [2023-11-23 22:30:25,038 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 10:30:24" (1/1) ... [2023-11-23 22:30:25,041 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 10:30:24" (1/1) ... [2023-11-23 22:30:25,042 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 10:30:24" (1/1) ... [2023-11-23 22:30:25,046 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2023-11-23 22:30:25,047 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2023-11-23 22:30:25,047 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2023-11-23 22:30:25,047 INFO L274 PluginConnector]: RCFGBuilder initialized [2023-11-23 22:30:25,048 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 10:30:24" (1/1) ... [2023-11-23 22:30:25,060 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-11-23 22:30:25,073 INFO L189 MonitoredProcess]: No working directory specified, using /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e326d073-cb5e-4cd3-9dec-96ba03232eb6/bin/uautomizer-verify-zZY32mL2XJ/z3 [2023-11-23 22:30:25,089 INFO L229 MonitoredProcess]: Starting monitored process 1 with /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e326d073-cb5e-4cd3-9dec-96ba03232eb6/bin/uautomizer-verify-zZY32mL2XJ/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2023-11-23 22:30:25,114 INFO L327 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e326d073-cb5e-4cd3-9dec-96ba03232eb6/bin/uautomizer-verify-zZY32mL2XJ/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Waiting until timeout for monitored process [2023-11-23 22:30:25,141 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2023-11-23 22:30:25,141 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2023-11-23 22:30:25,142 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2023-11-23 22:30:25,142 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#2 [2023-11-23 22:30:25,142 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#3 [2023-11-23 22:30:25,142 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2023-11-23 22:30:25,142 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2023-11-23 22:30:25,142 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2023-11-23 22:30:25,143 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#2 [2023-11-23 22:30:25,143 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#3 [2023-11-23 22:30:25,143 INFO L130 BoogieDeclarations]: Found specification of procedure func_to_recursive_line_23_to_23_0 [2023-11-23 22:30:25,143 INFO L138 BoogieDeclarations]: Found implementation of procedure func_to_recursive_line_23_to_23_0 [2023-11-23 22:30:25,143 INFO L130 BoogieDeclarations]: Found specification of procedure func_to_recursive_line_22_to_23_0 [2023-11-23 22:30:25,143 INFO L138 BoogieDeclarations]: Found implementation of procedure func_to_recursive_line_22_to_23_0 [2023-11-23 22:30:25,144 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2023-11-23 22:30:25,146 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2023-11-23 22:30:25,146 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2023-11-23 22:30:25,146 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#1 [2023-11-23 22:30:25,147 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#2 [2023-11-23 22:30:25,147 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#3 [2023-11-23 22:30:25,147 INFO L130 BoogieDeclarations]: Found specification of procedure func_to_recursive_line_21_to_22_0 [2023-11-23 22:30:25,147 INFO L138 BoogieDeclarations]: Found implementation of procedure func_to_recursive_line_21_to_22_0 [2023-11-23 22:30:25,147 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2023-11-23 22:30:25,300 INFO L241 CfgBuilder]: Building ICFG [2023-11-23 22:30:25,304 INFO L267 CfgBuilder]: Building CFG for each procedure with an implementation [2023-11-23 22:30:25,548 INFO L282 CfgBuilder]: Performing block encoding [2023-11-23 22:30:25,559 INFO L304 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2023-11-23 22:30:25,559 INFO L309 CfgBuilder]: Removed 0 assume(true) statements. [2023-11-23 22:30:25,561 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 10:30:25 BoogieIcfgContainer [2023-11-23 22:30:25,561 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2023-11-23 22:30:25,563 INFO L112 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2023-11-23 22:30:25,563 INFO L270 PluginConnector]: Initializing BuchiAutomizer... [2023-11-23 22:30:25,568 INFO L274 PluginConnector]: BuchiAutomizer initialized [2023-11-23 22:30:25,569 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2023-11-23 22:30:25,569 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 23.11 10:30:24" (1/3) ... [2023-11-23 22:30:25,571 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@2dee83c6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 23.11 10:30:25, skipping insertion in model container [2023-11-23 22:30:25,571 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2023-11-23 22:30:25,571 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 10:30:24" (2/3) ... [2023-11-23 22:30:25,572 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@2dee83c6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 23.11 10:30:25, skipping insertion in model container [2023-11-23 22:30:25,572 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2023-11-23 22:30:25,572 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 10:30:25" (3/3) ... [2023-11-23 22:30:25,574 INFO L332 chiAutomizerObserver]: Analyzing ICFG recursified_nested_3.c [2023-11-23 22:30:25,681 INFO L303 stractBuchiCegarLoop]: Interprodecural is true [2023-11-23 22:30:25,706 INFO L304 stractBuchiCegarLoop]: Hoare is false [2023-11-23 22:30:25,706 INFO L305 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2023-11-23 22:30:25,707 INFO L306 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2023-11-23 22:30:25,707 INFO L307 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2023-11-23 22:30:25,707 INFO L308 stractBuchiCegarLoop]: Difference is false [2023-11-23 22:30:25,707 INFO L309 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2023-11-23 22:30:25,707 INFO L313 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2023-11-23 22:30:25,712 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 32 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 25 states have internal predecessors, (28), 6 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2023-11-23 22:30:25,742 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2023-11-23 22:30:25,742 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-11-23 22:30:25,742 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-11-23 22:30:25,753 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2023-11-23 22:30:25,753 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-11-23 22:30:25,753 INFO L335 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2023-11-23 22:30:25,754 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 32 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 25 states have internal predecessors, (28), 6 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2023-11-23 22:30:25,762 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2023-11-23 22:30:25,762 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-11-23 22:30:25,763 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-11-23 22:30:25,764 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2023-11-23 22:30:25,764 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-11-23 22:30:25,773 INFO L748 eck$LassoCheckResult]: Stem: 30#$Ultimate##0true assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); 10#L-1true assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~mem13#1, main_#t~mem14#1, main_#t~short15#1, main_#t~mem16#1, main_#t~short17#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;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#2(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#3(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#1(6, main_~#c~0#1.base, main_~#c~0#1.offset, 4);call write~int#2(0, main_~#a~0#1.base, main_~#a~0#1.offset, 4); 5#L86true call func_to_recursive_line_21_to_22_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);< 28#$Ultimate##0true [2023-11-23 22:30:25,786 INFO L750 eck$LassoCheckResult]: Loop: 28#$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;call #t~mem10 := read~int#2(~a.base, ~a.offset, 4); 16#L61true assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~b.base, ~b.offset, 4); 31#L67true call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 25#$Ultimate##0true ~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~b.base, ~b.offset, 4); 19#L41true assume !(#t~mem7 < 6);havoc #t~mem7; 18#L41-1true assume true; 27#func_to_recursive_line_22_to_23_0EXITtrue >#70#return; 32#L67-1true call #t~mem11 := read~int#2(~a.base, ~a.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#2(1 + #t~mem11, ~a.base, ~a.offset, 4);havoc #t~mem11;havoc #t~pre12; 3#L72true call func_to_recursive_line_21_to_22_0(~a.base, ~a.offset, ~b.base, ~b.offset, ~c.base, ~c.offset);< 28#$Ultimate##0true [2023-11-23 22:30:25,794 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 22:30:25,798 INFO L85 PathProgramCache]: Analyzing trace with hash 49760, now seen corresponding path program 1 times [2023-11-23 22:30:25,815 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 22:30:25,816 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1994567609] [2023-11-23 22:30:25,816 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 22:30:25,817 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 22:30:26,020 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 22:30:26,021 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-11-23 22:30:26,062 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 22:30:26,097 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-11-23 22:30:26,101 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 22:30:26,101 INFO L85 PathProgramCache]: Analyzing trace with hash -1113047060, now seen corresponding path program 1 times [2023-11-23 22:30:26,102 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 22:30:26,102 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2058457961] [2023-11-23 22:30:26,103 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 22:30:26,103 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 22:30:26,156 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:26,513 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:26,520 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:26,606 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 22:30:26,607 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-11-23 22:30:26,607 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2058457961] [2023-11-23 22:30:26,608 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2058457961] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-23 22:30:26,608 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-23 22:30:26,608 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2023-11-23 22:30:26,609 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [48648821] [2023-11-23 22:30:26,610 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-23 22:30:26,614 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-11-23 22:30:26,615 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-11-23 22:30:26,652 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2023-11-23 22:30:26,653 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2023-11-23 22:30:26,656 INFO L87 Difference]: Start difference. First operand has 32 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 25 states have internal predecessors, (28), 6 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) 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 22:30:26,870 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-11-23 22:30:26,870 INFO L93 Difference]: Finished difference Result 37 states and 46 transitions. [2023-11-23 22:30:26,872 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 37 states and 46 transitions. [2023-11-23 22:30:26,882 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2023-11-23 22:30:26,890 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 37 states to 24 states and 29 transitions. [2023-11-23 22:30:26,892 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 24 [2023-11-23 22:30:26,893 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 24 [2023-11-23 22:30:26,893 INFO L73 IsDeterministic]: Start isDeterministic. Operand 24 states and 29 transitions. [2023-11-23 22:30:26,896 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2023-11-23 22:30:26,896 INFO L218 hiAutomatonCegarLoop]: Abstraction has 24 states and 29 transitions. [2023-11-23 22:30:26,916 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 24 states and 29 transitions. [2023-11-23 22:30:26,930 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 24 to 22. [2023-11-23 22:30:26,932 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 13 states have (on average 1.1538461538461537) internal successors, (15), 15 states have internal predecessors, (15), 6 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2023-11-23 22:30:26,937 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 26 transitions. [2023-11-23 22:30:26,938 INFO L240 hiAutomatonCegarLoop]: Abstraction has 22 states and 26 transitions. [2023-11-23 22:30:26,940 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2023-11-23 22:30:26,946 INFO L428 stractBuchiCegarLoop]: Abstraction has 22 states and 26 transitions. [2023-11-23 22:30:26,947 INFO L335 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2023-11-23 22:30:26,947 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 22 states and 26 transitions. [2023-11-23 22:30:26,951 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2023-11-23 22:30:26,951 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-11-23 22:30:26,951 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-11-23 22:30:26,953 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2023-11-23 22:30:26,953 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 22:30:26,954 INFO L748 eck$LassoCheckResult]: Stem: 108#$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); 105#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~mem13#1, main_#t~mem14#1, main_#t~short15#1, main_#t~mem16#1, main_#t~short17#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;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#2(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#3(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#1(6, main_~#c~0#1.base, main_~#c~0#1.offset, 4);call write~int#2(0, main_~#a~0#1.base, main_~#a~0#1.offset, 4); 90#L86 call func_to_recursive_line_21_to_22_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);< 91#$Ultimate##0 [2023-11-23 22:30:26,954 INFO L750 eck$LassoCheckResult]: Loop: 91#$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;call #t~mem10 := read~int#2(~a.base, ~a.offset, 4); 107#L61 assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~b.base, ~b.offset, 4); 97#L67 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 102#$Ultimate##0 ~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~b.base, ~b.offset, 4); 101#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#1(0, ~c.base, ~c.offset, 4); 93#L47 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 92#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 95#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 104#L25-1 assume true; 103#func_to_recursive_line_23_to_23_0EXIT >#64#return; 100#L47-1 call #t~mem8 := read~int#3(~b.base, ~b.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~b.base, ~b.offset, 4);havoc #t~mem8;havoc #t~pre9; 98#L52 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 102#$Ultimate##0 ~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~b.base, ~b.offset, 4); 101#L41 assume !(#t~mem7 < 6);havoc #t~mem7; 96#L41-1 assume true; 99#func_to_recursive_line_22_to_23_0EXIT >#66#return; 106#L41-1 assume true; 110#func_to_recursive_line_22_to_23_0EXIT >#70#return; 109#L67-1 call #t~mem11 := read~int#2(~a.base, ~a.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#2(1 + #t~mem11, ~a.base, ~a.offset, 4);havoc #t~mem11;havoc #t~pre12; 89#L72 call func_to_recursive_line_21_to_22_0(~a.base, ~a.offset, ~b.base, ~b.offset, ~c.base, ~c.offset);< 91#$Ultimate##0 [2023-11-23 22:30:26,957 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 22:30:26,958 INFO L85 PathProgramCache]: Analyzing trace with hash 49760, now seen corresponding path program 2 times [2023-11-23 22:30:26,958 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 22:30:26,959 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1243056438] [2023-11-23 22:30:26,959 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 22:30:26,960 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 22:30:26,989 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 22:30:26,989 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-11-23 22:30:27,025 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 22:30:27,031 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-11-23 22:30:27,033 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 22:30:27,035 INFO L85 PathProgramCache]: Analyzing trace with hash -1122494970, now seen corresponding path program 1 times [2023-11-23 22:30:27,036 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 22:30:27,037 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1458165777] [2023-11-23 22:30:27,037 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 22:30:27,038 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 22:30:27,066 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:27,260 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:27,270 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:27,356 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:27,359 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:27,412 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 8 [2023-11-23 22:30:27,415 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:27,418 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 22:30:27,419 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-11-23 22:30:27,419 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1458165777] [2023-11-23 22:30:27,420 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1458165777] provided 1 perfect and 0 imperfect interpolant sequences [2023-11-23 22:30:27,420 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-11-23 22:30:27,420 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2023-11-23 22:30:27,420 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2007993670] [2023-11-23 22:30:27,421 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-11-23 22:30:27,421 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-11-23 22:30:27,422 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-11-23 22:30:27,422 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2023-11-23 22:30:27,422 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2023-11-23 22:30:27,423 INFO L87 Difference]: Start difference. First operand 22 states and 26 transitions. cyclomatic complexity: 7 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 22:30:27,536 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-11-23 22:30:27,537 INFO L93 Difference]: Finished difference Result 24 states and 28 transitions. [2023-11-23 22:30:27,537 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 24 states and 28 transitions. [2023-11-23 22:30:27,539 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2023-11-23 22:30:27,540 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 24 states to 24 states and 28 transitions. [2023-11-23 22:30:27,541 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 24 [2023-11-23 22:30:27,541 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 24 [2023-11-23 22:30:27,541 INFO L73 IsDeterministic]: Start isDeterministic. Operand 24 states and 28 transitions. [2023-11-23 22:30:27,542 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2023-11-23 22:30:27,542 INFO L218 hiAutomatonCegarLoop]: Abstraction has 24 states and 28 transitions. [2023-11-23 22:30:27,542 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 24 states and 28 transitions. [2023-11-23 22:30:27,545 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 24 to 24. [2023-11-23 22:30:27,545 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 24 states, 14 states have (on average 1.1428571428571428) internal successors, (16), 16 states have internal predecessors, (16), 6 states have call successors, (6), 3 states have call predecessors, (6), 4 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2023-11-23 22:30:27,546 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 28 transitions. [2023-11-23 22:30:27,547 INFO L240 hiAutomatonCegarLoop]: Abstraction has 24 states and 28 transitions. [2023-11-23 22:30:27,547 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2023-11-23 22:30:27,548 INFO L428 stractBuchiCegarLoop]: Abstraction has 24 states and 28 transitions. [2023-11-23 22:30:27,548 INFO L335 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2023-11-23 22:30:27,549 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 24 states and 28 transitions. [2023-11-23 22:30:27,550 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2023-11-23 22:30:27,550 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-11-23 22:30:27,550 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-11-23 22:30:27,551 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2023-11-23 22:30:27,551 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] [2023-11-23 22:30:27,552 INFO L748 eck$LassoCheckResult]: Stem: 191#$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); 187#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~mem13#1, main_#t~mem14#1, main_#t~short15#1, main_#t~mem16#1, main_#t~short17#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;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#2(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#3(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#1(6, main_~#c~0#1.base, main_~#c~0#1.offset, 4);call write~int#2(0, main_~#a~0#1.base, main_~#a~0#1.offset, 4); 172#L86 call func_to_recursive_line_21_to_22_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);< 173#$Ultimate##0 [2023-11-23 22:30:27,552 INFO L750 eck$LassoCheckResult]: Loop: 173#$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;call #t~mem10 := read~int#2(~a.base, ~a.offset, 4); 190#L61 assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~b.base, ~b.offset, 4); 175#L67 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 184#$Ultimate##0 ~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~b.base, ~b.offset, 4); 183#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#1(0, ~c.base, ~c.offset, 4); 179#L47 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 178#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 181#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 180#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 178#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 181#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 188#L25-1 assume true; 185#func_to_recursive_line_23_to_23_0EXIT >#62#return; 186#L25-1 assume true; 194#func_to_recursive_line_23_to_23_0EXIT >#64#return; 182#L47-1 call #t~mem8 := read~int#3(~b.base, ~b.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~b.base, ~b.offset, 4);havoc #t~mem8;havoc #t~pre9; 176#L52 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 184#$Ultimate##0 ~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~b.base, ~b.offset, 4); 183#L41 assume !(#t~mem7 < 6);havoc #t~mem7; 174#L41-1 assume true; 177#func_to_recursive_line_22_to_23_0EXIT >#66#return; 189#L41-1 assume true; 193#func_to_recursive_line_22_to_23_0EXIT >#70#return; 192#L67-1 call #t~mem11 := read~int#2(~a.base, ~a.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#2(1 + #t~mem11, ~a.base, ~a.offset, 4);havoc #t~mem11;havoc #t~pre12; 171#L72 call func_to_recursive_line_21_to_22_0(~a.base, ~a.offset, ~b.base, ~b.offset, ~c.base, ~c.offset);< 173#$Ultimate##0 [2023-11-23 22:30:27,552 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 22:30:27,553 INFO L85 PathProgramCache]: Analyzing trace with hash 49760, now seen corresponding path program 3 times [2023-11-23 22:30:27,553 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 22:30:27,553 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [922840288] [2023-11-23 22:30:27,553 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 22:30:27,554 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 22:30:27,566 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 22:30:27,566 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-11-23 22:30:27,573 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 22:30:27,576 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-11-23 22:30:27,577 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 22:30:27,577 INFO L85 PathProgramCache]: Analyzing trace with hash -1944809856, now seen corresponding path program 1 times [2023-11-23 22:30:27,578 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 22:30:27,578 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [236873806] [2023-11-23 22:30:27,578 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 22:30:27,578 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 22:30:27,596 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:27,842 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:27,856 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:27,999 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:28,005 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:28,153 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:28,156 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:28,225 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 13 [2023-11-23 22:30:28,228 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:28,231 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 2 proven. 3 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2023-11-23 22:30:28,231 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-11-23 22:30:28,231 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [236873806] [2023-11-23 22:30:28,232 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [236873806] provided 0 perfect and 1 imperfect interpolant sequences [2023-11-23 22:30:28,232 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [817010287] [2023-11-23 22:30:28,232 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 22:30:28,232 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-11-23 22:30:28,233 INFO L189 MonitoredProcess]: No working directory specified, using /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e326d073-cb5e-4cd3-9dec-96ba03232eb6/bin/uautomizer-verify-zZY32mL2XJ/z3 [2023-11-23 22:30:28,235 INFO L229 MonitoredProcess]: Starting monitored process 2 with /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e326d073-cb5e-4cd3-9dec-96ba03232eb6/bin/uautomizer-verify-zZY32mL2XJ/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-11-23 22:30:28,271 INFO L327 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e326d073-cb5e-4cd3-9dec-96ba03232eb6/bin/uautomizer-verify-zZY32mL2XJ/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2023-11-23 22:30:28,356 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:28,359 INFO L262 TraceCheckSpWp]: Trace formula consists of 197 conjuncts, 26 conjunts are in the unsatisfiable core [2023-11-23 22:30:28,364 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 22:30:28,419 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 22:30:28,643 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 2 proven. 3 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2023-11-23 22:30:28,644 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2023-11-23 22:30:29,264 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 2 proven. 4 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2023-11-23 22:30:29,266 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [817010287] provided 0 perfect and 2 imperfect interpolant sequences [2023-11-23 22:30:29,267 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2023-11-23 22:30:29,267 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9, 10] total 22 [2023-11-23 22:30:29,268 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [233179219] [2023-11-23 22:30:29,268 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2023-11-23 22:30:29,269 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-11-23 22:30:29,270 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-11-23 22:30:29,271 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2023-11-23 22:30:29,272 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=90, Invalid=372, Unknown=0, NotChecked=0, Total=462 [2023-11-23 22:30:29,273 INFO L87 Difference]: Start difference. First operand 24 states and 28 transitions. cyclomatic complexity: 7 Second operand has 22 states, 17 states have (on average 1.7647058823529411) internal successors, (30), 18 states have internal predecessors, (30), 7 states have call successors, (12), 6 states have call predecessors, (12), 7 states have return successors, (9), 4 states have call predecessors, (9), 7 states have call successors, (9) [2023-11-23 22:30:29,645 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-11-23 22:30:29,645 INFO L93 Difference]: Finished difference Result 28 states and 32 transitions. [2023-11-23 22:30:29,645 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 28 states and 32 transitions. [2023-11-23 22:30:29,649 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2023-11-23 22:30:29,652 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 28 states to 28 states and 32 transitions. [2023-11-23 22:30:29,652 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 28 [2023-11-23 22:30:29,652 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 28 [2023-11-23 22:30:29,653 INFO L73 IsDeterministic]: Start isDeterministic. Operand 28 states and 32 transitions. [2023-11-23 22:30:29,653 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2023-11-23 22:30:29,653 INFO L218 hiAutomatonCegarLoop]: Abstraction has 28 states and 32 transitions. [2023-11-23 22:30:29,654 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 28 states and 32 transitions. [2023-11-23 22:30:29,659 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 28 to 28. [2023-11-23 22:30:29,659 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 16 states have (on average 1.125) internal successors, (18), 18 states have internal predecessors, (18), 6 states have call successors, (6), 3 states have call predecessors, (6), 6 states have return successors, (8), 6 states have call predecessors, (8), 4 states have call successors, (8) [2023-11-23 22:30:29,668 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 32 transitions. [2023-11-23 22:30:29,668 INFO L240 hiAutomatonCegarLoop]: Abstraction has 28 states and 32 transitions. [2023-11-23 22:30:29,669 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2023-11-23 22:30:29,671 INFO L428 stractBuchiCegarLoop]: Abstraction has 28 states and 32 transitions. [2023-11-23 22:30:29,671 INFO L335 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2023-11-23 22:30:29,671 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 28 states and 32 transitions. [2023-11-23 22:30:29,673 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2023-11-23 22:30:29,673 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-11-23 22:30:29,673 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-11-23 22:30:29,678 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2023-11-23 22:30:29,678 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [4, 4, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-11-23 22:30:29,679 INFO L748 eck$LassoCheckResult]: Stem: 459#$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); 453#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~mem13#1, main_#t~mem14#1, main_#t~short15#1, main_#t~mem16#1, main_#t~short17#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;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#2(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#3(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#1(6, main_~#c~0#1.base, main_~#c~0#1.offset, 4);call write~int#2(0, main_~#a~0#1.base, main_~#a~0#1.offset, 4); 440#L86 call func_to_recursive_line_21_to_22_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);< 441#$Ultimate##0 [2023-11-23 22:30:29,680 INFO L750 eck$LassoCheckResult]: Loop: 441#$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;call #t~mem10 := read~int#2(~a.base, ~a.offset, 4); 458#L61 assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~b.base, ~b.offset, 4); 443#L67 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 452#$Ultimate##0 ~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~b.base, ~b.offset, 4); 450#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#1(0, ~c.base, ~c.offset, 4); 448#L47 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 446#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 449#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 447#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 446#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 449#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 447#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 446#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 449#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 447#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 446#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 449#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 456#L25-1 assume true; 454#func_to_recursive_line_23_to_23_0EXIT >#62#return; 455#L25-1 assume true; 466#func_to_recursive_line_23_to_23_0EXIT >#62#return; 465#L25-1 assume true; 464#func_to_recursive_line_23_to_23_0EXIT >#62#return; 463#L25-1 assume true; 462#func_to_recursive_line_23_to_23_0EXIT >#64#return; 451#L47-1 call #t~mem8 := read~int#3(~b.base, ~b.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~b.base, ~b.offset, 4);havoc #t~mem8;havoc #t~pre9; 444#L52 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 452#$Ultimate##0 ~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~b.base, ~b.offset, 4); 450#L41 assume !(#t~mem7 < 6);havoc #t~mem7; 442#L41-1 assume true; 445#func_to_recursive_line_22_to_23_0EXIT >#66#return; 457#L41-1 assume true; 461#func_to_recursive_line_22_to_23_0EXIT >#70#return; 460#L67-1 call #t~mem11 := read~int#2(~a.base, ~a.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#2(1 + #t~mem11, ~a.base, ~a.offset, 4);havoc #t~mem11;havoc #t~pre12; 439#L72 call func_to_recursive_line_21_to_22_0(~a.base, ~a.offset, ~b.base, ~b.offset, ~c.base, ~c.offset);< 441#$Ultimate##0 [2023-11-23 22:30:29,680 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 22:30:29,680 INFO L85 PathProgramCache]: Analyzing trace with hash 49760, now seen corresponding path program 4 times [2023-11-23 22:30:29,681 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 22:30:29,681 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [587171429] [2023-11-23 22:30:29,681 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 22:30:29,682 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 22:30:29,696 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 22:30:29,697 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-11-23 22:30:29,703 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 22:30:29,710 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-11-23 22:30:29,711 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 22:30:29,711 INFO L85 PathProgramCache]: Analyzing trace with hash -1667775892, now seen corresponding path program 2 times [2023-11-23 22:30:29,711 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 22:30:29,711 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1943758530] [2023-11-23 22:30:29,712 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 22:30:29,712 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 22:30:29,753 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:30,293 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:30,309 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:30,783 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:30,798 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:31,104 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:31,116 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:31,330 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:31,342 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:31,450 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:31,452 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:31,505 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 23 [2023-11-23 22:30:31,513 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:31,520 INFO L134 CoverageAnalysis]: Checked inductivity of 31 backedges. 6 proven. 15 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2023-11-23 22:30:31,521 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-11-23 22:30:31,521 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1943758530] [2023-11-23 22:30:31,521 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1943758530] provided 0 perfect and 1 imperfect interpolant sequences [2023-11-23 22:30:31,522 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [662504848] [2023-11-23 22:30:31,522 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2023-11-23 22:30:31,523 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-11-23 22:30:31,523 INFO L189 MonitoredProcess]: No working directory specified, using /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e326d073-cb5e-4cd3-9dec-96ba03232eb6/bin/uautomizer-verify-zZY32mL2XJ/z3 [2023-11-23 22:30:31,545 INFO L229 MonitoredProcess]: Starting monitored process 3 with /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e326d073-cb5e-4cd3-9dec-96ba03232eb6/bin/uautomizer-verify-zZY32mL2XJ/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-11-23 22:30:31,556 INFO L327 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e326d073-cb5e-4cd3-9dec-96ba03232eb6/bin/uautomizer-verify-zZY32mL2XJ/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2023-11-23 22:30:31,672 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2023-11-23 22:30:31,673 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-11-23 22:30:31,675 INFO L262 TraceCheckSpWp]: Trace formula consists of 263 conjuncts, 62 conjunts are in the unsatisfiable core [2023-11-23 22:30:31,681 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 22:30:31,715 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 22:30:32,082 INFO L134 CoverageAnalysis]: Checked inductivity of 31 backedges. 2 proven. 15 refuted. 0 times theorem prover too weak. 14 trivial. 0 not checked. [2023-11-23 22:30:32,082 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2023-11-23 22:30:33,568 INFO L134 CoverageAnalysis]: Checked inductivity of 31 backedges. 2 proven. 27 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2023-11-23 22:30:33,569 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [662504848] provided 0 perfect and 2 imperfect interpolant sequences [2023-11-23 22:30:33,569 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2023-11-23 22:30:33,569 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 12, 18] total 35 [2023-11-23 22:30:33,569 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1486348968] [2023-11-23 22:30:33,569 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2023-11-23 22:30:33,570 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-11-23 22:30:33,570 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-11-23 22:30:33,571 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 35 interpolants. [2023-11-23 22:30:33,571 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=205, Invalid=985, Unknown=0, NotChecked=0, Total=1190 [2023-11-23 22:30:33,572 INFO L87 Difference]: Start difference. First operand 28 states and 32 transitions. cyclomatic complexity: 7 Second operand has 35 states, 26 states have (on average 1.6153846153846154) internal successors, (42), 29 states have internal predecessors, (42), 11 states have call successors, (15), 8 states have call predecessors, (15), 11 states have return successors, (15), 8 states have call predecessors, (15), 11 states have call successors, (15) [2023-11-23 22:30:34,215 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-11-23 22:30:34,215 INFO L93 Difference]: Finished difference Result 32 states and 36 transitions. [2023-11-23 22:30:34,215 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 32 states and 36 transitions. [2023-11-23 22:30:34,220 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2023-11-23 22:30:34,221 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 32 states to 32 states and 36 transitions. [2023-11-23 22:30:34,222 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 32 [2023-11-23 22:30:34,222 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 32 [2023-11-23 22:30:34,222 INFO L73 IsDeterministic]: Start isDeterministic. Operand 32 states and 36 transitions. [2023-11-23 22:30:34,222 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2023-11-23 22:30:34,223 INFO L218 hiAutomatonCegarLoop]: Abstraction has 32 states and 36 transitions. [2023-11-23 22:30:34,223 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states and 36 transitions. [2023-11-23 22:30:34,226 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 32. [2023-11-23 22:30:34,226 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 18 states have (on average 1.1111111111111112) internal successors, (20), 20 states have internal predecessors, (20), 6 states have call successors, (6), 3 states have call predecessors, (6), 8 states have return successors, (10), 8 states have call predecessors, (10), 4 states have call successors, (10) [2023-11-23 22:30:34,227 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 36 transitions. [2023-11-23 22:30:34,227 INFO L240 hiAutomatonCegarLoop]: Abstraction has 32 states and 36 transitions. [2023-11-23 22:30:34,230 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2023-11-23 22:30:34,232 INFO L428 stractBuchiCegarLoop]: Abstraction has 32 states and 36 transitions. [2023-11-23 22:30:34,232 INFO L335 stractBuchiCegarLoop]: ======== Iteration 5 ============ [2023-11-23 22:30:34,232 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 32 states and 36 transitions. [2023-11-23 22:30:34,233 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2023-11-23 22:30:34,233 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-11-23 22:30:34,233 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-11-23 22:30:34,236 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2023-11-23 22:30:34,236 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [6, 6, 5, 5, 5, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-11-23 22:30:34,236 INFO L748 eck$LassoCheckResult]: Stem: 857#$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); 851#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~mem13#1, main_#t~mem14#1, main_#t~short15#1, main_#t~mem16#1, main_#t~short17#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;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#2(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#3(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#1(6, main_~#c~0#1.base, main_~#c~0#1.offset, 4);call write~int#2(0, main_~#a~0#1.base, main_~#a~0#1.offset, 4); 838#L86 call func_to_recursive_line_21_to_22_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);< 839#$Ultimate##0 [2023-11-23 22:30:34,237 INFO L750 eck$LassoCheckResult]: Loop: 839#$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;call #t~mem10 := read~int#2(~a.base, ~a.offset, 4); 856#L61 assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~b.base, ~b.offset, 4); 842#L67 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 850#$Ultimate##0 ~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~b.base, ~b.offset, 4); 848#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#1(0, ~c.base, ~c.offset, 4); 845#L47 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 844#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 847#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 846#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 844#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 847#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 846#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 844#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 847#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 846#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 844#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 847#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 846#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 844#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 847#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 846#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 844#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 847#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 854#L25-1 assume true; 852#func_to_recursive_line_23_to_23_0EXIT >#62#return; 853#L25-1 assume true; 868#func_to_recursive_line_23_to_23_0EXIT >#62#return; 867#L25-1 assume true; 866#func_to_recursive_line_23_to_23_0EXIT >#62#return; 865#L25-1 assume true; 864#func_to_recursive_line_23_to_23_0EXIT >#62#return; 863#L25-1 assume true; 862#func_to_recursive_line_23_to_23_0EXIT >#62#return; 861#L25-1 assume true; 860#func_to_recursive_line_23_to_23_0EXIT >#64#return; 849#L47-1 call #t~mem8 := read~int#3(~b.base, ~b.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~b.base, ~b.offset, 4);havoc #t~mem8;havoc #t~pre9; 841#L52 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 850#$Ultimate##0 ~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~b.base, ~b.offset, 4); 848#L41 assume !(#t~mem7 < 6);havoc #t~mem7; 840#L41-1 assume true; 843#func_to_recursive_line_22_to_23_0EXIT >#66#return; 855#L41-1 assume true; 859#func_to_recursive_line_22_to_23_0EXIT >#70#return; 858#L67-1 call #t~mem11 := read~int#2(~a.base, ~a.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#2(1 + #t~mem11, ~a.base, ~a.offset, 4);havoc #t~mem11;havoc #t~pre12; 837#L72 call func_to_recursive_line_21_to_22_0(~a.base, ~a.offset, ~b.base, ~b.offset, ~c.base, ~c.offset);< 839#$Ultimate##0 [2023-11-23 22:30:34,237 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 22:30:34,237 INFO L85 PathProgramCache]: Analyzing trace with hash 49760, now seen corresponding path program 5 times [2023-11-23 22:30:34,237 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 22:30:34,237 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1998952316] [2023-11-23 22:30:34,238 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 22:30:34,238 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 22:30:34,265 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 22:30:34,266 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-11-23 22:30:34,271 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 22:30:34,284 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-11-23 22:30:34,284 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 22:30:34,284 INFO L85 PathProgramCache]: Analyzing trace with hash 217514072, now seen corresponding path program 3 times [2023-11-23 22:30:34,286 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 22:30:34,286 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [301884804] [2023-11-23 22:30:34,287 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 22:30:34,287 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 22:30:34,317 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:34,809 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:34,845 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:35,351 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:35,367 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:35,522 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:35,531 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:35,585 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:35,596 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:35,641 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:35,647 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:35,676 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:35,681 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:35,697 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:35,700 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:35,709 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 33 [2023-11-23 22:30:35,713 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:35,781 INFO L134 CoverageAnalysis]: Checked inductivity of 74 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 71 trivial. 0 not checked. [2023-11-23 22:30:35,781 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-11-23 22:30:35,782 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [301884804] [2023-11-23 22:30:35,782 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [301884804] provided 0 perfect and 1 imperfect interpolant sequences [2023-11-23 22:30:35,783 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [226579582] [2023-11-23 22:30:35,783 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2023-11-23 22:30:35,783 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-11-23 22:30:35,783 INFO L189 MonitoredProcess]: No working directory specified, using /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e326d073-cb5e-4cd3-9dec-96ba03232eb6/bin/uautomizer-verify-zZY32mL2XJ/z3 [2023-11-23 22:30:35,789 INFO L229 MonitoredProcess]: Starting monitored process 4 with /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e326d073-cb5e-4cd3-9dec-96ba03232eb6/bin/uautomizer-verify-zZY32mL2XJ/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-11-23 22:30:35,793 INFO L327 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e326d073-cb5e-4cd3-9dec-96ba03232eb6/bin/uautomizer-verify-zZY32mL2XJ/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2023-11-23 22:30:35,973 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 7 check-sat command(s) [2023-11-23 22:30:35,973 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-11-23 22:30:35,976 INFO L262 TraceCheckSpWp]: Trace formula consists of 329 conjuncts, 41 conjunts are in the unsatisfiable core [2023-11-23 22:30:35,981 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 22:30:35,985 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 22:30:36,238 INFO L134 CoverageAnalysis]: Checked inductivity of 74 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 71 trivial. 0 not checked. [2023-11-23 22:30:36,238 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2023-11-23 22:30:36,975 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [226579582] provided 0 perfect and 1 imperfect interpolant sequences [2023-11-23 22:30:36,975 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-11-23 22:30:36,975 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 9] total 17 [2023-11-23 22:30:36,976 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2106124820] [2023-11-23 22:30:36,976 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-11-23 22:30:36,978 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-11-23 22:30:36,978 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-11-23 22:30:36,979 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2023-11-23 22:30:36,981 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=103, Invalid=449, Unknown=0, NotChecked=0, Total=552 [2023-11-23 22:30:36,981 INFO L87 Difference]: Start difference. First operand 32 states and 36 transitions. cyclomatic complexity: 7 Second operand has 17 states, 13 states have (on average 1.6923076923076923) internal successors, (22), 15 states have internal predecessors, (22), 7 states have call successors, (9), 3 states have call predecessors, (9), 5 states have return successors, (7), 6 states have call predecessors, (7), 6 states have call successors, (7) [2023-11-23 22:30:37,320 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-11-23 22:30:37,320 INFO L93 Difference]: Finished difference Result 36 states and 40 transitions. [2023-11-23 22:30:37,321 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 36 states and 40 transitions. [2023-11-23 22:30:37,322 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2023-11-23 22:30:37,323 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 36 states to 36 states and 40 transitions. [2023-11-23 22:30:37,324 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 36 [2023-11-23 22:30:37,324 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 36 [2023-11-23 22:30:37,324 INFO L73 IsDeterministic]: Start isDeterministic. Operand 36 states and 40 transitions. [2023-11-23 22:30:37,325 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2023-11-23 22:30:37,325 INFO L218 hiAutomatonCegarLoop]: Abstraction has 36 states and 40 transitions. [2023-11-23 22:30:37,325 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states and 40 transitions. [2023-11-23 22:30:37,329 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 36. [2023-11-23 22:30:37,329 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 20 states have (on average 1.1) internal successors, (22), 22 states have internal predecessors, (22), 6 states have call successors, (6), 3 states have call predecessors, (6), 10 states have return successors, (12), 10 states have call predecessors, (12), 4 states have call successors, (12) [2023-11-23 22:30:37,330 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 40 transitions. [2023-11-23 22:30:37,331 INFO L240 hiAutomatonCegarLoop]: Abstraction has 36 states and 40 transitions. [2023-11-23 22:30:37,331 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2023-11-23 22:30:37,332 INFO L428 stractBuchiCegarLoop]: Abstraction has 36 states and 40 transitions. [2023-11-23 22:30:37,332 INFO L335 stractBuchiCegarLoop]: ======== Iteration 6 ============ [2023-11-23 22:30:37,332 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 36 states and 40 transitions. [2023-11-23 22:30:37,333 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2023-11-23 22:30:37,333 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-11-23 22:30:37,334 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-11-23 22:30:37,337 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2023-11-23 22:30:37,337 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [18, 18, 15, 15, 15, 4, 4, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1] [2023-11-23 22:30:37,338 INFO L748 eck$LassoCheckResult]: Stem: 1282#$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); 1275#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~mem13#1, main_#t~mem14#1, main_#t~short15#1, main_#t~mem16#1, main_#t~short17#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;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#2(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#3(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#1(6, main_~#c~0#1.base, main_~#c~0#1.offset, 4);call write~int#2(0, main_~#a~0#1.base, main_~#a~0#1.offset, 4); 1261#L86 call func_to_recursive_line_21_to_22_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);< 1262#$Ultimate##0 [2023-11-23 22:30:37,338 INFO L750 eck$LassoCheckResult]: Loop: 1262#$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;call #t~mem10 := read~int#2(~a.base, ~a.offset, 4); 1281#L61 assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~b.base, ~b.offset, 4); 1264#L67 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 1274#$Ultimate##0 ~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~b.base, ~b.offset, 4); 1271#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#1(0, ~c.base, ~c.offset, 4); 1269#L47 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1267#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 1270#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 1268#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1267#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 1270#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 1268#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1267#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 1270#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 1268#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1267#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 1270#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 1268#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1267#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 1270#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 1268#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1267#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 1270#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 1279#L25-1 assume true; 1276#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1277#L25-1 assume true; 1278#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1295#L25-1 assume true; 1294#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1293#L25-1 assume true; 1292#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1291#L25-1 assume true; 1290#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1289#L25-1 assume true; 1288#func_to_recursive_line_23_to_23_0EXIT >#64#return; 1273#L47-1 call #t~mem8 := read~int#3(~b.base, ~b.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~b.base, ~b.offset, 4);havoc #t~mem8;havoc #t~pre9; 1265#L52 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 1274#$Ultimate##0 ~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~b.base, ~b.offset, 4); 1271#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#1(0, ~c.base, ~c.offset, 4); 1269#L47 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1267#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 1270#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 1268#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1267#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 1270#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 1268#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1267#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 1270#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 1268#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1267#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 1270#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 1268#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1267#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 1270#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 1268#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1267#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 1270#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 1279#L25-1 assume true; 1276#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1277#L25-1 assume true; 1278#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1295#L25-1 assume true; 1294#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1293#L25-1 assume true; 1292#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1291#L25-1 assume true; 1290#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1289#L25-1 assume true; 1288#func_to_recursive_line_23_to_23_0EXIT >#64#return; 1273#L47-1 call #t~mem8 := read~int#3(~b.base, ~b.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~b.base, ~b.offset, 4);havoc #t~mem8;havoc #t~pre9; 1265#L52 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 1274#$Ultimate##0 ~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~b.base, ~b.offset, 4); 1271#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#1(0, ~c.base, ~c.offset, 4); 1269#L47 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1267#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 1270#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 1268#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1267#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 1270#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 1268#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1267#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 1270#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 1268#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1267#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 1270#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 1268#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1267#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 1270#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 1268#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1267#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 1270#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 1279#L25-1 assume true; 1276#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1277#L25-1 assume true; 1278#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1295#L25-1 assume true; 1294#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1293#L25-1 assume true; 1292#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1291#L25-1 assume true; 1290#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1289#L25-1 assume true; 1288#func_to_recursive_line_23_to_23_0EXIT >#64#return; 1273#L47-1 call #t~mem8 := read~int#3(~b.base, ~b.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~b.base, ~b.offset, 4);havoc #t~mem8;havoc #t~pre9; 1265#L52 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 1274#$Ultimate##0 ~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~b.base, ~b.offset, 4); 1271#L41 assume !(#t~mem7 < 6);havoc #t~mem7; 1272#L41-1 assume true; 1280#func_to_recursive_line_22_to_23_0EXIT >#66#return; 1263#L41-1 assume true; 1266#func_to_recursive_line_22_to_23_0EXIT >#66#return; 1287#L41-1 assume true; 1286#func_to_recursive_line_22_to_23_0EXIT >#66#return; 1285#L41-1 assume true; 1284#func_to_recursive_line_22_to_23_0EXIT >#70#return; 1283#L67-1 call #t~mem11 := read~int#2(~a.base, ~a.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#2(1 + #t~mem11, ~a.base, ~a.offset, 4);havoc #t~mem11;havoc #t~pre12; 1260#L72 call func_to_recursive_line_21_to_22_0(~a.base, ~a.offset, ~b.base, ~b.offset, ~c.base, ~c.offset);< 1262#$Ultimate##0 [2023-11-23 22:30:37,339 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 22:30:37,339 INFO L85 PathProgramCache]: Analyzing trace with hash 49760, now seen corresponding path program 6 times [2023-11-23 22:30:37,340 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 22:30:37,340 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1296267151] [2023-11-23 22:30:37,340 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 22:30:37,340 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 22:30:37,350 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 22:30:37,351 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-11-23 22:30:37,356 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 22:30:37,360 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-11-23 22:30:37,360 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 22:30:37,361 INFO L85 PathProgramCache]: Analyzing trace with hash -11960144, now seen corresponding path program 4 times [2023-11-23 22:30:37,361 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 22:30:37,361 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [222293200] [2023-11-23 22:30:37,361 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 22:30:37,362 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 22:30:37,416 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:39,559 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:39,605 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:41,070 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:41,080 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:41,575 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:41,587 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:41,957 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:41,969 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:42,220 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:42,226 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:42,404 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:42,411 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:42,517 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:42,520 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:42,576 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 33 [2023-11-23 22:30:42,602 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:42,626 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:42,635 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:42,646 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:42,652 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:42,661 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:42,666 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:42,672 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:42,676 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:42,681 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:42,684 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:42,687 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:42,689 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:42,691 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 33 [2023-11-23 22:30:42,700 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:42,714 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:42,721 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:42,731 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:42,737 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:42,745 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:42,750 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:42,757 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:42,761 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:42,765 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:42,769 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:42,773 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:42,775 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:42,777 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 33 [2023-11-23 22:30:42,779 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:42,783 INFO L134 CoverageAnalysis]: Checked inductivity of 750 backedges. 14 proven. 307 refuted. 0 times theorem prover too weak. 429 trivial. 0 not checked. [2023-11-23 22:30:42,784 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-11-23 22:30:42,784 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [222293200] [2023-11-23 22:30:42,784 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [222293200] provided 0 perfect and 1 imperfect interpolant sequences [2023-11-23 22:30:42,784 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1837705409] [2023-11-23 22:30:42,785 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2023-11-23 22:30:42,785 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-11-23 22:30:42,785 INFO L189 MonitoredProcess]: No working directory specified, using /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e326d073-cb5e-4cd3-9dec-96ba03232eb6/bin/uautomizer-verify-zZY32mL2XJ/z3 [2023-11-23 22:30:42,791 INFO L229 MonitoredProcess]: Starting monitored process 5 with /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e326d073-cb5e-4cd3-9dec-96ba03232eb6/bin/uautomizer-verify-zZY32mL2XJ/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-11-23 22:30:42,814 INFO L327 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e326d073-cb5e-4cd3-9dec-96ba03232eb6/bin/uautomizer-verify-zZY32mL2XJ/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2023-11-23 22:30:43,072 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2023-11-23 22:30:43,072 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-11-23 22:30:43,079 INFO L262 TraceCheckSpWp]: Trace formula consists of 807 conjuncts, 98 conjunts are in the unsatisfiable core [2023-11-23 22:30:43,098 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 22:30:43,167 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 22:30:43,685 INFO L134 CoverageAnalysis]: Checked inductivity of 750 backedges. 392 proven. 51 refuted. 0 times theorem prover too weak. 307 trivial. 0 not checked. [2023-11-23 22:30:43,687 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2023-11-23 22:30:47,890 INFO L134 CoverageAnalysis]: Checked inductivity of 750 backedges. 350 proven. 70 refuted. 0 times theorem prover too weak. 330 trivial. 0 not checked. [2023-11-23 22:30:47,890 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1837705409] provided 0 perfect and 2 imperfect interpolant sequences [2023-11-23 22:30:47,893 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2023-11-23 22:30:47,893 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 15, 26] total 46 [2023-11-23 22:30:47,893 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1023647666] [2023-11-23 22:30:47,894 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2023-11-23 22:30:47,897 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-11-23 22:30:47,897 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-11-23 22:30:47,898 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 46 interpolants. [2023-11-23 22:30:47,901 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=344, Invalid=1726, Unknown=0, NotChecked=0, Total=2070 [2023-11-23 22:30:47,902 INFO L87 Difference]: Start difference. First operand 36 states and 40 transitions. cyclomatic complexity: 7 Second operand has 46 states, 35 states have (on average 1.6857142857142857) internal successors, (59), 38 states have internal predecessors, (59), 14 states have call successors, (24), 10 states have call predecessors, (24), 15 states have return successors, (26), 13 states have call predecessors, (26), 14 states have call successors, (26) [2023-11-23 22:30:48,682 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-11-23 22:30:48,682 INFO L93 Difference]: Finished difference Result 38 states and 42 transitions. [2023-11-23 22:30:48,682 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 38 states and 42 transitions. [2023-11-23 22:30:48,683 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2023-11-23 22:30:48,685 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 38 states to 38 states and 42 transitions. [2023-11-23 22:30:48,685 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 38 [2023-11-23 22:30:48,685 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 38 [2023-11-23 22:30:48,685 INFO L73 IsDeterministic]: Start isDeterministic. Operand 38 states and 42 transitions. [2023-11-23 22:30:48,686 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2023-11-23 22:30:48,686 INFO L218 hiAutomatonCegarLoop]: Abstraction has 38 states and 42 transitions. [2023-11-23 22:30:48,686 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 38 states and 42 transitions. [2023-11-23 22:30:48,690 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 38 to 38. [2023-11-23 22:30:48,690 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 38 states, 21 states have (on average 1.0952380952380953) internal successors, (23), 23 states have internal predecessors, (23), 6 states have call successors, (6), 3 states have call predecessors, (6), 11 states have return successors, (13), 11 states have call predecessors, (13), 4 states have call successors, (13) [2023-11-23 22:30:48,691 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 42 transitions. [2023-11-23 22:30:48,691 INFO L240 hiAutomatonCegarLoop]: Abstraction has 38 states and 42 transitions. [2023-11-23 22:30:48,692 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2023-11-23 22:30:48,692 INFO L428 stractBuchiCegarLoop]: Abstraction has 38 states and 42 transitions. [2023-11-23 22:30:48,693 INFO L335 stractBuchiCegarLoop]: ======== Iteration 7 ============ [2023-11-23 22:30:48,693 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 38 states and 42 transitions. [2023-11-23 22:30:48,694 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2023-11-23 22:30:48,694 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-11-23 22:30:48,694 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-11-23 22:30:48,697 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2023-11-23 22:30:48,697 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [21, 21, 18, 18, 18, 4, 4, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1] [2023-11-23 22:30:48,697 INFO L748 eck$LassoCheckResult]: Stem: 2648#$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); 2641#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~mem13#1, main_#t~mem14#1, main_#t~short15#1, main_#t~mem16#1, main_#t~short17#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;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#2(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#3(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#1(6, main_~#c~0#1.base, main_~#c~0#1.offset, 4);call write~int#2(0, main_~#a~0#1.base, main_~#a~0#1.offset, 4); 2627#L86 call func_to_recursive_line_21_to_22_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);< 2628#$Ultimate##0 [2023-11-23 22:30:48,698 INFO L750 eck$LassoCheckResult]: Loop: 2628#$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;call #t~mem10 := read~int#2(~a.base, ~a.offset, 4); 2647#L61 assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~b.base, ~b.offset, 4); 2631#L67 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 2640#$Ultimate##0 ~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~b.base, ~b.offset, 4); 2637#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#1(0, ~c.base, ~c.offset, 4); 2634#L47 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 2633#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 2636#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 2635#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 2633#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 2636#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 2635#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 2633#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 2636#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 2635#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 2633#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 2636#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 2635#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 2633#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 2636#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 2635#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 2633#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 2636#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 2635#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 2633#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 2636#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 2645#L25-1 assume true; 2642#func_to_recursive_line_23_to_23_0EXIT >#62#return; 2643#L25-1 assume true; 2644#func_to_recursive_line_23_to_23_0EXIT >#62#return; 2663#L25-1 assume true; 2662#func_to_recursive_line_23_to_23_0EXIT >#62#return; 2661#L25-1 assume true; 2660#func_to_recursive_line_23_to_23_0EXIT >#62#return; 2659#L25-1 assume true; 2658#func_to_recursive_line_23_to_23_0EXIT >#62#return; 2657#L25-1 assume true; 2656#func_to_recursive_line_23_to_23_0EXIT >#62#return; 2655#L25-1 assume true; 2654#func_to_recursive_line_23_to_23_0EXIT >#64#return; 2639#L47-1 call #t~mem8 := read~int#3(~b.base, ~b.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~b.base, ~b.offset, 4);havoc #t~mem8;havoc #t~pre9; 2630#L52 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 2640#$Ultimate##0 ~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~b.base, ~b.offset, 4); 2637#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#1(0, ~c.base, ~c.offset, 4); 2634#L47 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 2633#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 2636#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 2635#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 2633#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 2636#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 2635#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 2633#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 2636#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 2635#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 2633#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 2636#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 2635#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 2633#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 2636#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 2635#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 2633#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 2636#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 2635#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 2633#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 2636#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 2645#L25-1 assume true; 2642#func_to_recursive_line_23_to_23_0EXIT >#62#return; 2643#L25-1 assume true; 2644#func_to_recursive_line_23_to_23_0EXIT >#62#return; 2663#L25-1 assume true; 2662#func_to_recursive_line_23_to_23_0EXIT >#62#return; 2661#L25-1 assume true; 2660#func_to_recursive_line_23_to_23_0EXIT >#62#return; 2659#L25-1 assume true; 2658#func_to_recursive_line_23_to_23_0EXIT >#62#return; 2657#L25-1 assume true; 2656#func_to_recursive_line_23_to_23_0EXIT >#62#return; 2655#L25-1 assume true; 2654#func_to_recursive_line_23_to_23_0EXIT >#64#return; 2639#L47-1 call #t~mem8 := read~int#3(~b.base, ~b.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~b.base, ~b.offset, 4);havoc #t~mem8;havoc #t~pre9; 2630#L52 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 2640#$Ultimate##0 ~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~b.base, ~b.offset, 4); 2637#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#1(0, ~c.base, ~c.offset, 4); 2634#L47 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 2633#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 2636#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 2635#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 2633#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 2636#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 2635#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 2633#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 2636#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 2635#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 2633#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 2636#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 2635#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 2633#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 2636#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 2635#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 2633#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 2636#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 2635#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 2633#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 2636#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 2645#L25-1 assume true; 2642#func_to_recursive_line_23_to_23_0EXIT >#62#return; 2643#L25-1 assume true; 2644#func_to_recursive_line_23_to_23_0EXIT >#62#return; 2663#L25-1 assume true; 2662#func_to_recursive_line_23_to_23_0EXIT >#62#return; 2661#L25-1 assume true; 2660#func_to_recursive_line_23_to_23_0EXIT >#62#return; 2659#L25-1 assume true; 2658#func_to_recursive_line_23_to_23_0EXIT >#62#return; 2657#L25-1 assume true; 2656#func_to_recursive_line_23_to_23_0EXIT >#62#return; 2655#L25-1 assume true; 2654#func_to_recursive_line_23_to_23_0EXIT >#64#return; 2639#L47-1 call #t~mem8 := read~int#3(~b.base, ~b.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~b.base, ~b.offset, 4);havoc #t~mem8;havoc #t~pre9; 2630#L52 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 2640#$Ultimate##0 ~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~b.base, ~b.offset, 4); 2637#L41 assume !(#t~mem7 < 6);havoc #t~mem7; 2638#L41-1 assume true; 2646#func_to_recursive_line_22_to_23_0EXIT >#66#return; 2629#L41-1 assume true; 2632#func_to_recursive_line_22_to_23_0EXIT >#66#return; 2653#L41-1 assume true; 2652#func_to_recursive_line_22_to_23_0EXIT >#66#return; 2651#L41-1 assume true; 2650#func_to_recursive_line_22_to_23_0EXIT >#70#return; 2649#L67-1 call #t~mem11 := read~int#2(~a.base, ~a.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#2(1 + #t~mem11, ~a.base, ~a.offset, 4);havoc #t~mem11;havoc #t~pre12; 2626#L72 call func_to_recursive_line_21_to_22_0(~a.base, ~a.offset, ~b.base, ~b.offset, ~c.base, ~c.offset);< 2628#$Ultimate##0 [2023-11-23 22:30:48,699 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 22:30:48,699 INFO L85 PathProgramCache]: Analyzing trace with hash 49760, now seen corresponding path program 7 times [2023-11-23 22:30:48,699 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 22:30:48,699 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1763534205] [2023-11-23 22:30:48,699 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 22:30:48,700 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 22:30:48,709 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 22:30:48,709 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-11-23 22:30:48,714 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 22:30:48,717 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-11-23 22:30:48,718 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 22:30:48,718 INFO L85 PathProgramCache]: Analyzing trace with hash -1552670328, now seen corresponding path program 5 times [2023-11-23 22:30:48,719 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 22:30:48,719 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [252114558] [2023-11-23 22:30:48,719 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 22:30:48,719 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 22:30:48,781 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:50,877 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:50,928 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:53,006 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:53,022 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:53,172 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:53,181 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:53,243 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:53,252 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:53,302 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:53,310 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:53,342 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:53,347 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:53,373 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:53,377 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:53,391 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:53,394 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:53,401 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 38 [2023-11-23 22:30:53,436 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:54,523 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:54,558 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:54,660 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:54,672 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:54,759 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:54,769 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:54,821 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:54,827 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:54,859 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:54,863 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:54,884 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:54,890 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:54,918 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:54,920 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:54,927 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 38 [2023-11-23 22:30:54,943 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:55,312 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:55,325 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:55,430 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:55,439 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:55,495 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:55,502 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:55,543 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:55,549 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:55,578 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:55,583 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:55,602 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:55,605 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:55,617 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:30:55,619 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:55,625 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 38 [2023-11-23 22:30:55,629 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:30:55,682 INFO L134 CoverageAnalysis]: Checked inductivity of 1026 backedges. 8 proven. 15 refuted. 0 times theorem prover too weak. 1003 trivial. 0 not checked. [2023-11-23 22:30:55,682 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-11-23 22:30:55,682 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [252114558] [2023-11-23 22:30:55,682 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [252114558] provided 0 perfect and 1 imperfect interpolant sequences [2023-11-23 22:30:55,683 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2042881817] [2023-11-23 22:30:55,683 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2023-11-23 22:30:55,683 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2023-11-23 22:30:55,683 INFO L189 MonitoredProcess]: No working directory specified, using /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e326d073-cb5e-4cd3-9dec-96ba03232eb6/bin/uautomizer-verify-zZY32mL2XJ/z3 [2023-11-23 22:30:55,685 INFO L229 MonitoredProcess]: Starting monitored process 6 with /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e326d073-cb5e-4cd3-9dec-96ba03232eb6/bin/uautomizer-verify-zZY32mL2XJ/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2023-11-23 22:30:55,697 INFO L327 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e326d073-cb5e-4cd3-9dec-96ba03232eb6/bin/uautomizer-verify-zZY32mL2XJ/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2023-11-23 22:30:56,492 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 10 check-sat command(s) [2023-11-23 22:30:56,492 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2023-11-23 22:30:56,501 INFO L262 TraceCheckSpWp]: Trace formula consists of 906 conjuncts, 95 conjunts are in the unsatisfiable core [2023-11-23 22:30:56,533 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-11-23 22:30:56,541 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 22:30:57,122 INFO L134 CoverageAnalysis]: Checked inductivity of 1026 backedges. 0 proven. 15 refuted. 0 times theorem prover too weak. 1011 trivial. 0 not checked. [2023-11-23 22:30:57,122 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2023-11-23 22:30:58,932 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2042881817] provided 0 perfect and 1 imperfect interpolant sequences [2023-11-23 22:30:58,933 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2023-11-23 22:30:58,933 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 11] total 24 [2023-11-23 22:30:58,933 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1455515963] [2023-11-23 22:30:58,934 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2023-11-23 22:30:58,934 INFO L765 eck$LassoCheckResult]: loop already infeasible [2023-11-23 22:30:58,935 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-11-23 22:30:58,935 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 24 interpolants. [2023-11-23 22:30:58,936 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=198, Invalid=858, Unknown=0, NotChecked=0, Total=1056 [2023-11-23 22:30:58,936 INFO L87 Difference]: Start difference. First operand 38 states and 42 transitions. cyclomatic complexity: 7 Second operand has 24 states, 19 states have (on average 1.5263157894736843) internal successors, (29), 21 states have internal predecessors, (29), 8 states have call successors, (11), 3 states have call predecessors, (11), 9 states have return successors, (12), 11 states have call predecessors, (12), 7 states have call successors, (12) [2023-11-23 22:30:59,316 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-11-23 22:30:59,316 INFO L93 Difference]: Finished difference Result 42 states and 46 transitions. [2023-11-23 22:30:59,316 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 42 states and 46 transitions. [2023-11-23 22:30:59,317 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2023-11-23 22:30:59,318 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 42 states to 42 states and 46 transitions. [2023-11-23 22:30:59,319 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 42 [2023-11-23 22:30:59,319 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 42 [2023-11-23 22:30:59,319 INFO L73 IsDeterministic]: Start isDeterministic. Operand 42 states and 46 transitions. [2023-11-23 22:30:59,320 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2023-11-23 22:30:59,320 INFO L218 hiAutomatonCegarLoop]: Abstraction has 42 states and 46 transitions. [2023-11-23 22:30:59,320 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 42 states and 46 transitions. [2023-11-23 22:30:59,324 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 42 to 42. [2023-11-23 22:30:59,324 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 42 states, 23 states have (on average 1.0869565217391304) internal successors, (25), 25 states have internal predecessors, (25), 6 states have call successors, (6), 3 states have call predecessors, (6), 13 states have return successors, (15), 13 states have call predecessors, (15), 4 states have call successors, (15) [2023-11-23 22:30:59,326 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 42 states to 42 states and 46 transitions. [2023-11-23 22:30:59,326 INFO L240 hiAutomatonCegarLoop]: Abstraction has 42 states and 46 transitions. [2023-11-23 22:30:59,327 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2023-11-23 22:30:59,328 INFO L428 stractBuchiCegarLoop]: Abstraction has 42 states and 46 transitions. [2023-11-23 22:30:59,329 INFO L335 stractBuchiCegarLoop]: ======== Iteration 8 ============ [2023-11-23 22:30:59,329 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 42 states and 46 transitions. [2023-11-23 22:30:59,329 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2023-11-23 22:30:59,330 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2023-11-23 22:30:59,330 INFO L119 BuchiIsEmpty]: Starting construction of run [2023-11-23 22:30:59,334 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2023-11-23 22:30:59,334 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [35, 35, 30, 30, 30, 6, 6, 5, 5, 5, 5, 5, 5, 5, 1, 1, 1, 1, 1, 1, 1] [2023-11-23 22:30:59,334 INFO L748 eck$LassoCheckResult]: Stem: 3892#$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); 3888#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~mem13#1, main_#t~mem14#1, main_#t~short15#1, main_#t~mem16#1, main_#t~short17#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;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#2(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#3(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#1(6, main_~#c~0#1.base, main_~#c~0#1.offset, 4);call write~int#2(0, main_~#a~0#1.base, main_~#a~0#1.offset, 4); 3872#L86 call func_to_recursive_line_21_to_22_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);< 3873#$Ultimate##0 [2023-11-23 22:30:59,335 INFO L750 eck$LassoCheckResult]: Loop: 3873#$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;call #t~mem10 := read~int#2(~a.base, ~a.offset, 4); 3891#L61 assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~b.base, ~b.offset, 4); 3875#L67 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 3885#$Ultimate##0 ~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~b.base, ~b.offset, 4); 3883#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#1(0, ~c.base, ~c.offset, 4); 3879#L47 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3880#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3880#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3880#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3880#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3880#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3880#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 3889#L25-1 assume true; 3886#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3887#L25-1 assume true; 3912#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3911#L25-1 assume true; 3910#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3909#L25-1 assume true; 3908#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3907#L25-1 assume true; 3905#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3904#L25-1 assume true; 3902#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3900#L25-1 assume true; 3899#func_to_recursive_line_23_to_23_0EXIT >#64#return; 3882#L47-1 call #t~mem8 := read~int#3(~b.base, ~b.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~b.base, ~b.offset, 4);havoc #t~mem8;havoc #t~pre9; 3876#L52 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 3885#$Ultimate##0 ~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~b.base, ~b.offset, 4); 3883#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#1(0, ~c.base, ~c.offset, 4); 3879#L47 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3880#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3880#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3880#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3880#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3880#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3880#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 3889#L25-1 assume true; 3886#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3887#L25-1 assume true; 3912#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3911#L25-1 assume true; 3910#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3909#L25-1 assume true; 3908#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3907#L25-1 assume true; 3905#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3904#L25-1 assume true; 3902#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3900#L25-1 assume true; 3899#func_to_recursive_line_23_to_23_0EXIT >#64#return; 3882#L47-1 call #t~mem8 := read~int#3(~b.base, ~b.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~b.base, ~b.offset, 4);havoc #t~mem8;havoc #t~pre9; 3876#L52 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 3885#$Ultimate##0 ~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~b.base, ~b.offset, 4); 3883#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#1(0, ~c.base, ~c.offset, 4); 3879#L47 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3880#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3880#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3880#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3880#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3880#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3880#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 3889#L25-1 assume true; 3886#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3887#L25-1 assume true; 3912#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3911#L25-1 assume true; 3910#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3909#L25-1 assume true; 3908#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3907#L25-1 assume true; 3905#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3904#L25-1 assume true; 3902#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3900#L25-1 assume true; 3899#func_to_recursive_line_23_to_23_0EXIT >#64#return; 3882#L47-1 call #t~mem8 := read~int#3(~b.base, ~b.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~b.base, ~b.offset, 4);havoc #t~mem8;havoc #t~pre9; 3876#L52 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 3885#$Ultimate##0 ~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~b.base, ~b.offset, 4); 3883#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#1(0, ~c.base, ~c.offset, 4); 3879#L47 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3880#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3880#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3880#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3880#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3880#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3880#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 3889#L25-1 assume true; 3886#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3887#L25-1 assume true; 3912#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3911#L25-1 assume true; 3910#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3909#L25-1 assume true; 3908#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3907#L25-1 assume true; 3905#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3904#L25-1 assume true; 3902#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3900#L25-1 assume true; 3899#func_to_recursive_line_23_to_23_0EXIT >#64#return; 3882#L47-1 call #t~mem8 := read~int#3(~b.base, ~b.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~b.base, ~b.offset, 4);havoc #t~mem8;havoc #t~pre9; 3876#L52 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 3885#$Ultimate##0 ~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~b.base, ~b.offset, 4); 3883#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#1(0, ~c.base, ~c.offset, 4); 3879#L47 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3880#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3880#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3880#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3880#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3880#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#1(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#1(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3880#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3878#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#1(~c.base, ~c.offset, 4); 3881#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 3889#L25-1 assume true; 3886#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3887#L25-1 assume true; 3912#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3911#L25-1 assume true; 3910#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3909#L25-1 assume true; 3908#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3907#L25-1 assume true; 3905#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3904#L25-1 assume true; 3902#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3900#L25-1 assume true; 3899#func_to_recursive_line_23_to_23_0EXIT >#64#return; 3882#L47-1 call #t~mem8 := read~int#3(~b.base, ~b.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~b.base, ~b.offset, 4);havoc #t~mem8;havoc #t~pre9; 3876#L52 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 3885#$Ultimate##0 ~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~b.base, ~b.offset, 4); 3883#L41 assume !(#t~mem7 < 6);havoc #t~mem7; 3884#L41-1 assume true; 3890#func_to_recursive_line_22_to_23_0EXIT >#66#return; 3874#L41-1 assume true; 3877#func_to_recursive_line_22_to_23_0EXIT >#66#return; 3906#L41-1 assume true; 3903#func_to_recursive_line_22_to_23_0EXIT >#66#return; 3901#L41-1 assume true; 3898#func_to_recursive_line_22_to_23_0EXIT >#66#return; 3897#L41-1 assume true; 3896#func_to_recursive_line_22_to_23_0EXIT >#66#return; 3895#L41-1 assume true; 3894#func_to_recursive_line_22_to_23_0EXIT >#70#return; 3893#L67-1 call #t~mem11 := read~int#2(~a.base, ~a.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#2(1 + #t~mem11, ~a.base, ~a.offset, 4);havoc #t~mem11;havoc #t~pre12; 3871#L72 call func_to_recursive_line_21_to_22_0(~a.base, ~a.offset, ~b.base, ~b.offset, ~c.base, ~c.offset);< 3873#$Ultimate##0 [2023-11-23 22:30:59,336 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 22:30:59,336 INFO L85 PathProgramCache]: Analyzing trace with hash 49760, now seen corresponding path program 8 times [2023-11-23 22:30:59,336 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 22:30:59,336 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1985301745] [2023-11-23 22:30:59,337 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 22:30:59,337 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 22:30:59,364 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 22:30:59,364 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-11-23 22:30:59,369 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-23 22:30:59,373 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-11-23 22:30:59,374 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-23 22:30:59,374 INFO L85 PathProgramCache]: Analyzing trace with hash 1937132614, now seen corresponding path program 6 times [2023-11-23 22:30:59,374 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-11-23 22:30:59,374 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [833929833] [2023-11-23 22:30:59,375 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-11-23 22:30:59,375 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-23 22:30:59,489 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-23 22:31:04,322 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2023-11-23 22:31:04,403 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat