./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 4fc63b2a 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_4d782269-8021-4f52-af8d-027884f09168/bin/uautomizer-verify-4GaUIPS5ZU/data/config -Xmx15G -Xms4m -jar /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_4d782269-8021-4f52-af8d-027884f09168/bin/uautomizer-verify-4GaUIPS5ZU/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_4d782269-8021-4f52-af8d-027884f09168/bin/uautomizer-verify-4GaUIPS5ZU/data -tc /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_4d782269-8021-4f52-af8d-027884f09168/bin/uautomizer-verify-4GaUIPS5ZU/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_4d782269-8021-4f52-af8d-027884f09168/bin/uautomizer-verify-4GaUIPS5ZU/config/svcomp-Termination-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_4d782269-8021-4f52-af8d-027884f09168/bin/uautomizer-verify-4GaUIPS5ZU --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.5-dev-4fc63b2 [2024-10-31 21:57:23,195 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-10-31 21:57:23,290 INFO L114 SettingsManager]: Loading settings from /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_4d782269-8021-4f52-af8d-027884f09168/bin/uautomizer-verify-4GaUIPS5ZU/config/svcomp-Termination-32bit-Automizer_Default.epf [2024-10-31 21:57:23,297 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-10-31 21:57:23,298 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-10-31 21:57:23,340 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-10-31 21:57:23,343 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-10-31 21:57:23,344 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-10-31 21:57:23,345 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-10-31 21:57:23,346 INFO L153 SettingsManager]: * Use memory slicer=true [2024-10-31 21:57:23,347 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-10-31 21:57:23,347 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-10-31 21:57:23,348 INFO L153 SettingsManager]: * Use SBE=true [2024-10-31 21:57:23,350 INFO L151 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2024-10-31 21:57:23,351 INFO L153 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2024-10-31 21:57:23,351 INFO L153 SettingsManager]: * Use old map elimination=false [2024-10-31 21:57:23,352 INFO L153 SettingsManager]: * Use external solver (rank synthesis)=false [2024-10-31 21:57:23,352 INFO L153 SettingsManager]: * Use only trivial implications for array writes=true [2024-10-31 21:57:23,353 INFO L153 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2024-10-31 21:57:23,353 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-10-31 21:57:23,354 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2024-10-31 21:57:23,354 INFO L153 SettingsManager]: * sizeof long=4 [2024-10-31 21:57:23,355 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-10-31 21:57:23,355 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-10-31 21:57:23,355 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-10-31 21:57:23,356 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2024-10-31 21:57:23,356 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2024-10-31 21:57:23,357 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2024-10-31 21:57:23,357 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-10-31 21:57:23,357 INFO L153 SettingsManager]: * Check unreachability of reach_error function=false [2024-10-31 21:57:23,358 INFO L153 SettingsManager]: * sizeof long double=12 [2024-10-31 21:57:23,358 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-10-31 21:57:23,359 INFO L153 SettingsManager]: * Assume nondeterminstic values are in range=false [2024-10-31 21:57:23,359 INFO L153 SettingsManager]: * Use constant arrays=true [2024-10-31 21:57:23,359 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-10-31 21:57:23,360 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-10-31 21:57:23,360 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-10-31 21:57:23,361 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-10-31 21:57:23,361 INFO L151 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2024-10-31 21:57:23,362 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_4d782269-8021-4f52-af8d-027884f09168/bin/uautomizer-verify-4GaUIPS5ZU/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_4d782269-8021-4f52-af8d-027884f09168/bin/uautomizer-verify-4GaUIPS5ZU 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 [2024-10-31 21:57:23,650 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-10-31 21:57:23,676 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-10-31 21:57:23,679 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-10-31 21:57:23,681 INFO L270 PluginConnector]: Initializing CDTParser... [2024-10-31 21:57:23,681 INFO L274 PluginConnector]: CDTParser initialized [2024-10-31 21:57:23,683 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_4d782269-8021-4f52-af8d-027884f09168/bin/uautomizer-verify-4GaUIPS5ZU/../../sv-benchmarks/c/recursified_loop-simple/recursified_nested_3.c Unable to find full path for "g++" [2024-10-31 21:57:25,837 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-10-31 21:57:26,041 INFO L384 CDTParser]: Found 1 translation units. [2024-10-31 21:57:26,041 INFO L180 CDTParser]: Scanning /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_4d782269-8021-4f52-af8d-027884f09168/sv-benchmarks/c/recursified_loop-simple/recursified_nested_3.c [2024-10-31 21:57:26,048 INFO L427 CDTParser]: About to delete temporary CDT project at /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_4d782269-8021-4f52-af8d-027884f09168/bin/uautomizer-verify-4GaUIPS5ZU/data/5ccb4d718/ee0b5a1b8d4f4f0e9f5fcff4e2770f66/FLAG3c9d9e66a [2024-10-31 21:57:26,430 INFO L435 CDTParser]: Successfully deleted /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_4d782269-8021-4f52-af8d-027884f09168/bin/uautomizer-verify-4GaUIPS5ZU/data/5ccb4d718/ee0b5a1b8d4f4f0e9f5fcff4e2770f66 [2024-10-31 21:57:26,432 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-10-31 21:57:26,433 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2024-10-31 21:57:26,435 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-10-31 21:57:26,435 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-10-31 21:57:26,440 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-10-31 21:57:26,441 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 31.10 09:57:26" (1/1) ... [2024-10-31 21:57:26,442 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@513f861e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 31.10 09:57:26, skipping insertion in model container [2024-10-31 21:57:26,442 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 31.10 09:57:26" (1/1) ... [2024-10-31 21:57:26,465 INFO L175 MainTranslator]: Built tables and reachable declarations [2024-10-31 21:57:26,732 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-10-31 21:57:26,746 INFO L200 MainTranslator]: Completed pre-run [2024-10-31 21:57:26,770 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-10-31 21:57:26,789 INFO L204 MainTranslator]: Completed translation [2024-10-31 21:57:26,789 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 31.10 09:57:26 WrapperNode [2024-10-31 21:57:26,790 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-10-31 21:57:26,791 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-10-31 21:57:26,791 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-10-31 21:57:26,791 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-10-31 21:57:26,798 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 31.10 09:57:26" (1/1) ... [2024-10-31 21:57:26,804 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 31.10 09:57:26" (1/1) ... [2024-10-31 21:57:26,819 INFO L138 Inliner]: procedures = 14, calls = 41, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 53 [2024-10-31 21:57:26,819 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-10-31 21:57:26,820 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-10-31 21:57:26,820 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-10-31 21:57:26,820 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-10-31 21:57:26,830 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 31.10 09:57:26" (1/1) ... [2024-10-31 21:57:26,830 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 31.10 09:57:26" (1/1) ... [2024-10-31 21:57:26,833 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 31.10 09:57:26" (1/1) ... [2024-10-31 21:57:26,850 INFO L175 MemorySlicer]: Split 20 memory accesses to 4 slices as follows [6, 2, 6, 6]. 30 percent of accesses are in the largest equivalence class. The 5 initializations are split as follows [1, 2, 1, 1]. The 6 writes are split as follows [2, 0, 2, 2]. [2024-10-31 21:57:26,850 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 31.10 09:57:26" (1/1) ... [2024-10-31 21:57:26,850 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 31.10 09:57:26" (1/1) ... [2024-10-31 21:57:26,857 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 31.10 09:57:26" (1/1) ... [2024-10-31 21:57:26,860 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 31.10 09:57:26" (1/1) ... [2024-10-31 21:57:26,861 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 31.10 09:57:26" (1/1) ... [2024-10-31 21:57:26,862 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 31.10 09:57:26" (1/1) ... [2024-10-31 21:57:26,865 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-10-31 21:57:26,866 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-10-31 21:57:26,866 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-10-31 21:57:26,866 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-10-31 21:57:26,867 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 31.10 09:57:26" (1/1) ... [2024-10-31 21:57:26,873 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-10-31 21:57:26,885 INFO L189 MonitoredProcess]: No working directory specified, using /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_4d782269-8021-4f52-af8d-027884f09168/bin/uautomizer-verify-4GaUIPS5ZU/z3 [2024-10-31 21:57:26,898 INFO L229 MonitoredProcess]: Starting monitored process 1 with /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_4d782269-8021-4f52-af8d-027884f09168/bin/uautomizer-verify-4GaUIPS5ZU/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-10-31 21:57:26,901 INFO L327 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_4d782269-8021-4f52-af8d-027884f09168/bin/uautomizer-verify-4GaUIPS5ZU/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Waiting until timeout for monitored process [2024-10-31 21:57:26,926 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-10-31 21:57:26,926 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-10-31 21:57:26,927 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2024-10-31 21:57:26,927 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#2 [2024-10-31 21:57:26,927 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#3 [2024-10-31 21:57:26,927 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2024-10-31 21:57:26,927 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2024-10-31 21:57:26,928 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2024-10-31 21:57:26,928 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#2 [2024-10-31 21:57:26,928 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#3 [2024-10-31 21:57:26,929 INFO L130 BoogieDeclarations]: Found specification of procedure func_to_recursive_line_23_to_23_0 [2024-10-31 21:57:26,929 INFO L138 BoogieDeclarations]: Found implementation of procedure func_to_recursive_line_23_to_23_0 [2024-10-31 21:57:26,929 INFO L130 BoogieDeclarations]: Found specification of procedure func_to_recursive_line_22_to_23_0 [2024-10-31 21:57:26,929 INFO L138 BoogieDeclarations]: Found implementation of procedure func_to_recursive_line_22_to_23_0 [2024-10-31 21:57:26,931 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-10-31 21:57:26,931 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-10-31 21:57:26,931 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2024-10-31 21:57:26,931 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#1 [2024-10-31 21:57:26,932 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#2 [2024-10-31 21:57:26,932 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#3 [2024-10-31 21:57:26,932 INFO L130 BoogieDeclarations]: Found specification of procedure func_to_recursive_line_21_to_22_0 [2024-10-31 21:57:26,932 INFO L138 BoogieDeclarations]: Found implementation of procedure func_to_recursive_line_21_to_22_0 [2024-10-31 21:57:26,932 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2024-10-31 21:57:27,024 INFO L238 CfgBuilder]: Building ICFG [2024-10-31 21:57:27,026 INFO L264 CfgBuilder]: Building CFG for each procedure with an implementation [2024-10-31 21:57:27,370 INFO L? ?]: Removed 9 outVars from TransFormulas that were not future-live. [2024-10-31 21:57:27,370 INFO L287 CfgBuilder]: Performing block encoding [2024-10-31 21:57:27,385 INFO L311 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-10-31 21:57:27,386 INFO L316 CfgBuilder]: Removed 0 assume(true) statements. [2024-10-31 21:57:27,386 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 31.10 09:57:27 BoogieIcfgContainer [2024-10-31 21:57:27,386 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-10-31 21:57:27,387 INFO L112 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2024-10-31 21:57:27,388 INFO L270 PluginConnector]: Initializing BuchiAutomizer... [2024-10-31 21:57:27,391 INFO L274 PluginConnector]: BuchiAutomizer initialized [2024-10-31 21:57:27,392 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-10-31 21:57:27,392 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 31.10 09:57:26" (1/3) ... [2024-10-31 21:57:27,393 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@10ffb100 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 31.10 09:57:27, skipping insertion in model container [2024-10-31 21:57:27,394 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-10-31 21:57:27,394 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 31.10 09:57:26" (2/3) ... [2024-10-31 21:57:27,394 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@10ffb100 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 31.10 09:57:27, skipping insertion in model container [2024-10-31 21:57:27,394 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-10-31 21:57:27,395 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 31.10 09:57:27" (3/3) ... [2024-10-31 21:57:27,396 INFO L332 chiAutomizerObserver]: Analyzing ICFG recursified_nested_3.c [2024-10-31 21:57:27,461 INFO L300 stractBuchiCegarLoop]: Interprodecural is true [2024-10-31 21:57:27,461 INFO L301 stractBuchiCegarLoop]: Hoare is None [2024-10-31 21:57:27,461 INFO L302 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2024-10-31 21:57:27,461 INFO L303 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2024-10-31 21:57:27,461 INFO L304 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2024-10-31 21:57:27,461 INFO L305 stractBuchiCegarLoop]: Difference is false [2024-10-31 21:57:27,461 INFO L306 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2024-10-31 21:57:27,462 INFO L310 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2024-10-31 21:57:27,465 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) [2024-10-31 21:57:27,488 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2024-10-31 21:57:27,488 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-31 21:57:27,488 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-31 21:57:27,495 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2024-10-31 21:57:27,496 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-31 21:57:27,496 INFO L332 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2024-10-31 21:57:27,496 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) [2024-10-31 21:57:27,514 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2024-10-31 21:57:27,515 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-31 21:57:27,515 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-31 21:57:27,517 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2024-10-31 21:57:27,517 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-31 21:57:27,525 INFO L745 eck$LassoCheckResult]: Stem: 30#$Ultimate##0true assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#1(48, 1, 0, 1);call write~init~int#1(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#0(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#3(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 [2024-10-31 21:57:27,525 INFO L747 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#0(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#0(~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 [2024-10-31 21:57:27,531 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-31 21:57:27,532 INFO L85 PathProgramCache]: Analyzing trace with hash 49760, now seen corresponding path program 1 times [2024-10-31 21:57:27,544 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-31 21:57:27,545 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [27369368] [2024-10-31 21:57:27,545 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-31 21:57:27,546 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-31 21:57:27,710 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-31 21:57:27,711 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-31 21:57:27,732 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-31 21:57:27,755 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-31 21:57:27,759 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-31 21:57:27,759 INFO L85 PathProgramCache]: Analyzing trace with hash -1113047060, now seen corresponding path program 1 times [2024-10-31 21:57:27,760 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-31 21:57:27,760 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2127659378] [2024-10-31 21:57:27,761 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-31 21:57:27,761 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-31 21:57:27,797 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:28,168 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:28,180 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:28,329 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-31 21:57:28,330 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-31 21:57:28,331 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2127659378] [2024-10-31 21:57:28,331 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2127659378] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-31 21:57:28,332 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-31 21:57:28,332 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2024-10-31 21:57:28,333 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [517560514] [2024-10-31 21:57:28,334 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-31 21:57:28,339 INFO L762 eck$LassoCheckResult]: loop already infeasible [2024-10-31 21:57:28,340 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-31 21:57:28,385 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2024-10-31 21:57:28,386 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2024-10-31 21:57:28,388 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) [2024-10-31 21:57:28,598 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-31 21:57:28,598 INFO L93 Difference]: Finished difference Result 37 states and 46 transitions. [2024-10-31 21:57:28,600 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 37 states and 46 transitions. [2024-10-31 21:57:28,603 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2024-10-31 21:57:28,620 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 37 states to 24 states and 29 transitions. [2024-10-31 21:57:28,626 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 24 [2024-10-31 21:57:28,627 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 24 [2024-10-31 21:57:28,627 INFO L73 IsDeterministic]: Start isDeterministic. Operand 24 states and 29 transitions. [2024-10-31 21:57:28,629 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2024-10-31 21:57:28,629 INFO L218 hiAutomatonCegarLoop]: Abstraction has 24 states and 29 transitions. [2024-10-31 21:57:28,661 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 24 states and 29 transitions. [2024-10-31 21:57:28,690 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 24 to 22. [2024-10-31 21:57:28,690 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) [2024-10-31 21:57:28,691 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 26 transitions. [2024-10-31 21:57:28,694 INFO L240 hiAutomatonCegarLoop]: Abstraction has 22 states and 26 transitions. [2024-10-31 21:57:28,699 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-10-31 21:57:28,708 INFO L425 stractBuchiCegarLoop]: Abstraction has 22 states and 26 transitions. [2024-10-31 21:57:28,708 INFO L332 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2024-10-31 21:57:28,709 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 22 states and 26 transitions. [2024-10-31 21:57:28,715 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2024-10-31 21:57:28,715 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-31 21:57:28,715 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-31 21:57:28,716 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2024-10-31 21:57:28,716 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-31 21:57:28,718 INFO L745 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#1(48, 1, 0, 1);call write~init~int#1(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#0(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#3(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 [2024-10-31 21:57:28,719 INFO L747 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#0(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#0(~b.base, ~b.offset, 4); 101#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#3(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#3(~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#0(~b.base, ~b.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#0(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#0(~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 [2024-10-31 21:57:28,720 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-31 21:57:28,721 INFO L85 PathProgramCache]: Analyzing trace with hash 49760, now seen corresponding path program 2 times [2024-10-31 21:57:28,722 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-31 21:57:28,722 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1881061905] [2024-10-31 21:57:28,725 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-31 21:57:28,726 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-31 21:57:28,767 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-31 21:57:28,770 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-31 21:57:28,788 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-31 21:57:28,796 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-31 21:57:28,800 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-31 21:57:28,800 INFO L85 PathProgramCache]: Analyzing trace with hash -1122494970, now seen corresponding path program 1 times [2024-10-31 21:57:28,801 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-31 21:57:28,801 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1580010539] [2024-10-31 21:57:28,801 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-31 21:57:28,801 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-31 21:57:28,829 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:29,006 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:29,016 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:29,271 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:29,279 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:29,373 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 8 [2024-10-31 21:57:29,377 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:29,384 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2024-10-31 21:57:29,385 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-31 21:57:29,385 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1580010539] [2024-10-31 21:57:29,385 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1580010539] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-31 21:57:29,386 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-31 21:57:29,387 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2024-10-31 21:57:29,387 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [561237215] [2024-10-31 21:57:29,387 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-31 21:57:29,389 INFO L762 eck$LassoCheckResult]: loop already infeasible [2024-10-31 21:57:29,389 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-31 21:57:29,390 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2024-10-31 21:57:29,391 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=30, Unknown=0, NotChecked=0, Total=42 [2024-10-31 21:57:29,392 INFO L87 Difference]: Start difference. First operand 22 states and 26 transitions. cyclomatic complexity: 7 Second operand has 7 states, 6 states have (on average 2.0) internal successors, (12), 5 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (3), 1 states have call predecessors, (3), 3 states have call successors, (3) [2024-10-31 21:57:29,555 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-31 21:57:29,556 INFO L93 Difference]: Finished difference Result 24 states and 28 transitions. [2024-10-31 21:57:29,556 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 24 states and 28 transitions. [2024-10-31 21:57:29,558 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2024-10-31 21:57:29,561 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 24 states to 24 states and 28 transitions. [2024-10-31 21:57:29,562 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 24 [2024-10-31 21:57:29,563 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 24 [2024-10-31 21:57:29,563 INFO L73 IsDeterministic]: Start isDeterministic. Operand 24 states and 28 transitions. [2024-10-31 21:57:29,564 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2024-10-31 21:57:29,565 INFO L218 hiAutomatonCegarLoop]: Abstraction has 24 states and 28 transitions. [2024-10-31 21:57:29,566 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 24 states and 28 transitions. [2024-10-31 21:57:29,569 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 24 to 24. [2024-10-31 21:57:29,569 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) [2024-10-31 21:57:29,570 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 28 transitions. [2024-10-31 21:57:29,573 INFO L240 hiAutomatonCegarLoop]: Abstraction has 24 states and 28 transitions. [2024-10-31 21:57:29,574 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2024-10-31 21:57:29,575 INFO L425 stractBuchiCegarLoop]: Abstraction has 24 states and 28 transitions. [2024-10-31 21:57:29,575 INFO L332 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2024-10-31 21:57:29,575 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 24 states and 28 transitions. [2024-10-31 21:57:29,576 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2024-10-31 21:57:29,576 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-31 21:57:29,576 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-31 21:57:29,577 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2024-10-31 21:57:29,577 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] [2024-10-31 21:57:29,579 INFO L745 eck$LassoCheckResult]: Stem: 192#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#1(48, 1, 0, 1);call write~init~int#1(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); 188#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#0(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#3(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); 173#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);< 174#$Ultimate##0 [2024-10-31 21:57:29,579 INFO L747 eck$LassoCheckResult]: Loop: 174#$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); 191#L61 assume #t~mem10 < 6;havoc #t~mem10;call write~int#0(0, ~b.base, ~b.offset, 4); 176#L67 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 185#$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#0(~b.base, ~b.offset, 4); 184#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#3(0, ~c.base, ~c.offset, 4); 180#L47 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 179#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 182#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 181#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 179#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 182#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 189#L25-1 assume true; 186#func_to_recursive_line_23_to_23_0EXIT >#62#return; 187#L25-1 assume true; 195#func_to_recursive_line_23_to_23_0EXIT >#64#return; 183#L47-1 call #t~mem8 := read~int#0(~b.base, ~b.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#0(1 + #t~mem8, ~b.base, ~b.offset, 4);havoc #t~mem8;havoc #t~pre9; 177#L52 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 185#$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#0(~b.base, ~b.offset, 4); 184#L41 assume !(#t~mem7 < 6);havoc #t~mem7; 175#L41-1 assume true; 178#func_to_recursive_line_22_to_23_0EXIT >#66#return; 190#L41-1 assume true; 194#func_to_recursive_line_22_to_23_0EXIT >#70#return; 193#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; 172#L72 call func_to_recursive_line_21_to_22_0(~a.base, ~a.offset, ~b.base, ~b.offset, ~c.base, ~c.offset);< 174#$Ultimate##0 [2024-10-31 21:57:29,580 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-31 21:57:29,581 INFO L85 PathProgramCache]: Analyzing trace with hash 49760, now seen corresponding path program 3 times [2024-10-31 21:57:29,581 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-31 21:57:29,581 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1400279846] [2024-10-31 21:57:29,581 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-31 21:57:29,582 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-31 21:57:29,602 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-31 21:57:29,603 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-31 21:57:29,613 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-31 21:57:29,617 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-31 21:57:29,619 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-31 21:57:29,619 INFO L85 PathProgramCache]: Analyzing trace with hash -1944809856, now seen corresponding path program 1 times [2024-10-31 21:57:29,619 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-31 21:57:29,619 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1119942453] [2024-10-31 21:57:29,620 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-31 21:57:29,620 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-31 21:57:29,646 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:29,954 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:29,972 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:30,221 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:30,229 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:30,429 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:30,433 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:30,515 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 13 [2024-10-31 21:57:30,518 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:30,521 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 2 proven. 3 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2024-10-31 21:57:30,521 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-31 21:57:30,522 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1119942453] [2024-10-31 21:57:30,522 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1119942453] provided 0 perfect and 1 imperfect interpolant sequences [2024-10-31 21:57:30,522 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [552904688] [2024-10-31 21:57:30,522 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-31 21:57:30,523 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-10-31 21:57:30,523 INFO L189 MonitoredProcess]: No working directory specified, using /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_4d782269-8021-4f52-af8d-027884f09168/bin/uautomizer-verify-4GaUIPS5ZU/z3 [2024-10-31 21:57:30,526 INFO L229 MonitoredProcess]: Starting monitored process 2 with /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_4d782269-8021-4f52-af8d-027884f09168/bin/uautomizer-verify-4GaUIPS5ZU/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-10-31 21:57:30,529 INFO L327 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_4d782269-8021-4f52-af8d-027884f09168/bin/uautomizer-verify-4GaUIPS5ZU/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2024-10-31 21:57:30,634 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:30,638 INFO L255 TraceCheckSpWp]: Trace formula consists of 175 conjuncts, 28 conjuncts are in the unsatisfiable core [2024-10-31 21:57:30,642 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-10-31 21:57:30,724 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 1 [2024-10-31 21:57:31,153 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2024-10-31 21:57:31,153 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-10-31 21:57:31,871 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2024-10-31 21:57:31,872 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [552904688] provided 0 perfect and 2 imperfect interpolant sequences [2024-10-31 21:57:31,872 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-10-31 21:57:31,872 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 9, 10] total 25 [2024-10-31 21:57:31,873 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [373323668] [2024-10-31 21:57:31,874 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-10-31 21:57:31,874 INFO L762 eck$LassoCheckResult]: loop already infeasible [2024-10-31 21:57:31,875 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-31 21:57:31,875 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2024-10-31 21:57:31,877 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=90, Invalid=510, Unknown=0, NotChecked=0, Total=600 [2024-10-31 21:57:31,879 INFO L87 Difference]: Start difference. First operand 24 states and 28 transitions. cyclomatic complexity: 7 Second operand has 25 states, 19 states have (on average 1.8421052631578947) internal successors, (35), 20 states have internal predecessors, (35), 10 states have call successors, (12), 7 states have call predecessors, (12), 8 states have return successors, (11), 7 states have call predecessors, (11), 10 states have call successors, (11) [2024-10-31 21:57:32,474 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-31 21:57:32,475 INFO L93 Difference]: Finished difference Result 28 states and 32 transitions. [2024-10-31 21:57:32,475 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 28 states and 32 transitions. [2024-10-31 21:57:32,476 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2024-10-31 21:57:32,477 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 28 states to 28 states and 32 transitions. [2024-10-31 21:57:32,477 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 28 [2024-10-31 21:57:32,478 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 28 [2024-10-31 21:57:32,478 INFO L73 IsDeterministic]: Start isDeterministic. Operand 28 states and 32 transitions. [2024-10-31 21:57:32,478 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2024-10-31 21:57:32,480 INFO L218 hiAutomatonCegarLoop]: Abstraction has 28 states and 32 transitions. [2024-10-31 21:57:32,481 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 28 states and 32 transitions. [2024-10-31 21:57:32,485 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 28 to 28. [2024-10-31 21:57:32,486 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) [2024-10-31 21:57:32,488 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 32 transitions. [2024-10-31 21:57:32,488 INFO L240 hiAutomatonCegarLoop]: Abstraction has 28 states and 32 transitions. [2024-10-31 21:57:32,489 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2024-10-31 21:57:32,490 INFO L425 stractBuchiCegarLoop]: Abstraction has 28 states and 32 transitions. [2024-10-31 21:57:32,490 INFO L332 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2024-10-31 21:57:32,490 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 28 states and 32 transitions. [2024-10-31 21:57:32,491 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2024-10-31 21:57:32,492 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-31 21:57:32,492 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-31 21:57:32,493 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2024-10-31 21:57:32,493 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [6, 6, 4, 4, 4, 3, 3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1] [2024-10-31 21:57:32,494 INFO L745 eck$LassoCheckResult]: Stem: 472#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#1(48, 1, 0, 1);call write~init~int#1(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); 466#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#0(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#3(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); 453#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);< 454#$Ultimate##0 [2024-10-31 21:57:32,494 INFO L747 eck$LassoCheckResult]: Loop: 454#$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); 471#L61 assume #t~mem10 < 6;havoc #t~mem10;call write~int#0(0, ~b.base, ~b.offset, 4); 456#L67 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 465#$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#0(~b.base, ~b.offset, 4); 463#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#3(0, ~c.base, ~c.offset, 4); 460#L47 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 459#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 462#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 461#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 459#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 462#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 461#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 459#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 462#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 469#L25-1 assume true; 467#func_to_recursive_line_23_to_23_0EXIT >#62#return; 468#L25-1 assume true; 479#func_to_recursive_line_23_to_23_0EXIT >#62#return; 478#L25-1 assume true; 477#func_to_recursive_line_23_to_23_0EXIT >#64#return; 464#L47-1 call #t~mem8 := read~int#0(~b.base, ~b.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#0(1 + #t~mem8, ~b.base, ~b.offset, 4);havoc #t~mem8;havoc #t~pre9; 457#L52 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 465#$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#0(~b.base, ~b.offset, 4); 463#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#3(0, ~c.base, ~c.offset, 4); 460#L47 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 459#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 462#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 461#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 459#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 462#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 461#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 459#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 462#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 469#L25-1 assume true; 467#func_to_recursive_line_23_to_23_0EXIT >#62#return; 468#L25-1 assume true; 479#func_to_recursive_line_23_to_23_0EXIT >#62#return; 478#L25-1 assume true; 477#func_to_recursive_line_23_to_23_0EXIT >#64#return; 464#L47-1 call #t~mem8 := read~int#0(~b.base, ~b.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#0(1 + #t~mem8, ~b.base, ~b.offset, 4);havoc #t~mem8;havoc #t~pre9; 457#L52 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 465#$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#0(~b.base, ~b.offset, 4); 463#L41 assume !(#t~mem7 < 6);havoc #t~mem7; 455#L41-1 assume true; 458#func_to_recursive_line_22_to_23_0EXIT >#66#return; 470#L41-1 assume true; 476#func_to_recursive_line_22_to_23_0EXIT >#66#return; 475#L41-1 assume true; 474#func_to_recursive_line_22_to_23_0EXIT >#70#return; 473#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; 452#L72 call func_to_recursive_line_21_to_22_0(~a.base, ~a.offset, ~b.base, ~b.offset, ~c.base, ~c.offset);< 454#$Ultimate##0 [2024-10-31 21:57:32,494 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-31 21:57:32,495 INFO L85 PathProgramCache]: Analyzing trace with hash 49760, now seen corresponding path program 4 times [2024-10-31 21:57:32,495 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-31 21:57:32,495 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [59286860] [2024-10-31 21:57:32,495 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-31 21:57:32,495 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-31 21:57:32,507 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-31 21:57:32,507 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-31 21:57:32,513 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-31 21:57:32,516 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-31 21:57:32,517 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-31 21:57:32,517 INFO L85 PathProgramCache]: Analyzing trace with hash 1306331242, now seen corresponding path program 2 times [2024-10-31 21:57:32,517 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-31 21:57:32,518 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [543517673] [2024-10-31 21:57:32,518 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-31 21:57:32,518 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-31 21:57:32,544 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:32,976 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:32,993 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:33,297 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:33,303 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:33,500 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:33,507 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:33,643 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:33,646 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:33,706 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 18 [2024-10-31 21:57:33,721 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:33,729 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:33,734 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:33,740 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:33,744 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:33,748 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:33,749 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:33,752 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 18 [2024-10-31 21:57:33,756 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:33,762 INFO L134 CoverageAnalysis]: Checked inductivity of 81 backedges. 6 proven. 42 refuted. 0 times theorem prover too weak. 33 trivial. 0 not checked. [2024-10-31 21:57:33,762 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-31 21:57:33,762 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [543517673] [2024-10-31 21:57:33,764 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [543517673] provided 0 perfect and 1 imperfect interpolant sequences [2024-10-31 21:57:33,764 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1290560881] [2024-10-31 21:57:33,764 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-10-31 21:57:33,764 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-10-31 21:57:33,765 INFO L189 MonitoredProcess]: No working directory specified, using /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_4d782269-8021-4f52-af8d-027884f09168/bin/uautomizer-verify-4GaUIPS5ZU/z3 [2024-10-31 21:57:33,768 INFO L229 MonitoredProcess]: Starting monitored process 3 with /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_4d782269-8021-4f52-af8d-027884f09168/bin/uautomizer-verify-4GaUIPS5ZU/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-10-31 21:57:33,772 INFO L327 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_4d782269-8021-4f52-af8d-027884f09168/bin/uautomizer-verify-4GaUIPS5ZU/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2024-10-31 21:57:33,907 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-10-31 21:57:33,907 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-10-31 21:57:33,910 INFO L255 TraceCheckSpWp]: Trace formula consists of 320 conjuncts, 50 conjuncts are in the unsatisfiable core [2024-10-31 21:57:33,915 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-10-31 21:57:33,958 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 [2024-10-31 21:57:34,280 INFO L134 CoverageAnalysis]: Checked inductivity of 81 backedges. 45 proven. 8 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2024-10-31 21:57:34,281 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-10-31 21:57:35,492 INFO L134 CoverageAnalysis]: Checked inductivity of 81 backedges. 4 proven. 56 refuted. 0 times theorem prover too weak. 21 trivial. 0 not checked. [2024-10-31 21:57:35,492 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1290560881] provided 0 perfect and 2 imperfect interpolant sequences [2024-10-31 21:57:35,493 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-10-31 21:57:35,493 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 11, 14] total 30 [2024-10-31 21:57:35,493 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [882697271] [2024-10-31 21:57:35,493 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-10-31 21:57:35,494 INFO L762 eck$LassoCheckResult]: loop already infeasible [2024-10-31 21:57:35,494 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-31 21:57:35,495 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 30 interpolants. [2024-10-31 21:57:35,495 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=150, Invalid=720, Unknown=0, NotChecked=0, Total=870 [2024-10-31 21:57:35,496 INFO L87 Difference]: Start difference. First operand 28 states and 32 transitions. cyclomatic complexity: 7 Second operand has 30 states, 22 states have (on average 2.227272727272727) internal successors, (49), 25 states have internal predecessors, (49), 10 states have call successors, (22), 7 states have call predecessors, (22), 9 states have return successors, (17), 7 states have call predecessors, (17), 10 states have call successors, (17) [2024-10-31 21:57:36,038 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-31 21:57:36,039 INFO L93 Difference]: Finished difference Result 32 states and 36 transitions. [2024-10-31 21:57:36,039 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 32 states and 36 transitions. [2024-10-31 21:57:36,040 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2024-10-31 21:57:36,041 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 32 states to 32 states and 36 transitions. [2024-10-31 21:57:36,042 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 32 [2024-10-31 21:57:36,042 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 32 [2024-10-31 21:57:36,042 INFO L73 IsDeterministic]: Start isDeterministic. Operand 32 states and 36 transitions. [2024-10-31 21:57:36,043 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2024-10-31 21:57:36,043 INFO L218 hiAutomatonCegarLoop]: Abstraction has 32 states and 36 transitions. [2024-10-31 21:57:36,043 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states and 36 transitions. [2024-10-31 21:57:36,049 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 32. [2024-10-31 21:57:36,049 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) [2024-10-31 21:57:36,050 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 36 transitions. [2024-10-31 21:57:36,050 INFO L240 hiAutomatonCegarLoop]: Abstraction has 32 states and 36 transitions. [2024-10-31 21:57:36,052 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2024-10-31 21:57:36,052 INFO L425 stractBuchiCegarLoop]: Abstraction has 32 states and 36 transitions. [2024-10-31 21:57:36,053 INFO L332 stractBuchiCegarLoop]: ======== Iteration 5 ============ [2024-10-31 21:57:36,053 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 32 states and 36 transitions. [2024-10-31 21:57:36,054 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2024-10-31 21:57:36,054 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-31 21:57:36,054 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-31 21:57:36,056 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2024-10-31 21:57:36,057 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [10, 10, 8, 8, 8, 3, 3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1] [2024-10-31 21:57:36,057 INFO L745 eck$LassoCheckResult]: Stem: 1008#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#1(48, 1, 0, 1);call write~init~int#1(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); 1004#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#0(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#3(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); 989#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);< 990#$Ultimate##0 [2024-10-31 21:57:36,057 INFO L747 eck$LassoCheckResult]: Loop: 990#$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); 1007#L61 assume #t~mem10 < 6;havoc #t~mem10;call write~int#0(0, ~b.base, ~b.offset, 4); 993#L67 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 1001#$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#0(~b.base, ~b.offset, 4); 1000#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#3(0, ~c.base, ~c.offset, 4); 997#L47 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 995#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 998#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 996#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 995#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 998#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 996#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 995#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 998#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 996#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 995#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 998#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 996#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 995#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 998#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 1005#L25-1 assume true; 1002#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1003#L25-1 assume true; 1019#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1018#L25-1 assume true; 1017#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1016#L25-1 assume true; 1015#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1014#L25-1 assume true; 1013#func_to_recursive_line_23_to_23_0EXIT >#64#return; 999#L47-1 call #t~mem8 := read~int#0(~b.base, ~b.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#0(1 + #t~mem8, ~b.base, ~b.offset, 4);havoc #t~mem8;havoc #t~pre9; 992#L52 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 1001#$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#0(~b.base, ~b.offset, 4); 1000#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#3(0, ~c.base, ~c.offset, 4); 997#L47 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 995#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 998#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 996#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 995#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 998#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 996#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 995#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 998#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 996#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 995#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 998#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 996#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 995#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 998#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 1005#L25-1 assume true; 1002#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1003#L25-1 assume true; 1019#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1018#L25-1 assume true; 1017#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1016#L25-1 assume true; 1015#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1014#L25-1 assume true; 1013#func_to_recursive_line_23_to_23_0EXIT >#64#return; 999#L47-1 call #t~mem8 := read~int#0(~b.base, ~b.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#0(1 + #t~mem8, ~b.base, ~b.offset, 4);havoc #t~mem8;havoc #t~pre9; 992#L52 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 1001#$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#0(~b.base, ~b.offset, 4); 1000#L41 assume !(#t~mem7 < 6);havoc #t~mem7; 991#L41-1 assume true; 994#func_to_recursive_line_22_to_23_0EXIT >#66#return; 1006#L41-1 assume true; 1012#func_to_recursive_line_22_to_23_0EXIT >#66#return; 1011#L41-1 assume true; 1010#func_to_recursive_line_22_to_23_0EXIT >#70#return; 1009#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; 988#L72 call func_to_recursive_line_21_to_22_0(~a.base, ~a.offset, ~b.base, ~b.offset, ~c.base, ~c.offset);< 990#$Ultimate##0 [2024-10-31 21:57:36,058 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-31 21:57:36,058 INFO L85 PathProgramCache]: Analyzing trace with hash 49760, now seen corresponding path program 5 times [2024-10-31 21:57:36,058 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-31 21:57:36,059 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2011219046] [2024-10-31 21:57:36,059 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-31 21:57:36,059 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-31 21:57:36,070 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-31 21:57:36,070 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-31 21:57:36,075 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-31 21:57:36,078 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-31 21:57:36,078 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-31 21:57:36,079 INFO L85 PathProgramCache]: Analyzing trace with hash -909942614, now seen corresponding path program 3 times [2024-10-31 21:57:36,079 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-31 21:57:36,079 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [584588004] [2024-10-31 21:57:36,079 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-31 21:57:36,079 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-31 21:57:36,108 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:36,842 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:36,868 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:37,518 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:37,527 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:37,817 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:37,848 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:38,058 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:38,063 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:38,200 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:38,204 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:38,308 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:38,310 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:38,370 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 28 [2024-10-31 21:57:38,381 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:38,391 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:38,400 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:38,407 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:38,411 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:38,417 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:38,420 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:38,424 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:38,426 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:38,429 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:38,430 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:38,432 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 28 [2024-10-31 21:57:38,434 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:38,437 INFO L134 CoverageAnalysis]: Checked inductivity of 223 backedges. 10 proven. 118 refuted. 0 times theorem prover too weak. 95 trivial. 0 not checked. [2024-10-31 21:57:38,437 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-31 21:57:38,438 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [584588004] [2024-10-31 21:57:38,439 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [584588004] provided 0 perfect and 1 imperfect interpolant sequences [2024-10-31 21:57:38,439 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [559988296] [2024-10-31 21:57:38,439 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-10-31 21:57:38,439 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-10-31 21:57:38,439 INFO L189 MonitoredProcess]: No working directory specified, using /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_4d782269-8021-4f52-af8d-027884f09168/bin/uautomizer-verify-4GaUIPS5ZU/z3 [2024-10-31 21:57:38,442 INFO L229 MonitoredProcess]: Starting monitored process 4 with /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_4d782269-8021-4f52-af8d-027884f09168/bin/uautomizer-verify-4GaUIPS5ZU/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-10-31 21:57:38,446 INFO L327 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_4d782269-8021-4f52-af8d-027884f09168/bin/uautomizer-verify-4GaUIPS5ZU/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2024-10-31 21:57:38,589 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) [2024-10-31 21:57:38,589 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-10-31 21:57:38,591 INFO L255 TraceCheckSpWp]: Trace formula consists of 239 conjuncts, 41 conjuncts are in the unsatisfiable core [2024-10-31 21:57:38,600 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-10-31 21:57:38,614 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 1 [2024-10-31 21:57:39,004 INFO L134 CoverageAnalysis]: Checked inductivity of 223 backedges. 0 proven. 8 refuted. 0 times theorem prover too weak. 215 trivial. 0 not checked. [2024-10-31 21:57:39,004 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-10-31 21:57:40,126 INFO L134 CoverageAnalysis]: Checked inductivity of 223 backedges. 0 proven. 15 refuted. 0 times theorem prover too weak. 208 trivial. 0 not checked. [2024-10-31 21:57:40,126 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [559988296] provided 0 perfect and 2 imperfect interpolant sequences [2024-10-31 21:57:40,126 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-10-31 21:57:40,127 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 10, 14] total 35 [2024-10-31 21:57:40,127 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [267806647] [2024-10-31 21:57:40,127 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-10-31 21:57:40,128 INFO L762 eck$LassoCheckResult]: loop already infeasible [2024-10-31 21:57:40,128 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-31 21:57:40,129 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 35 interpolants. [2024-10-31 21:57:40,129 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=158, Invalid=1032, Unknown=0, NotChecked=0, Total=1190 [2024-10-31 21:57:40,130 INFO L87 Difference]: Start difference. First operand 32 states and 36 transitions. cyclomatic complexity: 7 Second operand has 35 states, 27 states have (on average 1.7777777777777777) internal successors, (48), 29 states have internal predecessors, (48), 13 states have call successors, (18), 8 states have call predecessors, (18), 13 states have return successors, (19), 13 states have call predecessors, (19), 13 states have call successors, (19) [2024-10-31 21:57:40,923 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-31 21:57:40,923 INFO L93 Difference]: Finished difference Result 36 states and 40 transitions. [2024-10-31 21:57:40,924 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 36 states and 40 transitions. [2024-10-31 21:57:40,925 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2024-10-31 21:57:40,926 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 36 states to 36 states and 40 transitions. [2024-10-31 21:57:40,927 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 36 [2024-10-31 21:57:40,927 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 36 [2024-10-31 21:57:40,928 INFO L73 IsDeterministic]: Start isDeterministic. Operand 36 states and 40 transitions. [2024-10-31 21:57:40,928 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2024-10-31 21:57:40,928 INFO L218 hiAutomatonCegarLoop]: Abstraction has 36 states and 40 transitions. [2024-10-31 21:57:40,929 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states and 40 transitions. [2024-10-31 21:57:40,934 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 36. [2024-10-31 21:57:40,934 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) [2024-10-31 21:57:40,935 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 40 transitions. [2024-10-31 21:57:40,939 INFO L240 hiAutomatonCegarLoop]: Abstraction has 36 states and 40 transitions. [2024-10-31 21:57:40,939 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2024-10-31 21:57:40,941 INFO L425 stractBuchiCegarLoop]: Abstraction has 36 states and 40 transitions. [2024-10-31 21:57:40,943 INFO L332 stractBuchiCegarLoop]: ======== Iteration 6 ============ [2024-10-31 21:57:40,943 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 36 states and 40 transitions. [2024-10-31 21:57:40,944 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2024-10-31 21:57:40,944 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-31 21:57:40,944 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-31 21:57:40,951 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2024-10-31 21:57:40,951 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] [2024-10-31 21:57:40,952 INFO L745 eck$LassoCheckResult]: Stem: 1804#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#1(48, 1, 0, 1);call write~init~int#1(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); 1800#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#0(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#3(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); 1784#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);< 1785#$Ultimate##0 [2024-10-31 21:57:40,952 INFO L747 eck$LassoCheckResult]: Loop: 1785#$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); 1803#L61 assume #t~mem10 < 6;havoc #t~mem10;call write~int#0(0, ~b.base, ~b.offset, 4); 1788#L67 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 1797#$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#0(~b.base, ~b.offset, 4); 1794#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#3(0, ~c.base, ~c.offset, 4); 1792#L47 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1790#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 1793#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 1791#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1790#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 1793#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 1791#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1790#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 1793#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 1791#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1790#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 1793#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 1791#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1790#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 1793#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 1791#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1790#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 1793#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 1801#L25-1 assume true; 1798#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1799#L25-1 assume true; 1818#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1817#L25-1 assume true; 1816#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1815#L25-1 assume true; 1814#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1813#L25-1 assume true; 1812#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1811#L25-1 assume true; 1810#func_to_recursive_line_23_to_23_0EXIT >#64#return; 1796#L47-1 call #t~mem8 := read~int#0(~b.base, ~b.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#0(1 + #t~mem8, ~b.base, ~b.offset, 4);havoc #t~mem8;havoc #t~pre9; 1787#L52 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 1797#$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#0(~b.base, ~b.offset, 4); 1794#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#3(0, ~c.base, ~c.offset, 4); 1792#L47 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1790#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 1793#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 1791#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1790#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 1793#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 1791#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1790#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 1793#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 1791#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1790#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 1793#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 1791#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1790#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 1793#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 1791#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1790#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 1793#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 1801#L25-1 assume true; 1798#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1799#L25-1 assume true; 1818#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1817#L25-1 assume true; 1816#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1815#L25-1 assume true; 1814#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1813#L25-1 assume true; 1812#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1811#L25-1 assume true; 1810#func_to_recursive_line_23_to_23_0EXIT >#64#return; 1796#L47-1 call #t~mem8 := read~int#0(~b.base, ~b.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#0(1 + #t~mem8, ~b.base, ~b.offset, 4);havoc #t~mem8;havoc #t~pre9; 1787#L52 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 1797#$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#0(~b.base, ~b.offset, 4); 1794#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#3(0, ~c.base, ~c.offset, 4); 1792#L47 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1790#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 1793#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 1791#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1790#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 1793#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 1791#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1790#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 1793#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 1791#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1790#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 1793#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 1791#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1790#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 1793#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 1791#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 1790#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 1793#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 1801#L25-1 assume true; 1798#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1799#L25-1 assume true; 1818#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1817#L25-1 assume true; 1816#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1815#L25-1 assume true; 1814#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1813#L25-1 assume true; 1812#func_to_recursive_line_23_to_23_0EXIT >#62#return; 1811#L25-1 assume true; 1810#func_to_recursive_line_23_to_23_0EXIT >#64#return; 1796#L47-1 call #t~mem8 := read~int#0(~b.base, ~b.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#0(1 + #t~mem8, ~b.base, ~b.offset, 4);havoc #t~mem8;havoc #t~pre9; 1787#L52 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 1797#$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#0(~b.base, ~b.offset, 4); 1794#L41 assume !(#t~mem7 < 6);havoc #t~mem7; 1795#L41-1 assume true; 1802#func_to_recursive_line_22_to_23_0EXIT >#66#return; 1786#L41-1 assume true; 1789#func_to_recursive_line_22_to_23_0EXIT >#66#return; 1809#L41-1 assume true; 1808#func_to_recursive_line_22_to_23_0EXIT >#66#return; 1807#L41-1 assume true; 1806#func_to_recursive_line_22_to_23_0EXIT >#70#return; 1805#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; 1783#L72 call func_to_recursive_line_21_to_22_0(~a.base, ~a.offset, ~b.base, ~b.offset, ~c.base, ~c.offset);< 1785#$Ultimate##0 [2024-10-31 21:57:40,953 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-31 21:57:40,956 INFO L85 PathProgramCache]: Analyzing trace with hash 49760, now seen corresponding path program 6 times [2024-10-31 21:57:40,957 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-31 21:57:40,957 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1228755297] [2024-10-31 21:57:40,957 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-31 21:57:40,957 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-31 21:57:40,972 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-31 21:57:40,972 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-31 21:57:40,977 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-31 21:57:40,983 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-31 21:57:40,984 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-31 21:57:40,984 INFO L85 PathProgramCache]: Analyzing trace with hash -11960144, now seen corresponding path program 4 times [2024-10-31 21:57:40,984 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-31 21:57:40,985 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [925311429] [2024-10-31 21:57:40,985 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-31 21:57:40,985 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-31 21:57:41,027 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:42,161 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:42,200 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:43,242 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:43,250 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:43,682 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:43,693 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:43,969 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:43,974 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:44,154 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:44,158 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:44,273 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:44,276 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:44,347 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:44,350 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:44,404 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 33 [2024-10-31 21:57:44,423 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:44,438 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:44,442 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:44,448 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:44,453 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:44,458 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:44,462 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:44,465 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:44,468 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:44,471 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:44,474 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:44,476 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:44,478 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:44,479 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 33 [2024-10-31 21:57:44,486 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:44,494 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:44,500 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:44,506 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:44,510 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:44,515 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:44,518 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:44,522 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:44,525 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:44,528 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:44,530 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:44,532 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:44,534 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:44,536 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 33 [2024-10-31 21:57:44,539 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:44,542 INFO L134 CoverageAnalysis]: Checked inductivity of 750 backedges. 14 proven. 307 refuted. 0 times theorem prover too weak. 429 trivial. 0 not checked. [2024-10-31 21:57:44,542 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-31 21:57:44,542 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [925311429] [2024-10-31 21:57:44,543 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [925311429] provided 0 perfect and 1 imperfect interpolant sequences [2024-10-31 21:57:44,543 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1894009223] [2024-10-31 21:57:44,543 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-10-31 21:57:44,543 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-10-31 21:57:44,543 INFO L189 MonitoredProcess]: No working directory specified, using /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_4d782269-8021-4f52-af8d-027884f09168/bin/uautomizer-verify-4GaUIPS5ZU/z3 [2024-10-31 21:57:44,546 INFO L229 MonitoredProcess]: Starting monitored process 5 with /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_4d782269-8021-4f52-af8d-027884f09168/bin/uautomizer-verify-4GaUIPS5ZU/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-10-31 21:57:44,547 INFO L327 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_4d782269-8021-4f52-af8d-027884f09168/bin/uautomizer-verify-4GaUIPS5ZU/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2024-10-31 21:57:44,768 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-10-31 21:57:44,769 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-10-31 21:57:44,775 INFO L255 TraceCheckSpWp]: Trace formula consists of 681 conjuncts, 100 conjuncts are in the unsatisfiable core [2024-10-31 21:57:44,786 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-10-31 21:57:44,815 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 [2024-10-31 21:57:45,355 INFO L134 CoverageAnalysis]: Checked inductivity of 750 backedges. 346 proven. 35 refuted. 0 times theorem prover too weak. 369 trivial. 0 not checked. [2024-10-31 21:57:45,356 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-10-31 21:57:48,446 INFO L134 CoverageAnalysis]: Checked inductivity of 750 backedges. 6 proven. 414 refuted. 0 times theorem prover too weak. 330 trivial. 0 not checked. [2024-10-31 21:57:48,447 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1894009223] provided 0 perfect and 2 imperfect interpolant sequences [2024-10-31 21:57:48,447 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-10-31 21:57:48,447 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 14, 26] total 45 [2024-10-31 21:57:48,447 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [527536305] [2024-10-31 21:57:48,447 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-10-31 21:57:48,448 INFO L762 eck$LassoCheckResult]: loop already infeasible [2024-10-31 21:57:48,448 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-31 21:57:48,449 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 45 interpolants. [2024-10-31 21:57:48,451 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=339, Invalid=1641, Unknown=0, NotChecked=0, Total=1980 [2024-10-31 21:57:48,452 INFO L87 Difference]: Start difference. First operand 36 states and 40 transitions. cyclomatic complexity: 7 Second operand has 45 states, 34 states have (on average 1.7941176470588236) internal successors, (61), 37 states have internal predecessors, (61), 13 states have call successors, (25), 10 states have call predecessors, (25), 15 states have return successors, (26), 13 states have call predecessors, (26), 13 states have call successors, (26) [2024-10-31 21:57:49,118 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-10-31 21:57:49,118 INFO L93 Difference]: Finished difference Result 38 states and 42 transitions. [2024-10-31 21:57:49,118 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 38 states and 42 transitions. [2024-10-31 21:57:49,119 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2024-10-31 21:57:49,120 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 38 states to 38 states and 42 transitions. [2024-10-31 21:57:49,121 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 38 [2024-10-31 21:57:49,121 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 38 [2024-10-31 21:57:49,121 INFO L73 IsDeterministic]: Start isDeterministic. Operand 38 states and 42 transitions. [2024-10-31 21:57:49,121 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2024-10-31 21:57:49,122 INFO L218 hiAutomatonCegarLoop]: Abstraction has 38 states and 42 transitions. [2024-10-31 21:57:49,122 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 38 states and 42 transitions. [2024-10-31 21:57:49,124 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 38 to 38. [2024-10-31 21:57:49,125 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) [2024-10-31 21:57:49,126 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 42 transitions. [2024-10-31 21:57:49,126 INFO L240 hiAutomatonCegarLoop]: Abstraction has 38 states and 42 transitions. [2024-10-31 21:57:49,126 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2024-10-31 21:57:49,127 INFO L425 stractBuchiCegarLoop]: Abstraction has 38 states and 42 transitions. [2024-10-31 21:57:49,127 INFO L332 stractBuchiCegarLoop]: ======== Iteration 7 ============ [2024-10-31 21:57:49,127 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 38 states and 42 transitions. [2024-10-31 21:57:49,128 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 13 [2024-10-31 21:57:49,128 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-10-31 21:57:49,128 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-10-31 21:57:49,131 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2024-10-31 21:57:49,131 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] [2024-10-31 21:57:49,131 INFO L745 eck$LassoCheckResult]: Stem: 3168#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#1(48, 1, 0, 1);call write~init~int#1(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); 3164#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#0(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#3(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); 3149#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);< 3150#$Ultimate##0 [2024-10-31 21:57:49,131 INFO L747 eck$LassoCheckResult]: Loop: 3150#$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); 3167#L61 assume #t~mem10 < 6;havoc #t~mem10;call write~int#0(0, ~b.base, ~b.offset, 4); 3152#L67 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 3161#$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#0(~b.base, ~b.offset, 4); 3160#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#3(0, ~c.base, ~c.offset, 4); 3156#L47 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3155#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 3158#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3157#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3155#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 3158#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3157#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3155#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 3158#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3157#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3155#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 3158#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3157#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3155#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 3158#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3157#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3155#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 3158#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3157#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3155#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 3158#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 3165#L25-1 assume true; 3162#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3163#L25-1 assume true; 3185#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3184#L25-1 assume true; 3183#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3182#L25-1 assume true; 3181#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3180#L25-1 assume true; 3179#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3178#L25-1 assume true; 3177#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3176#L25-1 assume true; 3175#func_to_recursive_line_23_to_23_0EXIT >#64#return; 3159#L47-1 call #t~mem8 := read~int#0(~b.base, ~b.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#0(1 + #t~mem8, ~b.base, ~b.offset, 4);havoc #t~mem8;havoc #t~pre9; 3153#L52 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 3161#$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#0(~b.base, ~b.offset, 4); 3160#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#3(0, ~c.base, ~c.offset, 4); 3156#L47 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3155#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 3158#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3157#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3155#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 3158#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3157#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3155#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 3158#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3157#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3155#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 3158#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3157#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3155#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 3158#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3157#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3155#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 3158#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3157#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3155#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 3158#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 3165#L25-1 assume true; 3162#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3163#L25-1 assume true; 3185#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3184#L25-1 assume true; 3183#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3182#L25-1 assume true; 3181#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3180#L25-1 assume true; 3179#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3178#L25-1 assume true; 3177#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3176#L25-1 assume true; 3175#func_to_recursive_line_23_to_23_0EXIT >#64#return; 3159#L47-1 call #t~mem8 := read~int#0(~b.base, ~b.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#0(1 + #t~mem8, ~b.base, ~b.offset, 4);havoc #t~mem8;havoc #t~pre9; 3153#L52 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 3161#$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#0(~b.base, ~b.offset, 4); 3160#L41 assume #t~mem7 < 6;havoc #t~mem7;call write~int#3(0, ~c.base, ~c.offset, 4); 3156#L47 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3155#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 3158#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3157#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3155#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 3158#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3157#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3155#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 3158#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3157#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3155#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 3158#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3157#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3155#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 3158#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3157#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3155#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 3158#L25 assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#3(~c.base, ~c.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#3(1 + #t~mem5, ~c.base, ~c.offset, 4);havoc #t~mem5;havoc #t~pre6; 3157#L32 call func_to_recursive_line_23_to_23_0(~c.base, ~c.offset);< 3155#$Ultimate##0 ~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem4 := read~int#3(~c.base, ~c.offset, 4); 3158#L25 assume !(#t~mem4 < 6);havoc #t~mem4; 3165#L25-1 assume true; 3162#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3163#L25-1 assume true; 3185#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3184#L25-1 assume true; 3183#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3182#L25-1 assume true; 3181#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3180#L25-1 assume true; 3179#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3178#L25-1 assume true; 3177#func_to_recursive_line_23_to_23_0EXIT >#62#return; 3176#L25-1 assume true; 3175#func_to_recursive_line_23_to_23_0EXIT >#64#return; 3159#L47-1 call #t~mem8 := read~int#0(~b.base, ~b.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#0(1 + #t~mem8, ~b.base, ~b.offset, 4);havoc #t~mem8;havoc #t~pre9; 3153#L52 call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~c.base, ~c.offset);< 3161#$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#0(~b.base, ~b.offset, 4); 3160#L41 assume !(#t~mem7 < 6);havoc #t~mem7; 3151#L41-1 assume true; 3154#func_to_recursive_line_22_to_23_0EXIT >#66#return; 3166#L41-1 assume true; 3174#func_to_recursive_line_22_to_23_0EXIT >#66#return; 3173#L41-1 assume true; 3172#func_to_recursive_line_22_to_23_0EXIT >#66#return; 3171#L41-1 assume true; 3170#func_to_recursive_line_22_to_23_0EXIT >#70#return; 3169#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; 3148#L72 call func_to_recursive_line_21_to_22_0(~a.base, ~a.offset, ~b.base, ~b.offset, ~c.base, ~c.offset);< 3150#$Ultimate##0 [2024-10-31 21:57:49,133 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-31 21:57:49,134 INFO L85 PathProgramCache]: Analyzing trace with hash 49760, now seen corresponding path program 7 times [2024-10-31 21:57:49,134 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-31 21:57:49,134 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1552970366] [2024-10-31 21:57:49,134 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-31 21:57:49,134 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-31 21:57:49,143 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-31 21:57:49,143 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-31 21:57:49,146 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-31 21:57:49,149 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-31 21:57:49,150 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-31 21:57:49,150 INFO L85 PathProgramCache]: Analyzing trace with hash -1552670328, now seen corresponding path program 5 times [2024-10-31 21:57:49,150 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-31 21:57:49,151 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1213630302] [2024-10-31 21:57:49,151 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-31 21:57:49,151 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-31 21:57:49,198 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:50,148 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:50,187 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:50,985 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:50,993 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:51,009 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:51,015 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:51,020 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:51,025 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:51,029 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:51,032 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:51,036 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:51,039 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:51,042 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:51,047 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:51,050 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:51,051 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:51,053 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 38 [2024-10-31 21:57:51,080 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:51,514 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:51,522 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:51,535 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:51,539 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:51,544 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:51,548 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:51,552 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:51,555 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:51,559 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:51,561 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:51,564 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:51,566 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:51,568 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:51,569 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:51,571 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 38 [2024-10-31 21:57:51,585 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:51,752 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:51,760 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:51,773 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:51,777 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:51,782 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:51,786 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:51,791 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:51,794 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:51,798 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:51,800 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:51,826 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:51,828 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:51,830 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2024-10-31 21:57:51,831 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:51,833 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 38 [2024-10-31 21:57:51,835 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-31 21:57:51,879 INFO L134 CoverageAnalysis]: Checked inductivity of 1026 backedges. 0 proven. 15 refuted. 0 times theorem prover too weak. 1011 trivial. 0 not checked. [2024-10-31 21:57:51,880 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-31 21:57:51,880 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1213630302] [2024-10-31 21:57:51,880 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1213630302] provided 0 perfect and 1 imperfect interpolant sequences [2024-10-31 21:57:51,880 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1066928354] [2024-10-31 21:57:51,880 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-10-31 21:57:51,880 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-10-31 21:57:51,881 INFO L189 MonitoredProcess]: No working directory specified, using /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_4d782269-8021-4f52-af8d-027884f09168/bin/uautomizer-verify-4GaUIPS5ZU/z3 [2024-10-31 21:57:51,883 INFO L229 MonitoredProcess]: Starting monitored process 6 with /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_4d782269-8021-4f52-af8d-027884f09168/bin/uautomizer-verify-4GaUIPS5ZU/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-10-31 21:57:51,885 INFO L327 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_4d782269-8021-4f52-af8d-027884f09168/bin/uautomizer-verify-4GaUIPS5ZU/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2024-10-31 21:57:52,527 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 10 check-sat command(s) [2024-10-31 21:57:52,527 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-10-31 21:57:52,533 INFO L255 TraceCheckSpWp]: Trace formula consists of 762 conjuncts, 54 conjuncts are in the unsatisfiable core [2024-10-31 21:57:52,538 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-10-31 21:57:52,546 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 1 [2024-10-31 21:57:52,908 INFO L134 CoverageAnalysis]: Checked inductivity of 1026 backedges. 0 proven. 15 refuted. 0 times theorem prover too weak. 1011 trivial. 0 not checked. [2024-10-31 21:57:52,908 INFO L311 TraceCheckSpWp]: Computing backward predicates...