/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerC.xml -s ../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf -i ../../../trunk/examples/svcomp/verifythis/tree_del_iter_incorrect.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-07 12:29:52,997 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-07 12:29:52,998 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-07 12:29:53,016 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-07 12:29:53,017 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-07 12:29:53,017 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-07 12:29:53,018 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-07 12:29:53,019 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-07 12:29:53,021 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-07 12:29:53,021 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-07 12:29:53,022 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-07 12:29:53,023 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-07 12:29:53,023 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-07 12:29:53,024 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-07 12:29:53,024 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-07 12:29:53,025 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-07 12:29:53,025 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-07 12:29:53,026 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-07 12:29:53,027 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-07 12:29:53,028 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-07 12:29:53,029 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-07 12:29:53,032 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-07 12:29:53,032 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-07 12:29:53,033 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-07 12:29:53,034 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-07 12:29:53,035 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-07 12:29:53,035 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-07 12:29:53,036 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-07 12:29:53,036 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-07 12:29:53,036 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-07 12:29:53,037 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-07 12:29:53,037 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-07 12:29:53,038 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-07 12:29:53,038 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-07 12:29:53,039 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-07 12:29:53,039 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-07 12:29:53,040 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-07 12:29:53,040 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-07 12:29:53,040 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-07 12:29:53,040 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-07 12:29:53,041 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-07 12:29:53,047 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-07 12:29:53,048 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf [2022-04-07 12:29:53,070 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-07 12:29:53,071 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-07 12:29:53,071 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-04-07 12:29:53,071 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-04-07 12:29:53,071 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-07 12:29:53,071 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-07 12:29:53,072 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-07 12:29:53,072 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-07 12:29:53,072 INFO L138 SettingsManager]: * Use SBE=true [2022-04-07 12:29:53,072 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-07 12:29:53,072 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-07 12:29:53,072 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-07 12:29:53,072 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-07 12:29:53,072 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-07 12:29:53,072 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-07 12:29:53,073 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-07 12:29:53,073 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-07 12:29:53,073 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-07 12:29:53,073 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-07 12:29:53,073 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-07 12:29:53,073 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-07 12:29:53,073 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-07 12:29:53,073 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-07 12:29:53,073 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-07 12:29:53,073 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 12:29:53,073 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-07 12:29:53,073 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-07 12:29:53,074 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-07 12:29:53,074 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-07 12:29:53,074 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-07 12:29:53,074 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-04-07 12:29:53,074 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-04-07 12:29:53,074 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-07 12:29:53,074 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-07 12:29:53,246 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-07 12:29:53,272 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-07 12:29:53,273 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-07 12:29:53,274 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-07 12:29:53,274 INFO L275 PluginConnector]: CDTParser initialized [2022-04-07 12:29:53,275 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/verifythis/tree_del_iter_incorrect.c [2022-04-07 12:29:53,315 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/aae195da3/fa69e857b25d43409bd7bd9beacb022a/FLAG799199d14 [2022-04-07 12:29:53,641 INFO L306 CDTParser]: Found 1 translation units. [2022-04-07 12:29:53,641 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/verifythis/tree_del_iter_incorrect.c [2022-04-07 12:29:53,647 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/aae195da3/fa69e857b25d43409bd7bd9beacb022a/FLAG799199d14 [2022-04-07 12:29:53,656 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/aae195da3/fa69e857b25d43409bd7bd9beacb022a [2022-04-07 12:29:53,657 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-07 12:29:53,658 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-07 12:29:53,659 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-07 12:29:53,659 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-07 12:29:53,663 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-07 12:29:53,666 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 12:29:53" (1/1) ... [2022-04-07 12:29:53,667 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@339955b6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 12:29:53, skipping insertion in model container [2022-04-07 12:29:53,667 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 12:29:53" (1/1) ... [2022-04-07 12:29:53,671 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-07 12:29:53,685 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-07 12:29:53,798 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/verifythis/tree_del_iter_incorrect.c[619,632] [2022-04-07 12:29:53,843 WARN L1550 CHandler]: Possible shadowing of function min [2022-04-07 12:29:53,876 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 12:29:53,885 INFO L203 MainTranslator]: Completed pre-run [2022-04-07 12:29:53,894 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/verifythis/tree_del_iter_incorrect.c[619,632] [2022-04-07 12:29:53,899 WARN L1550 CHandler]: Possible shadowing of function min [2022-04-07 12:29:53,906 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 12:29:53,916 INFO L208 MainTranslator]: Completed translation [2022-04-07 12:29:53,917 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 12:29:53 WrapperNode [2022-04-07 12:29:53,917 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-07 12:29:53,918 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-07 12:29:53,918 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-07 12:29:53,918 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-07 12:29:53,925 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 12:29:53" (1/1) ... [2022-04-07 12:29:53,925 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 12:29:53" (1/1) ... [2022-04-07 12:29:53,931 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 12:29:53" (1/1) ... [2022-04-07 12:29:53,931 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 12:29:53" (1/1) ... [2022-04-07 12:29:53,953 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 12:29:53" (1/1) ... [2022-04-07 12:29:53,964 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 12:29:53" (1/1) ... [2022-04-07 12:29:53,966 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 12:29:53" (1/1) ... [2022-04-07 12:29:53,968 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-07 12:29:53,968 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-07 12:29:53,968 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-07 12:29:53,968 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-07 12:29:53,975 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 12:29:53" (1/1) ... [2022-04-07 12:29:53,980 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 12:29:53,986 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 12:29:53,996 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-07 12:29:53,998 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-07 12:29:54,027 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-07 12:29:54,028 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-07 12:29:54,028 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-07 12:29:54,028 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-07 12:29:54,028 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-07 12:29:54,028 INFO L138 BoogieDeclarations]: Found implementation of procedure nondet_tree [2022-04-07 12:29:54,028 INFO L138 BoogieDeclarations]: Found implementation of procedure min [2022-04-07 12:29:54,029 INFO L138 BoogieDeclarations]: Found implementation of procedure tree_del [2022-04-07 12:29:54,029 INFO L138 BoogieDeclarations]: Found implementation of procedure tree_inorder [2022-04-07 12:29:54,029 INFO L138 BoogieDeclarations]: Found implementation of procedure size [2022-04-07 12:29:54,029 INFO L138 BoogieDeclarations]: Found implementation of procedure task [2022-04-07 12:29:54,029 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-07 12:29:54,029 INFO L138 BoogieDeclarations]: Found implementation of procedure #Ultimate.meminit [2022-04-07 12:29:54,029 INFO L130 BoogieDeclarations]: Found specification of procedure calloc [2022-04-07 12:29:54,029 INFO L130 BoogieDeclarations]: Found specification of procedure malloc [2022-04-07 12:29:54,029 INFO L130 BoogieDeclarations]: Found specification of procedure free [2022-04-07 12:29:54,029 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-07 12:29:54,030 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_bool [2022-04-07 12:29:54,030 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-07 12:29:54,030 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-07 12:29:54,030 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-07 12:29:54,030 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-07 12:29:54,030 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-07 12:29:54,030 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-07 12:29:54,030 INFO L130 BoogieDeclarations]: Found specification of procedure nondet_tree [2022-04-07 12:29:54,030 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2022-04-07 12:29:54,030 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-07 12:29:54,030 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2022-04-07 12:29:54,030 INFO L130 BoogieDeclarations]: Found specification of procedure min [2022-04-07 12:29:54,030 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2022-04-07 12:29:54,031 INFO L130 BoogieDeclarations]: Found specification of procedure tree_del [2022-04-07 12:29:54,031 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-07 12:29:54,031 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-07 12:29:54,031 INFO L130 BoogieDeclarations]: Found specification of procedure tree_inorder [2022-04-07 12:29:54,031 INFO L130 BoogieDeclarations]: Found specification of procedure size [2022-04-07 12:29:54,031 INFO L130 BoogieDeclarations]: Found specification of procedure task [2022-04-07 12:29:54,031 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-04-07 12:29:54,031 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.meminit [2022-04-07 12:29:54,031 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-07 12:29:54,031 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-07 12:29:54,031 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-07 12:29:54,031 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-07 12:29:54,175 INFO L234 CfgBuilder]: Building ICFG [2022-04-07 12:29:54,177 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-07 12:29:54,524 INFO L275 CfgBuilder]: Performing block encoding [2022-04-07 12:29:54,531 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-07 12:29:54,531 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-07 12:29:54,533 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 12:29:54 BoogieIcfgContainer [2022-04-07 12:29:54,533 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-07 12:29:54,535 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-07 12:29:54,535 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-07 12:29:54,538 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-07 12:29:54,538 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 07.04 12:29:53" (1/3) ... [2022-04-07 12:29:54,538 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@607dcd04 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 12:29:54, skipping insertion in model container [2022-04-07 12:29:54,539 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 12:29:53" (2/3) ... [2022-04-07 12:29:54,539 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@607dcd04 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 12:29:54, skipping insertion in model container [2022-04-07 12:29:54,539 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 12:29:54" (3/3) ... [2022-04-07 12:29:54,540 INFO L111 eAbstractionObserver]: Analyzing ICFG tree_del_iter_incorrect.c [2022-04-07 12:29:54,544 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-07 12:29:54,544 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-07 12:29:54,576 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-07 12:29:54,580 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-07 12:29:54,580 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-07 12:29:54,595 INFO L276 IsEmpty]: Start isEmpty. Operand has 96 states, 58 states have (on average 1.2241379310344827) internal successors, (71), 59 states have internal predecessors, (71), 25 states have call successors, (25), 11 states have call predecessors, (25), 11 states have return successors, (25), 25 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-07 12:29:54,599 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-04-07 12:29:54,599 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 12:29:54,600 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 12:29:54,600 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 12:29:54,603 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 12:29:54,604 INFO L85 PathProgramCache]: Analyzing trace with hash 1536185801, now seen corresponding path program 1 times [2022-04-07 12:29:54,609 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 12:29:54,610 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1466110843] [2022-04-07 12:29:54,610 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 12:29:54,611 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 12:29:54,731 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:29:54,803 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-07 12:29:54,811 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:29:54,824 INFO L290 TraceCheckUtils]: 0: Hoare triple {126#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(26, 2);call #Ultimate.allocInit(12, 3); {99#true} is VALID [2022-04-07 12:29:54,824 INFO L290 TraceCheckUtils]: 1: Hoare triple {99#true} assume true; {99#true} is VALID [2022-04-07 12:29:54,825 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {99#true} {99#true} #181#return; {99#true} is VALID [2022-04-07 12:29:54,837 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 5 [2022-04-07 12:29:54,841 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:29:54,856 INFO L290 TraceCheckUtils]: 0: Hoare triple {127#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} assume 0 != #t~nondet5 % 256;havoc #t~nondet5;#res.base, #res.offset := 0, 0; {99#true} is VALID [2022-04-07 12:29:54,857 INFO L290 TraceCheckUtils]: 1: Hoare triple {99#true} assume true; {99#true} is VALID [2022-04-07 12:29:54,857 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {99#true} {99#true} #139#return; {99#true} is VALID [2022-04-07 12:29:54,857 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-07 12:29:54,860 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:29:54,865 INFO L290 TraceCheckUtils]: 0: Hoare triple {99#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {99#true} is VALID [2022-04-07 12:29:54,865 INFO L290 TraceCheckUtils]: 1: Hoare triple {99#true} assume ~n.base == 0 && ~n.offset == 0;#res := 2147483647; {99#true} is VALID [2022-04-07 12:29:54,866 INFO L290 TraceCheckUtils]: 2: Hoare triple {99#true} assume true; {99#true} is VALID [2022-04-07 12:29:54,866 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {99#true} {99#true} #151#return; {99#true} is VALID [2022-04-07 12:29:54,866 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-07 12:29:54,868 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:29:54,878 INFO L290 TraceCheckUtils]: 0: Hoare triple {99#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {99#true} is VALID [2022-04-07 12:29:54,879 INFO L290 TraceCheckUtils]: 1: Hoare triple {99#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {99#true} is VALID [2022-04-07 12:29:54,879 INFO L290 TraceCheckUtils]: 2: Hoare triple {99#true} assume true; {99#true} is VALID [2022-04-07 12:29:54,879 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {99#true} {99#true} #153#return; {99#true} is VALID [2022-04-07 12:29:54,879 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 23 [2022-04-07 12:29:54,882 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:29:54,886 INFO L290 TraceCheckUtils]: 0: Hoare triple {99#true} ~cond := #in~cond; {99#true} is VALID [2022-04-07 12:29:54,887 INFO L290 TraceCheckUtils]: 1: Hoare triple {99#true} assume 0 == ~cond;assume false; {100#false} is VALID [2022-04-07 12:29:54,887 INFO L290 TraceCheckUtils]: 2: Hoare triple {100#false} assume true; {100#false} is VALID [2022-04-07 12:29:54,887 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {100#false} {99#true} #155#return; {100#false} is VALID [2022-04-07 12:29:54,891 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 29 [2022-04-07 12:29:54,895 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:29:54,900 INFO L290 TraceCheckUtils]: 0: Hoare triple {128#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {99#true} is VALID [2022-04-07 12:29:54,901 INFO L290 TraceCheckUtils]: 1: Hoare triple {99#true} assume true; {99#true} is VALID [2022-04-07 12:29:54,901 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {99#true} {100#false} #157#return; {100#false} is VALID [2022-04-07 12:29:54,910 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 34 [2022-04-07 12:29:54,915 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:29:54,922 INFO L290 TraceCheckUtils]: 0: Hoare triple {129#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~t.base, ~t.offset := #in~t.base, #in~t.offset;~a.base, ~a.offset := #in~a.base, #in~a.offset;~i := #in~i; {99#true} is VALID [2022-04-07 12:29:54,923 INFO L290 TraceCheckUtils]: 1: Hoare triple {99#true} assume ~t.base == 0 && ~t.offset == 0;#res := ~i; {99#true} is VALID [2022-04-07 12:29:54,923 INFO L290 TraceCheckUtils]: 2: Hoare triple {99#true} assume true; {99#true} is VALID [2022-04-07 12:29:54,924 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {99#true} {100#false} #159#return; {100#false} is VALID [2022-04-07 12:29:54,925 INFO L272 TraceCheckUtils]: 0: Hoare triple {99#true} call ULTIMATE.init(); {126#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-07 12:29:54,925 INFO L290 TraceCheckUtils]: 1: Hoare triple {126#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(26, 2);call #Ultimate.allocInit(12, 3); {99#true} is VALID [2022-04-07 12:29:54,925 INFO L290 TraceCheckUtils]: 2: Hoare triple {99#true} assume true; {99#true} is VALID [2022-04-07 12:29:54,926 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {99#true} {99#true} #181#return; {99#true} is VALID [2022-04-07 12:29:54,926 INFO L272 TraceCheckUtils]: 4: Hoare triple {99#true} call #t~ret45 := main(); {99#true} is VALID [2022-04-07 12:29:54,926 INFO L272 TraceCheckUtils]: 5: Hoare triple {99#true} call #t~ret44.base, #t~ret44.offset := nondet_tree(); {127#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} is VALID [2022-04-07 12:29:54,927 INFO L290 TraceCheckUtils]: 6: Hoare triple {127#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} assume 0 != #t~nondet5 % 256;havoc #t~nondet5;#res.base, #res.offset := 0, 0; {99#true} is VALID [2022-04-07 12:29:54,927 INFO L290 TraceCheckUtils]: 7: Hoare triple {99#true} assume true; {99#true} is VALID [2022-04-07 12:29:54,927 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {99#true} {99#true} #139#return; {99#true} is VALID [2022-04-07 12:29:54,927 INFO L272 TraceCheckUtils]: 9: Hoare triple {99#true} call task(#t~ret44.base, #t~ret44.offset); {99#true} is VALID [2022-04-07 12:29:54,927 INFO L290 TraceCheckUtils]: 10: Hoare triple {99#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {99#true} is VALID [2022-04-07 12:29:54,928 INFO L272 TraceCheckUtils]: 11: Hoare triple {99#true} call #t~ret31 := min(~t.base, ~t.offset); {99#true} is VALID [2022-04-07 12:29:54,928 INFO L290 TraceCheckUtils]: 12: Hoare triple {99#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {99#true} is VALID [2022-04-07 12:29:54,929 INFO L290 TraceCheckUtils]: 13: Hoare triple {99#true} assume ~n.base == 0 && ~n.offset == 0;#res := 2147483647; {99#true} is VALID [2022-04-07 12:29:54,930 INFO L290 TraceCheckUtils]: 14: Hoare triple {99#true} assume true; {99#true} is VALID [2022-04-07 12:29:54,931 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {99#true} {99#true} #151#return; {99#true} is VALID [2022-04-07 12:29:54,934 INFO L290 TraceCheckUtils]: 16: Hoare triple {99#true} assume -2147483648 <= #t~ret31 && #t~ret31 <= 2147483647;~a~1 := #t~ret31;havoc #t~ret31;call ~#b~1.base, ~#b~1.offset := #Ultimate.allocOnStack(4); {99#true} is VALID [2022-04-07 12:29:54,934 INFO L272 TraceCheckUtils]: 17: Hoare triple {99#true} call #t~ret32 := size(~t.base, ~t.offset); {99#true} is VALID [2022-04-07 12:29:54,935 INFO L290 TraceCheckUtils]: 18: Hoare triple {99#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {99#true} is VALID [2022-04-07 12:29:54,935 INFO L290 TraceCheckUtils]: 19: Hoare triple {99#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {99#true} is VALID [2022-04-07 12:29:54,935 INFO L290 TraceCheckUtils]: 20: Hoare triple {99#true} assume true; {99#true} is VALID [2022-04-07 12:29:54,935 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {99#true} {99#true} #153#return; {99#true} is VALID [2022-04-07 12:29:54,937 INFO L290 TraceCheckUtils]: 22: Hoare triple {99#true} assume -2147483648 <= #t~ret32 && #t~ret32 <= 2147483647;~n~1 := #t~ret32;havoc #t~ret32; {99#true} is VALID [2022-04-07 12:29:54,937 INFO L272 TraceCheckUtils]: 23: Hoare triple {99#true} call assume_abort_if_not((if 0 != ~n~1 then 1 else 0)); {99#true} is VALID [2022-04-07 12:29:54,938 INFO L290 TraceCheckUtils]: 24: Hoare triple {99#true} ~cond := #in~cond; {99#true} is VALID [2022-04-07 12:29:54,939 INFO L290 TraceCheckUtils]: 25: Hoare triple {99#true} assume 0 == ~cond;assume false; {100#false} is VALID [2022-04-07 12:29:54,939 INFO L290 TraceCheckUtils]: 26: Hoare triple {100#false} assume true; {100#false} is VALID [2022-04-07 12:29:54,940 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {100#false} {99#true} #155#return; {100#false} is VALID [2022-04-07 12:29:54,940 INFO L290 TraceCheckUtils]: 28: Hoare triple {100#false} call #t~malloc33.base, #t~malloc33.offset := #Ultimate.allocOnHeap(4 * ~n~1); {100#false} is VALID [2022-04-07 12:29:54,941 INFO L272 TraceCheckUtils]: 29: Hoare triple {100#false} call #Ultimate.meminit(#t~malloc33.base, #t~malloc33.offset, ~n~1, 4, 4 * ~n~1); {128#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-04-07 12:29:54,941 INFO L290 TraceCheckUtils]: 30: Hoare triple {128#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {99#true} is VALID [2022-04-07 12:29:54,941 INFO L290 TraceCheckUtils]: 31: Hoare triple {99#true} assume true; {99#true} is VALID [2022-04-07 12:29:54,941 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {99#true} {100#false} #157#return; {100#false} is VALID [2022-04-07 12:29:54,941 INFO L290 TraceCheckUtils]: 33: Hoare triple {100#false} ~x~0.base, ~x~0.offset := #t~malloc33.base, #t~malloc33.offset; {100#false} is VALID [2022-04-07 12:29:54,941 INFO L272 TraceCheckUtils]: 34: Hoare triple {100#false} call #t~ret34 := tree_inorder(~t.base, ~t.offset, ~x~0.base, ~x~0.offset, ~n~1); {129#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2022-04-07 12:29:54,942 INFO L290 TraceCheckUtils]: 35: Hoare triple {129#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~t.base, ~t.offset := #in~t.base, #in~t.offset;~a.base, ~a.offset := #in~a.base, #in~a.offset;~i := #in~i; {99#true} is VALID [2022-04-07 12:29:54,942 INFO L290 TraceCheckUtils]: 36: Hoare triple {99#true} assume ~t.base == 0 && ~t.offset == 0;#res := ~i; {99#true} is VALID [2022-04-07 12:29:54,942 INFO L290 TraceCheckUtils]: 37: Hoare triple {99#true} assume true; {99#true} is VALID [2022-04-07 12:29:54,942 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {99#true} {100#false} #159#return; {100#false} is VALID [2022-04-07 12:29:54,942 INFO L290 TraceCheckUtils]: 39: Hoare triple {100#false} assume -2147483648 <= #t~ret34 && #t~ret34 <= 2147483647;havoc #t~ret34;call #t~mem35 := read~int(~x~0.base, ~x~0.offset, 4); {100#false} is VALID [2022-04-07 12:29:54,942 INFO L272 TraceCheckUtils]: 40: Hoare triple {100#false} call __VERIFIER_assert((if ~a~1 == #t~mem35 then 1 else 0)); {100#false} is VALID [2022-04-07 12:29:54,943 INFO L290 TraceCheckUtils]: 41: Hoare triple {100#false} ~cond := #in~cond; {100#false} is VALID [2022-04-07 12:29:54,943 INFO L290 TraceCheckUtils]: 42: Hoare triple {100#false} assume 0 == ~cond; {100#false} is VALID [2022-04-07 12:29:54,943 INFO L290 TraceCheckUtils]: 43: Hoare triple {100#false} assume !false; {100#false} is VALID [2022-04-07 12:29:54,944 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-07 12:29:54,944 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 12:29:54,944 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1466110843] [2022-04-07 12:29:54,945 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1466110843] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 12:29:54,945 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 12:29:54,945 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-07 12:29:54,947 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [208814760] [2022-04-07 12:29:54,948 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 12:29:54,952 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.5) internal successors, (27), 2 states have internal predecessors, (27), 2 states have call successors, (10), 6 states have call predecessors, (10), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 44 [2022-04-07 12:29:54,954 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 12:29:54,956 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 4.5) internal successors, (27), 2 states have internal predecessors, (27), 2 states have call successors, (10), 6 states have call predecessors, (10), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-07 12:29:55,003 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 12:29:55,003 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-07 12:29:55,003 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 12:29:55,021 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-07 12:29:55,021 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-04-07 12:29:55,024 INFO L87 Difference]: Start difference. First operand has 96 states, 58 states have (on average 1.2241379310344827) internal successors, (71), 59 states have internal predecessors, (71), 25 states have call successors, (25), 11 states have call predecessors, (25), 11 states have return successors, (25), 25 states have call predecessors, (25), 25 states have call successors, (25) Second operand has 6 states, 6 states have (on average 4.5) internal successors, (27), 2 states have internal predecessors, (27), 2 states have call successors, (10), 6 states have call predecessors, (10), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-07 12:29:55,752 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 12:29:55,753 INFO L93 Difference]: Finished difference Result 168 states and 221 transitions. [2022-04-07 12:29:55,753 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-07 12:29:55,753 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.5) internal successors, (27), 2 states have internal predecessors, (27), 2 states have call successors, (10), 6 states have call predecessors, (10), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 44 [2022-04-07 12:29:55,753 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 12:29:55,754 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.5) internal successors, (27), 2 states have internal predecessors, (27), 2 states have call successors, (10), 6 states have call predecessors, (10), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-07 12:29:55,772 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 221 transitions. [2022-04-07 12:29:55,772 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.5) internal successors, (27), 2 states have internal predecessors, (27), 2 states have call successors, (10), 6 states have call predecessors, (10), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-07 12:29:55,777 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 221 transitions. [2022-04-07 12:29:55,777 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 221 transitions. [2022-04-07 12:29:56,011 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 221 edges. 221 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 12:29:56,019 INFO L225 Difference]: With dead ends: 168 [2022-04-07 12:29:56,020 INFO L226 Difference]: Without dead ends: 95 [2022-04-07 12:29:56,022 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 21 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=24, Invalid=32, Unknown=0, NotChecked=0, Total=56 [2022-04-07 12:29:56,024 INFO L913 BasicCegarLoop]: 78 mSDtfsCounter, 167 mSDsluCounter, 2 mSDsCounter, 0 mSdLazyCounter, 98 mSolverCounterSat, 154 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 185 SdHoareTripleChecker+Valid, 80 SdHoareTripleChecker+Invalid, 252 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 154 IncrementalHoareTripleChecker+Valid, 98 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-07 12:29:56,024 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [185 Valid, 80 Invalid, 252 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [154 Valid, 98 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-07 12:29:56,035 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 95 states. [2022-04-07 12:29:56,060 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 95 to 88. [2022-04-07 12:29:56,061 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 12:29:56,062 INFO L82 GeneralOperation]: Start isEquivalent. First operand 95 states. Second operand has 88 states, 53 states have (on average 1.150943396226415) internal successors, (61), 53 states have internal predecessors, (61), 25 states have call successors, (25), 11 states have call predecessors, (25), 9 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-07 12:29:56,063 INFO L74 IsIncluded]: Start isIncluded. First operand 95 states. Second operand has 88 states, 53 states have (on average 1.150943396226415) internal successors, (61), 53 states have internal predecessors, (61), 25 states have call successors, (25), 11 states have call predecessors, (25), 9 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-07 12:29:56,063 INFO L87 Difference]: Start difference. First operand 95 states. Second operand has 88 states, 53 states have (on average 1.150943396226415) internal successors, (61), 53 states have internal predecessors, (61), 25 states have call successors, (25), 11 states have call predecessors, (25), 9 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-07 12:29:56,071 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 12:29:56,072 INFO L93 Difference]: Finished difference Result 95 states and 121 transitions. [2022-04-07 12:29:56,072 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 121 transitions. [2022-04-07 12:29:56,074 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 12:29:56,074 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 12:29:56,074 INFO L74 IsIncluded]: Start isIncluded. First operand has 88 states, 53 states have (on average 1.150943396226415) internal successors, (61), 53 states have internal predecessors, (61), 25 states have call successors, (25), 11 states have call predecessors, (25), 9 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) Second operand 95 states. [2022-04-07 12:29:56,075 INFO L87 Difference]: Start difference. First operand has 88 states, 53 states have (on average 1.150943396226415) internal successors, (61), 53 states have internal predecessors, (61), 25 states have call successors, (25), 11 states have call predecessors, (25), 9 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) Second operand 95 states. [2022-04-07 12:29:56,081 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 12:29:56,081 INFO L93 Difference]: Finished difference Result 95 states and 121 transitions. [2022-04-07 12:29:56,081 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 121 transitions. [2022-04-07 12:29:56,083 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 12:29:56,083 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 12:29:56,083 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 12:29:56,083 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 12:29:56,083 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 88 states, 53 states have (on average 1.150943396226415) internal successors, (61), 53 states have internal predecessors, (61), 25 states have call successors, (25), 11 states have call predecessors, (25), 9 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-07 12:29:56,087 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 88 states to 88 states and 109 transitions. [2022-04-07 12:29:56,089 INFO L78 Accepts]: Start accepts. Automaton has 88 states and 109 transitions. Word has length 44 [2022-04-07 12:29:56,089 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 12:29:56,089 INFO L478 AbstractCegarLoop]: Abstraction has 88 states and 109 transitions. [2022-04-07 12:29:56,089 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 4.5) internal successors, (27), 2 states have internal predecessors, (27), 2 states have call successors, (10), 6 states have call predecessors, (10), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-07 12:29:56,089 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 109 transitions. [2022-04-07 12:29:56,091 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-04-07 12:29:56,091 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 12:29:56,091 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 12:29:56,091 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-07 12:29:56,091 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 12:29:56,091 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 12:29:56,091 INFO L85 PathProgramCache]: Analyzing trace with hash -152757941, now seen corresponding path program 1 times [2022-04-07 12:29:56,092 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 12:29:56,092 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1605297619] [2022-04-07 12:29:56,092 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 12:29:56,092 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 12:29:56,118 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:29:56,156 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-07 12:29:56,157 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:29:56,160 INFO L290 TraceCheckUtils]: 0: Hoare triple {709#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(26, 2);call #Ultimate.allocInit(12, 3); {680#true} is VALID [2022-04-07 12:29:56,160 INFO L290 TraceCheckUtils]: 1: Hoare triple {680#true} assume true; {680#true} is VALID [2022-04-07 12:29:56,160 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {680#true} {680#true} #181#return; {680#true} is VALID [2022-04-07 12:29:56,168 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 5 [2022-04-07 12:29:56,169 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:29:56,172 INFO L290 TraceCheckUtils]: 0: Hoare triple {710#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} assume 0 != #t~nondet5 % 256;havoc #t~nondet5;#res.base, #res.offset := 0, 0; {680#true} is VALID [2022-04-07 12:29:56,172 INFO L290 TraceCheckUtils]: 1: Hoare triple {680#true} assume true; {680#true} is VALID [2022-04-07 12:29:56,172 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {680#true} {680#true} #139#return; {680#true} is VALID [2022-04-07 12:29:56,172 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-07 12:29:56,173 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:29:56,175 INFO L290 TraceCheckUtils]: 0: Hoare triple {680#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {680#true} is VALID [2022-04-07 12:29:56,175 INFO L290 TraceCheckUtils]: 1: Hoare triple {680#true} assume ~n.base == 0 && ~n.offset == 0;#res := 2147483647; {680#true} is VALID [2022-04-07 12:29:56,175 INFO L290 TraceCheckUtils]: 2: Hoare triple {680#true} assume true; {680#true} is VALID [2022-04-07 12:29:56,175 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {680#true} {680#true} #151#return; {680#true} is VALID [2022-04-07 12:29:56,175 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-07 12:29:56,176 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:29:56,184 INFO L290 TraceCheckUtils]: 0: Hoare triple {680#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {680#true} is VALID [2022-04-07 12:29:56,185 INFO L290 TraceCheckUtils]: 1: Hoare triple {680#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {711#(= |size_#res| 0)} is VALID [2022-04-07 12:29:56,185 INFO L290 TraceCheckUtils]: 2: Hoare triple {711#(= |size_#res| 0)} assume true; {711#(= |size_#res| 0)} is VALID [2022-04-07 12:29:56,186 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {711#(= |size_#res| 0)} {680#true} #153#return; {696#(= |task_#t~ret32| 0)} is VALID [2022-04-07 12:29:56,186 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 23 [2022-04-07 12:29:56,187 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:29:56,202 INFO L290 TraceCheckUtils]: 0: Hoare triple {680#true} ~cond := #in~cond; {712#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 12:29:56,205 INFO L290 TraceCheckUtils]: 1: Hoare triple {712#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {713#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 12:29:56,206 INFO L290 TraceCheckUtils]: 2: Hoare triple {713#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {713#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 12:29:56,206 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {713#(not (= |assume_abort_if_not_#in~cond| 0))} {697#(= task_~n~1 0)} #155#return; {681#false} is VALID [2022-04-07 12:29:56,211 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 29 [2022-04-07 12:29:56,212 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:29:56,218 INFO L290 TraceCheckUtils]: 0: Hoare triple {714#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {680#true} is VALID [2022-04-07 12:29:56,218 INFO L290 TraceCheckUtils]: 1: Hoare triple {680#true} assume true; {680#true} is VALID [2022-04-07 12:29:56,218 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {680#true} {681#false} #157#return; {681#false} is VALID [2022-04-07 12:29:56,226 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 34 [2022-04-07 12:29:56,227 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:29:56,229 INFO L290 TraceCheckUtils]: 0: Hoare triple {715#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~t.base, ~t.offset := #in~t.base, #in~t.offset;~a.base, ~a.offset := #in~a.base, #in~a.offset;~i := #in~i; {680#true} is VALID [2022-04-07 12:29:56,229 INFO L290 TraceCheckUtils]: 1: Hoare triple {680#true} assume ~t.base == 0 && ~t.offset == 0;#res := ~i; {680#true} is VALID [2022-04-07 12:29:56,229 INFO L290 TraceCheckUtils]: 2: Hoare triple {680#true} assume true; {680#true} is VALID [2022-04-07 12:29:56,229 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {680#true} {681#false} #159#return; {681#false} is VALID [2022-04-07 12:29:56,230 INFO L272 TraceCheckUtils]: 0: Hoare triple {680#true} call ULTIMATE.init(); {709#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-07 12:29:56,230 INFO L290 TraceCheckUtils]: 1: Hoare triple {709#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(26, 2);call #Ultimate.allocInit(12, 3); {680#true} is VALID [2022-04-07 12:29:56,230 INFO L290 TraceCheckUtils]: 2: Hoare triple {680#true} assume true; {680#true} is VALID [2022-04-07 12:29:56,230 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {680#true} {680#true} #181#return; {680#true} is VALID [2022-04-07 12:29:56,230 INFO L272 TraceCheckUtils]: 4: Hoare triple {680#true} call #t~ret45 := main(); {680#true} is VALID [2022-04-07 12:29:56,231 INFO L272 TraceCheckUtils]: 5: Hoare triple {680#true} call #t~ret44.base, #t~ret44.offset := nondet_tree(); {710#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} is VALID [2022-04-07 12:29:56,231 INFO L290 TraceCheckUtils]: 6: Hoare triple {710#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} assume 0 != #t~nondet5 % 256;havoc #t~nondet5;#res.base, #res.offset := 0, 0; {680#true} is VALID [2022-04-07 12:29:56,231 INFO L290 TraceCheckUtils]: 7: Hoare triple {680#true} assume true; {680#true} is VALID [2022-04-07 12:29:56,231 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {680#true} {680#true} #139#return; {680#true} is VALID [2022-04-07 12:29:56,231 INFO L272 TraceCheckUtils]: 9: Hoare triple {680#true} call task(#t~ret44.base, #t~ret44.offset); {680#true} is VALID [2022-04-07 12:29:56,231 INFO L290 TraceCheckUtils]: 10: Hoare triple {680#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {680#true} is VALID [2022-04-07 12:29:56,231 INFO L272 TraceCheckUtils]: 11: Hoare triple {680#true} call #t~ret31 := min(~t.base, ~t.offset); {680#true} is VALID [2022-04-07 12:29:56,231 INFO L290 TraceCheckUtils]: 12: Hoare triple {680#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {680#true} is VALID [2022-04-07 12:29:56,232 INFO L290 TraceCheckUtils]: 13: Hoare triple {680#true} assume ~n.base == 0 && ~n.offset == 0;#res := 2147483647; {680#true} is VALID [2022-04-07 12:29:56,232 INFO L290 TraceCheckUtils]: 14: Hoare triple {680#true} assume true; {680#true} is VALID [2022-04-07 12:29:56,232 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {680#true} {680#true} #151#return; {680#true} is VALID [2022-04-07 12:29:56,232 INFO L290 TraceCheckUtils]: 16: Hoare triple {680#true} assume -2147483648 <= #t~ret31 && #t~ret31 <= 2147483647;~a~1 := #t~ret31;havoc #t~ret31;call ~#b~1.base, ~#b~1.offset := #Ultimate.allocOnStack(4); {680#true} is VALID [2022-04-07 12:29:56,232 INFO L272 TraceCheckUtils]: 17: Hoare triple {680#true} call #t~ret32 := size(~t.base, ~t.offset); {680#true} is VALID [2022-04-07 12:29:56,232 INFO L290 TraceCheckUtils]: 18: Hoare triple {680#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {680#true} is VALID [2022-04-07 12:29:56,232 INFO L290 TraceCheckUtils]: 19: Hoare triple {680#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {711#(= |size_#res| 0)} is VALID [2022-04-07 12:29:56,233 INFO L290 TraceCheckUtils]: 20: Hoare triple {711#(= |size_#res| 0)} assume true; {711#(= |size_#res| 0)} is VALID [2022-04-07 12:29:56,233 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {711#(= |size_#res| 0)} {680#true} #153#return; {696#(= |task_#t~ret32| 0)} is VALID [2022-04-07 12:29:56,234 INFO L290 TraceCheckUtils]: 22: Hoare triple {696#(= |task_#t~ret32| 0)} assume -2147483648 <= #t~ret32 && #t~ret32 <= 2147483647;~n~1 := #t~ret32;havoc #t~ret32; {697#(= task_~n~1 0)} is VALID [2022-04-07 12:29:56,234 INFO L272 TraceCheckUtils]: 23: Hoare triple {697#(= task_~n~1 0)} call assume_abort_if_not((if 0 != ~n~1 then 1 else 0)); {680#true} is VALID [2022-04-07 12:29:56,234 INFO L290 TraceCheckUtils]: 24: Hoare triple {680#true} ~cond := #in~cond; {712#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 12:29:56,234 INFO L290 TraceCheckUtils]: 25: Hoare triple {712#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {713#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 12:29:56,235 INFO L290 TraceCheckUtils]: 26: Hoare triple {713#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {713#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 12:29:56,235 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {713#(not (= |assume_abort_if_not_#in~cond| 0))} {697#(= task_~n~1 0)} #155#return; {681#false} is VALID [2022-04-07 12:29:56,235 INFO L290 TraceCheckUtils]: 28: Hoare triple {681#false} call #t~malloc33.base, #t~malloc33.offset := #Ultimate.allocOnHeap(4 * ~n~1); {681#false} is VALID [2022-04-07 12:29:56,235 INFO L272 TraceCheckUtils]: 29: Hoare triple {681#false} call #Ultimate.meminit(#t~malloc33.base, #t~malloc33.offset, ~n~1, 4, 4 * ~n~1); {714#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-04-07 12:29:56,235 INFO L290 TraceCheckUtils]: 30: Hoare triple {714#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {680#true} is VALID [2022-04-07 12:29:56,235 INFO L290 TraceCheckUtils]: 31: Hoare triple {680#true} assume true; {680#true} is VALID [2022-04-07 12:29:56,236 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {680#true} {681#false} #157#return; {681#false} is VALID [2022-04-07 12:29:56,236 INFO L290 TraceCheckUtils]: 33: Hoare triple {681#false} ~x~0.base, ~x~0.offset := #t~malloc33.base, #t~malloc33.offset; {681#false} is VALID [2022-04-07 12:29:56,236 INFO L272 TraceCheckUtils]: 34: Hoare triple {681#false} call #t~ret34 := tree_inorder(~t.base, ~t.offset, ~x~0.base, ~x~0.offset, ~n~1); {715#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2022-04-07 12:29:56,236 INFO L290 TraceCheckUtils]: 35: Hoare triple {715#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~t.base, ~t.offset := #in~t.base, #in~t.offset;~a.base, ~a.offset := #in~a.base, #in~a.offset;~i := #in~i; {680#true} is VALID [2022-04-07 12:29:56,236 INFO L290 TraceCheckUtils]: 36: Hoare triple {680#true} assume ~t.base == 0 && ~t.offset == 0;#res := ~i; {680#true} is VALID [2022-04-07 12:29:56,236 INFO L290 TraceCheckUtils]: 37: Hoare triple {680#true} assume true; {680#true} is VALID [2022-04-07 12:29:56,236 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {680#true} {681#false} #159#return; {681#false} is VALID [2022-04-07 12:29:56,236 INFO L290 TraceCheckUtils]: 39: Hoare triple {681#false} assume -2147483648 <= #t~ret34 && #t~ret34 <= 2147483647;havoc #t~ret34;call #t~mem35 := read~int(~x~0.base, ~x~0.offset, 4); {681#false} is VALID [2022-04-07 12:29:56,236 INFO L272 TraceCheckUtils]: 40: Hoare triple {681#false} call __VERIFIER_assert((if ~a~1 == #t~mem35 then 1 else 0)); {681#false} is VALID [2022-04-07 12:29:56,236 INFO L290 TraceCheckUtils]: 41: Hoare triple {681#false} ~cond := #in~cond; {681#false} is VALID [2022-04-07 12:29:56,237 INFO L290 TraceCheckUtils]: 42: Hoare triple {681#false} assume 0 == ~cond; {681#false} is VALID [2022-04-07 12:29:56,237 INFO L290 TraceCheckUtils]: 43: Hoare triple {681#false} assume !false; {681#false} is VALID [2022-04-07 12:29:56,237 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-07 12:29:56,237 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 12:29:56,237 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1605297619] [2022-04-07 12:29:56,237 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1605297619] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 12:29:56,237 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 12:29:56,237 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-07 12:29:56,237 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1706494784] [2022-04-07 12:29:56,238 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 12:29:56,239 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 2.7) internal successors, (27), 6 states have internal predecessors, (27), 3 states have call successors, (10), 6 states have call predecessors, (10), 3 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) Word has length 44 [2022-04-07 12:29:56,239 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 12:29:56,239 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 10 states have (on average 2.7) internal successors, (27), 6 states have internal predecessors, (27), 3 states have call successors, (10), 6 states have call predecessors, (10), 3 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-07 12:29:56,263 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 12:29:56,263 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-07 12:29:56,264 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 12:29:56,264 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-07 12:29:56,264 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=88, Unknown=0, NotChecked=0, Total=110 [2022-04-07 12:29:56,264 INFO L87 Difference]: Start difference. First operand 88 states and 109 transitions. Second operand has 11 states, 10 states have (on average 2.7) internal successors, (27), 6 states have internal predecessors, (27), 3 states have call successors, (10), 6 states have call predecessors, (10), 3 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-07 12:29:58,038 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 12:29:58,038 INFO L93 Difference]: Finished difference Result 154 states and 197 transitions. [2022-04-07 12:29:58,038 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-07 12:29:58,039 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 2.7) internal successors, (27), 6 states have internal predecessors, (27), 3 states have call successors, (10), 6 states have call predecessors, (10), 3 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) Word has length 44 [2022-04-07 12:29:58,039 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 12:29:58,039 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 2.7) internal successors, (27), 6 states have internal predecessors, (27), 3 states have call successors, (10), 6 states have call predecessors, (10), 3 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-07 12:29:58,051 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 197 transitions. [2022-04-07 12:29:58,052 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 2.7) internal successors, (27), 6 states have internal predecessors, (27), 3 states have call successors, (10), 6 states have call predecessors, (10), 3 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-07 12:29:58,055 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 197 transitions. [2022-04-07 12:29:58,055 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 197 transitions. [2022-04-07 12:29:58,259 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 197 edges. 197 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 12:29:58,263 INFO L225 Difference]: With dead ends: 154 [2022-04-07 12:29:58,263 INFO L226 Difference]: Without dead ends: 97 [2022-04-07 12:29:58,264 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 29 GetRequests, 13 SyntacticMatches, 0 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 15 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=77, Invalid=229, Unknown=0, NotChecked=0, Total=306 [2022-04-07 12:29:58,264 INFO L913 BasicCegarLoop]: 69 mSDtfsCounter, 131 mSDsluCounter, 10 mSDsCounter, 0 mSdLazyCounter, 658 mSolverCounterSat, 128 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 149 SdHoareTripleChecker+Valid, 79 SdHoareTripleChecker+Invalid, 786 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 128 IncrementalHoareTripleChecker+Valid, 658 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-04-07 12:29:58,265 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [149 Valid, 79 Invalid, 786 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [128 Valid, 658 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-04-07 12:29:58,265 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 97 states. [2022-04-07 12:29:58,276 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 97 to 90. [2022-04-07 12:29:58,276 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 12:29:58,276 INFO L82 GeneralOperation]: Start isEquivalent. First operand 97 states. Second operand has 90 states, 54 states have (on average 1.1481481481481481) internal successors, (62), 55 states have internal predecessors, (62), 25 states have call successors, (25), 11 states have call predecessors, (25), 10 states have return successors, (26), 23 states have call predecessors, (26), 23 states have call successors, (26) [2022-04-07 12:29:58,277 INFO L74 IsIncluded]: Start isIncluded. First operand 97 states. Second operand has 90 states, 54 states have (on average 1.1481481481481481) internal successors, (62), 55 states have internal predecessors, (62), 25 states have call successors, (25), 11 states have call predecessors, (25), 10 states have return successors, (26), 23 states have call predecessors, (26), 23 states have call successors, (26) [2022-04-07 12:29:58,277 INFO L87 Difference]: Start difference. First operand 97 states. Second operand has 90 states, 54 states have (on average 1.1481481481481481) internal successors, (62), 55 states have internal predecessors, (62), 25 states have call successors, (25), 11 states have call predecessors, (25), 10 states have return successors, (26), 23 states have call predecessors, (26), 23 states have call successors, (26) [2022-04-07 12:29:58,281 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 12:29:58,281 INFO L93 Difference]: Finished difference Result 97 states and 125 transitions. [2022-04-07 12:29:58,281 INFO L276 IsEmpty]: Start isEmpty. Operand 97 states and 125 transitions. [2022-04-07 12:29:58,282 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 12:29:58,282 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 12:29:58,282 INFO L74 IsIncluded]: Start isIncluded. First operand has 90 states, 54 states have (on average 1.1481481481481481) internal successors, (62), 55 states have internal predecessors, (62), 25 states have call successors, (25), 11 states have call predecessors, (25), 10 states have return successors, (26), 23 states have call predecessors, (26), 23 states have call successors, (26) Second operand 97 states. [2022-04-07 12:29:58,283 INFO L87 Difference]: Start difference. First operand has 90 states, 54 states have (on average 1.1481481481481481) internal successors, (62), 55 states have internal predecessors, (62), 25 states have call successors, (25), 11 states have call predecessors, (25), 10 states have return successors, (26), 23 states have call predecessors, (26), 23 states have call successors, (26) Second operand 97 states. [2022-04-07 12:29:58,286 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 12:29:58,286 INFO L93 Difference]: Finished difference Result 97 states and 125 transitions. [2022-04-07 12:29:58,286 INFO L276 IsEmpty]: Start isEmpty. Operand 97 states and 125 transitions. [2022-04-07 12:29:58,287 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 12:29:58,293 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 12:29:58,293 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 12:29:58,293 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 12:29:58,293 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 90 states, 54 states have (on average 1.1481481481481481) internal successors, (62), 55 states have internal predecessors, (62), 25 states have call successors, (25), 11 states have call predecessors, (25), 10 states have return successors, (26), 23 states have call predecessors, (26), 23 states have call successors, (26) [2022-04-07 12:29:58,297 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 90 states to 90 states and 113 transitions. [2022-04-07 12:29:58,297 INFO L78 Accepts]: Start accepts. Automaton has 90 states and 113 transitions. Word has length 44 [2022-04-07 12:29:58,297 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 12:29:58,297 INFO L478 AbstractCegarLoop]: Abstraction has 90 states and 113 transitions. [2022-04-07 12:29:58,297 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 10 states have (on average 2.7) internal successors, (27), 6 states have internal predecessors, (27), 3 states have call successors, (10), 6 states have call predecessors, (10), 3 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-07 12:29:58,298 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 113 transitions. [2022-04-07 12:29:58,298 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 57 [2022-04-07 12:29:58,298 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 12:29:58,299 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 12:29:58,299 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-04-07 12:29:58,299 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 12:29:58,299 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 12:29:58,299 INFO L85 PathProgramCache]: Analyzing trace with hash 2001282500, now seen corresponding path program 1 times [2022-04-07 12:29:58,299 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 12:29:58,299 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1873322201] [2022-04-07 12:29:58,300 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 12:29:58,300 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 12:29:58,331 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:29:58,385 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-07 12:29:58,387 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:29:58,391 INFO L290 TraceCheckUtils]: 0: Hoare triple {1311#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(26, 2);call #Ultimate.allocInit(12, 3); {1269#true} is VALID [2022-04-07 12:29:58,391 INFO L290 TraceCheckUtils]: 1: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-07 12:29:58,391 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {1269#true} {1269#true} #181#return; {1269#true} is VALID [2022-04-07 12:29:58,399 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 5 [2022-04-07 12:29:58,401 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:29:58,428 INFO L290 TraceCheckUtils]: 0: Hoare triple {1312#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} assume 0 != #t~nondet5 % 256;havoc #t~nondet5;#res.base, #res.offset := 0, 0; {1313#(and (<= |nondet_tree_#res.offset| 0) (<= 0 |nondet_tree_#res.offset|) (<= |nondet_tree_#res.base| 0) (<= 0 |nondet_tree_#res.base|))} is VALID [2022-04-07 12:29:58,428 INFO L290 TraceCheckUtils]: 1: Hoare triple {1313#(and (<= |nondet_tree_#res.offset| 0) (<= 0 |nondet_tree_#res.offset|) (<= |nondet_tree_#res.base| 0) (<= 0 |nondet_tree_#res.base|))} assume true; {1313#(and (<= |nondet_tree_#res.offset| 0) (<= 0 |nondet_tree_#res.offset|) (<= |nondet_tree_#res.base| 0) (<= 0 |nondet_tree_#res.base|))} is VALID [2022-04-07 12:29:58,429 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {1313#(and (<= |nondet_tree_#res.offset| 0) (<= 0 |nondet_tree_#res.offset|) (<= |nondet_tree_#res.base| 0) (<= 0 |nondet_tree_#res.base|))} {1269#true} #139#return; {1277#(and (= |main_#t~ret44.offset| 0) (= |main_#t~ret44.base| 0))} is VALID [2022-04-07 12:29:58,429 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-07 12:29:58,430 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:29:58,436 INFO L290 TraceCheckUtils]: 0: Hoare triple {1269#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {1269#true} is VALID [2022-04-07 12:29:58,436 INFO L290 TraceCheckUtils]: 1: Hoare triple {1269#true} assume ~n.base == 0 && ~n.offset == 0;#res := 2147483647; {1269#true} is VALID [2022-04-07 12:29:58,436 INFO L290 TraceCheckUtils]: 2: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-07 12:29:58,436 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1269#true} {1279#(and (= task_~t.offset 0) (= task_~t.base 0))} #151#return; {1279#(and (= task_~t.offset 0) (= task_~t.base 0))} is VALID [2022-04-07 12:29:58,437 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-07 12:29:58,441 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:29:58,506 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-04-07 12:29:58,508 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:29:58,511 INFO L290 TraceCheckUtils]: 0: Hoare triple {1269#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1269#true} is VALID [2022-04-07 12:29:58,511 INFO L290 TraceCheckUtils]: 1: Hoare triple {1269#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {1269#true} is VALID [2022-04-07 12:29:58,511 INFO L290 TraceCheckUtils]: 2: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-07 12:29:58,512 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1269#true} {1315#(or (not (= |size_#in~t.base| 0)) (and (not (= size_~t.offset 0)) (= |size_#in~t.offset| size_~t.offset)))} #177#return; {1315#(or (not (= |size_#in~t.base| 0)) (and (not (= size_~t.offset 0)) (= |size_#in~t.offset| size_~t.offset)))} is VALID [2022-04-07 12:29:58,512 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 8 [2022-04-07 12:29:58,513 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:29:58,516 INFO L290 TraceCheckUtils]: 0: Hoare triple {1269#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1269#true} is VALID [2022-04-07 12:29:58,516 INFO L290 TraceCheckUtils]: 1: Hoare triple {1269#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {1269#true} is VALID [2022-04-07 12:29:58,516 INFO L290 TraceCheckUtils]: 2: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-07 12:29:58,517 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1269#true} {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} #179#return; {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-07 12:29:58,517 INFO L290 TraceCheckUtils]: 0: Hoare triple {1269#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1314#(and (or (= size_~t.offset 0) (= |size_#in~t.offset| size_~t.offset)) (= |size_#in~t.base| size_~t.base))} is VALID [2022-04-07 12:29:58,518 INFO L290 TraceCheckUtils]: 1: Hoare triple {1314#(and (or (= size_~t.offset 0) (= |size_#in~t.offset| size_~t.offset)) (= |size_#in~t.base| size_~t.base))} assume !(~t.base == 0 && ~t.offset == 0);call #t~mem27.base, #t~mem27.offset := read~$Pointer$(~t.base, 4 + ~t.offset, 4); {1315#(or (not (= |size_#in~t.base| 0)) (and (not (= size_~t.offset 0)) (= |size_#in~t.offset| size_~t.offset)))} is VALID [2022-04-07 12:29:58,518 INFO L272 TraceCheckUtils]: 2: Hoare triple {1315#(or (not (= |size_#in~t.base| 0)) (and (not (= size_~t.offset 0)) (= |size_#in~t.offset| size_~t.offset)))} call #t~ret28 := size(#t~mem27.base, #t~mem27.offset); {1269#true} is VALID [2022-04-07 12:29:58,518 INFO L290 TraceCheckUtils]: 3: Hoare triple {1269#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1269#true} is VALID [2022-04-07 12:29:58,519 INFO L290 TraceCheckUtils]: 4: Hoare triple {1269#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {1269#true} is VALID [2022-04-07 12:29:58,519 INFO L290 TraceCheckUtils]: 5: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-07 12:29:58,519 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {1269#true} {1315#(or (not (= |size_#in~t.base| 0)) (and (not (= size_~t.offset 0)) (= |size_#in~t.offset| size_~t.offset)))} #177#return; {1315#(or (not (= |size_#in~t.base| 0)) (and (not (= size_~t.offset 0)) (= |size_#in~t.offset| size_~t.offset)))} is VALID [2022-04-07 12:29:58,520 INFO L290 TraceCheckUtils]: 7: Hoare triple {1315#(or (not (= |size_#in~t.base| 0)) (and (not (= size_~t.offset 0)) (= |size_#in~t.offset| size_~t.offset)))} assume -2147483648 <= #t~ret28 && #t~ret28 <= 2147483647;call #t~mem29.base, #t~mem29.offset := read~$Pointer$(~t.base, 8 + ~t.offset, 4); {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-07 12:29:58,520 INFO L272 TraceCheckUtils]: 8: Hoare triple {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} call #t~ret30 := size(#t~mem29.base, #t~mem29.offset); {1269#true} is VALID [2022-04-07 12:29:58,520 INFO L290 TraceCheckUtils]: 9: Hoare triple {1269#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1269#true} is VALID [2022-04-07 12:29:58,520 INFO L290 TraceCheckUtils]: 10: Hoare triple {1269#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {1269#true} is VALID [2022-04-07 12:29:58,520 INFO L290 TraceCheckUtils]: 11: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-07 12:29:58,521 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {1269#true} {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} #179#return; {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-07 12:29:58,521 INFO L290 TraceCheckUtils]: 13: Hoare triple {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} assume -2147483648 <= #t~ret30 && #t~ret30 <= 2147483647;#res := 1 + (#t~ret28 + #t~ret30);havoc #t~mem27.base, #t~mem27.offset;havoc #t~ret28;havoc #t~mem29.base, #t~mem29.offset;havoc #t~ret30; {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-07 12:29:58,522 INFO L290 TraceCheckUtils]: 14: Hoare triple {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} assume true; {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-07 12:29:58,522 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} {1279#(and (= task_~t.offset 0) (= task_~t.base 0))} #153#return; {1270#false} is VALID [2022-04-07 12:29:58,522 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 35 [2022-04-07 12:29:58,523 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:29:58,525 INFO L290 TraceCheckUtils]: 0: Hoare triple {1269#true} ~cond := #in~cond; {1269#true} is VALID [2022-04-07 12:29:58,525 INFO L290 TraceCheckUtils]: 1: Hoare triple {1269#true} assume !(0 == ~cond); {1269#true} is VALID [2022-04-07 12:29:58,525 INFO L290 TraceCheckUtils]: 2: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-07 12:29:58,526 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1269#true} {1270#false} #155#return; {1270#false} is VALID [2022-04-07 12:29:58,532 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 41 [2022-04-07 12:29:58,534 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:29:58,537 INFO L290 TraceCheckUtils]: 0: Hoare triple {1325#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {1269#true} is VALID [2022-04-07 12:29:58,537 INFO L290 TraceCheckUtils]: 1: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-07 12:29:58,537 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {1269#true} {1270#false} #157#return; {1270#false} is VALID [2022-04-07 12:29:58,548 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 46 [2022-04-07 12:29:58,550 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:29:58,558 INFO L290 TraceCheckUtils]: 0: Hoare triple {1326#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~t.base, ~t.offset := #in~t.base, #in~t.offset;~a.base, ~a.offset := #in~a.base, #in~a.offset;~i := #in~i; {1269#true} is VALID [2022-04-07 12:29:58,558 INFO L290 TraceCheckUtils]: 1: Hoare triple {1269#true} assume ~t.base == 0 && ~t.offset == 0;#res := ~i; {1269#true} is VALID [2022-04-07 12:29:58,558 INFO L290 TraceCheckUtils]: 2: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-07 12:29:58,558 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1269#true} {1270#false} #159#return; {1270#false} is VALID [2022-04-07 12:29:58,561 INFO L272 TraceCheckUtils]: 0: Hoare triple {1269#true} call ULTIMATE.init(); {1311#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-07 12:29:58,561 INFO L290 TraceCheckUtils]: 1: Hoare triple {1311#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(26, 2);call #Ultimate.allocInit(12, 3); {1269#true} is VALID [2022-04-07 12:29:58,561 INFO L290 TraceCheckUtils]: 2: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-07 12:29:58,561 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1269#true} {1269#true} #181#return; {1269#true} is VALID [2022-04-07 12:29:58,561 INFO L272 TraceCheckUtils]: 4: Hoare triple {1269#true} call #t~ret45 := main(); {1269#true} is VALID [2022-04-07 12:29:58,562 INFO L272 TraceCheckUtils]: 5: Hoare triple {1269#true} call #t~ret44.base, #t~ret44.offset := nondet_tree(); {1312#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} is VALID [2022-04-07 12:29:58,562 INFO L290 TraceCheckUtils]: 6: Hoare triple {1312#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} assume 0 != #t~nondet5 % 256;havoc #t~nondet5;#res.base, #res.offset := 0, 0; {1313#(and (<= |nondet_tree_#res.offset| 0) (<= 0 |nondet_tree_#res.offset|) (<= |nondet_tree_#res.base| 0) (<= 0 |nondet_tree_#res.base|))} is VALID [2022-04-07 12:29:58,563 INFO L290 TraceCheckUtils]: 7: Hoare triple {1313#(and (<= |nondet_tree_#res.offset| 0) (<= 0 |nondet_tree_#res.offset|) (<= |nondet_tree_#res.base| 0) (<= 0 |nondet_tree_#res.base|))} assume true; {1313#(and (<= |nondet_tree_#res.offset| 0) (<= 0 |nondet_tree_#res.offset|) (<= |nondet_tree_#res.base| 0) (<= 0 |nondet_tree_#res.base|))} is VALID [2022-04-07 12:29:58,563 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {1313#(and (<= |nondet_tree_#res.offset| 0) (<= 0 |nondet_tree_#res.offset|) (<= |nondet_tree_#res.base| 0) (<= 0 |nondet_tree_#res.base|))} {1269#true} #139#return; {1277#(and (= |main_#t~ret44.offset| 0) (= |main_#t~ret44.base| 0))} is VALID [2022-04-07 12:29:58,564 INFO L272 TraceCheckUtils]: 9: Hoare triple {1277#(and (= |main_#t~ret44.offset| 0) (= |main_#t~ret44.base| 0))} call task(#t~ret44.base, #t~ret44.offset); {1278#(and (= |task_#in~t.base| 0) (= |task_#in~t.offset| 0))} is VALID [2022-04-07 12:29:58,564 INFO L290 TraceCheckUtils]: 10: Hoare triple {1278#(and (= |task_#in~t.base| 0) (= |task_#in~t.offset| 0))} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1279#(and (= task_~t.offset 0) (= task_~t.base 0))} is VALID [2022-04-07 12:29:58,564 INFO L272 TraceCheckUtils]: 11: Hoare triple {1279#(and (= task_~t.offset 0) (= task_~t.base 0))} call #t~ret31 := min(~t.base, ~t.offset); {1269#true} is VALID [2022-04-07 12:29:58,565 INFO L290 TraceCheckUtils]: 12: Hoare triple {1269#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {1269#true} is VALID [2022-04-07 12:29:58,565 INFO L290 TraceCheckUtils]: 13: Hoare triple {1269#true} assume ~n.base == 0 && ~n.offset == 0;#res := 2147483647; {1269#true} is VALID [2022-04-07 12:29:58,565 INFO L290 TraceCheckUtils]: 14: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-07 12:29:58,565 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1269#true} {1279#(and (= task_~t.offset 0) (= task_~t.base 0))} #151#return; {1279#(and (= task_~t.offset 0) (= task_~t.base 0))} is VALID [2022-04-07 12:29:58,566 INFO L290 TraceCheckUtils]: 16: Hoare triple {1279#(and (= task_~t.offset 0) (= task_~t.base 0))} assume -2147483648 <= #t~ret31 && #t~ret31 <= 2147483647;~a~1 := #t~ret31;havoc #t~ret31;call ~#b~1.base, ~#b~1.offset := #Ultimate.allocOnStack(4); {1279#(and (= task_~t.offset 0) (= task_~t.base 0))} is VALID [2022-04-07 12:29:58,567 INFO L272 TraceCheckUtils]: 17: Hoare triple {1279#(and (= task_~t.offset 0) (= task_~t.base 0))} call #t~ret32 := size(~t.base, ~t.offset); {1269#true} is VALID [2022-04-07 12:29:58,568 INFO L290 TraceCheckUtils]: 18: Hoare triple {1269#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1314#(and (or (= size_~t.offset 0) (= |size_#in~t.offset| size_~t.offset)) (= |size_#in~t.base| size_~t.base))} is VALID [2022-04-07 12:29:58,568 INFO L290 TraceCheckUtils]: 19: Hoare triple {1314#(and (or (= size_~t.offset 0) (= |size_#in~t.offset| size_~t.offset)) (= |size_#in~t.base| size_~t.base))} assume !(~t.base == 0 && ~t.offset == 0);call #t~mem27.base, #t~mem27.offset := read~$Pointer$(~t.base, 4 + ~t.offset, 4); {1315#(or (not (= |size_#in~t.base| 0)) (and (not (= size_~t.offset 0)) (= |size_#in~t.offset| size_~t.offset)))} is VALID [2022-04-07 12:29:58,568 INFO L272 TraceCheckUtils]: 20: Hoare triple {1315#(or (not (= |size_#in~t.base| 0)) (and (not (= size_~t.offset 0)) (= |size_#in~t.offset| size_~t.offset)))} call #t~ret28 := size(#t~mem27.base, #t~mem27.offset); {1269#true} is VALID [2022-04-07 12:29:58,569 INFO L290 TraceCheckUtils]: 21: Hoare triple {1269#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1269#true} is VALID [2022-04-07 12:29:58,569 INFO L290 TraceCheckUtils]: 22: Hoare triple {1269#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {1269#true} is VALID [2022-04-07 12:29:58,569 INFO L290 TraceCheckUtils]: 23: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-07 12:29:58,570 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {1269#true} {1315#(or (not (= |size_#in~t.base| 0)) (and (not (= size_~t.offset 0)) (= |size_#in~t.offset| size_~t.offset)))} #177#return; {1315#(or (not (= |size_#in~t.base| 0)) (and (not (= size_~t.offset 0)) (= |size_#in~t.offset| size_~t.offset)))} is VALID [2022-04-07 12:29:58,570 INFO L290 TraceCheckUtils]: 25: Hoare triple {1315#(or (not (= |size_#in~t.base| 0)) (and (not (= size_~t.offset 0)) (= |size_#in~t.offset| size_~t.offset)))} assume -2147483648 <= #t~ret28 && #t~ret28 <= 2147483647;call #t~mem29.base, #t~mem29.offset := read~$Pointer$(~t.base, 8 + ~t.offset, 4); {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-07 12:29:58,570 INFO L272 TraceCheckUtils]: 26: Hoare triple {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} call #t~ret30 := size(#t~mem29.base, #t~mem29.offset); {1269#true} is VALID [2022-04-07 12:29:58,570 INFO L290 TraceCheckUtils]: 27: Hoare triple {1269#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1269#true} is VALID [2022-04-07 12:29:58,571 INFO L290 TraceCheckUtils]: 28: Hoare triple {1269#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {1269#true} is VALID [2022-04-07 12:29:58,571 INFO L290 TraceCheckUtils]: 29: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-07 12:29:58,581 INFO L284 TraceCheckUtils]: 30: Hoare quadruple {1269#true} {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} #179#return; {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-07 12:29:58,581 INFO L290 TraceCheckUtils]: 31: Hoare triple {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} assume -2147483648 <= #t~ret30 && #t~ret30 <= 2147483647;#res := 1 + (#t~ret28 + #t~ret30);havoc #t~mem27.base, #t~mem27.offset;havoc #t~ret28;havoc #t~mem29.base, #t~mem29.offset;havoc #t~ret30; {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-07 12:29:58,582 INFO L290 TraceCheckUtils]: 32: Hoare triple {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} assume true; {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-07 12:29:58,582 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} {1279#(and (= task_~t.offset 0) (= task_~t.base 0))} #153#return; {1270#false} is VALID [2022-04-07 12:29:58,582 INFO L290 TraceCheckUtils]: 34: Hoare triple {1270#false} assume -2147483648 <= #t~ret32 && #t~ret32 <= 2147483647;~n~1 := #t~ret32;havoc #t~ret32; {1270#false} is VALID [2022-04-07 12:29:58,582 INFO L272 TraceCheckUtils]: 35: Hoare triple {1270#false} call assume_abort_if_not((if 0 != ~n~1 then 1 else 0)); {1269#true} is VALID [2022-04-07 12:29:58,582 INFO L290 TraceCheckUtils]: 36: Hoare triple {1269#true} ~cond := #in~cond; {1269#true} is VALID [2022-04-07 12:29:58,583 INFO L290 TraceCheckUtils]: 37: Hoare triple {1269#true} assume !(0 == ~cond); {1269#true} is VALID [2022-04-07 12:29:58,583 INFO L290 TraceCheckUtils]: 38: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-07 12:29:58,583 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {1269#true} {1270#false} #155#return; {1270#false} is VALID [2022-04-07 12:29:58,583 INFO L290 TraceCheckUtils]: 40: Hoare triple {1270#false} call #t~malloc33.base, #t~malloc33.offset := #Ultimate.allocOnHeap(4 * ~n~1); {1270#false} is VALID [2022-04-07 12:29:58,583 INFO L272 TraceCheckUtils]: 41: Hoare triple {1270#false} call #Ultimate.meminit(#t~malloc33.base, #t~malloc33.offset, ~n~1, 4, 4 * ~n~1); {1325#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-04-07 12:29:58,583 INFO L290 TraceCheckUtils]: 42: Hoare triple {1325#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {1269#true} is VALID [2022-04-07 12:29:58,583 INFO L290 TraceCheckUtils]: 43: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-07 12:29:58,583 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {1269#true} {1270#false} #157#return; {1270#false} is VALID [2022-04-07 12:29:58,583 INFO L290 TraceCheckUtils]: 45: Hoare triple {1270#false} ~x~0.base, ~x~0.offset := #t~malloc33.base, #t~malloc33.offset; {1270#false} is VALID [2022-04-07 12:29:58,583 INFO L272 TraceCheckUtils]: 46: Hoare triple {1270#false} call #t~ret34 := tree_inorder(~t.base, ~t.offset, ~x~0.base, ~x~0.offset, ~n~1); {1326#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2022-04-07 12:29:58,583 INFO L290 TraceCheckUtils]: 47: Hoare triple {1326#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~t.base, ~t.offset := #in~t.base, #in~t.offset;~a.base, ~a.offset := #in~a.base, #in~a.offset;~i := #in~i; {1269#true} is VALID [2022-04-07 12:29:58,583 INFO L290 TraceCheckUtils]: 48: Hoare triple {1269#true} assume ~t.base == 0 && ~t.offset == 0;#res := ~i; {1269#true} is VALID [2022-04-07 12:29:58,584 INFO L290 TraceCheckUtils]: 49: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-07 12:29:58,584 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {1269#true} {1270#false} #159#return; {1270#false} is VALID [2022-04-07 12:29:58,584 INFO L290 TraceCheckUtils]: 51: Hoare triple {1270#false} assume -2147483648 <= #t~ret34 && #t~ret34 <= 2147483647;havoc #t~ret34;call #t~mem35 := read~int(~x~0.base, ~x~0.offset, 4); {1270#false} is VALID [2022-04-07 12:29:58,584 INFO L272 TraceCheckUtils]: 52: Hoare triple {1270#false} call __VERIFIER_assert((if ~a~1 == #t~mem35 then 1 else 0)); {1270#false} is VALID [2022-04-07 12:29:58,584 INFO L290 TraceCheckUtils]: 53: Hoare triple {1270#false} ~cond := #in~cond; {1270#false} is VALID [2022-04-07 12:29:58,584 INFO L290 TraceCheckUtils]: 54: Hoare triple {1270#false} assume 0 == ~cond; {1270#false} is VALID [2022-04-07 12:29:58,584 INFO L290 TraceCheckUtils]: 55: Hoare triple {1270#false} assume !false; {1270#false} is VALID [2022-04-07 12:29:58,584 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 4 proven. 2 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-07 12:29:58,585 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 12:29:58,585 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1873322201] [2022-04-07 12:29:58,585 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1873322201] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-07 12:29:58,585 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [361167556] [2022-04-07 12:29:58,585 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 12:29:58,585 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 12:29:58,585 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 12:29:58,589 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 12:29:58,590 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-07 12:29:58,674 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:29:58,676 INFO L263 TraceCheckSpWp]: Trace formula consists of 280 conjuncts, 25 conjunts are in the unsatisfiable core [2022-04-07 12:29:58,700 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:29:58,704 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 12:29:59,036 INFO L272 TraceCheckUtils]: 0: Hoare triple {1269#true} call ULTIMATE.init(); {1269#true} is VALID [2022-04-07 12:29:59,037 INFO L290 TraceCheckUtils]: 1: Hoare triple {1269#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(26, 2);call #Ultimate.allocInit(12, 3); {1269#true} is VALID [2022-04-07 12:29:59,037 INFO L290 TraceCheckUtils]: 2: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-07 12:29:59,067 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1269#true} {1269#true} #181#return; {1269#true} is VALID [2022-04-07 12:29:59,067 INFO L272 TraceCheckUtils]: 4: Hoare triple {1269#true} call #t~ret45 := main(); {1269#true} is VALID [2022-04-07 12:29:59,067 INFO L272 TraceCheckUtils]: 5: Hoare triple {1269#true} call #t~ret44.base, #t~ret44.offset := nondet_tree(); {1269#true} is VALID [2022-04-07 12:29:59,069 INFO L290 TraceCheckUtils]: 6: Hoare triple {1269#true} assume 0 != #t~nondet5 % 256;havoc #t~nondet5;#res.base, #res.offset := 0, 0; {1313#(and (<= |nondet_tree_#res.offset| 0) (<= 0 |nondet_tree_#res.offset|) (<= |nondet_tree_#res.base| 0) (<= 0 |nondet_tree_#res.base|))} is VALID [2022-04-07 12:29:59,069 INFO L290 TraceCheckUtils]: 7: Hoare triple {1313#(and (<= |nondet_tree_#res.offset| 0) (<= 0 |nondet_tree_#res.offset|) (<= |nondet_tree_#res.base| 0) (<= 0 |nondet_tree_#res.base|))} assume true; {1313#(and (<= |nondet_tree_#res.offset| 0) (<= 0 |nondet_tree_#res.offset|) (<= |nondet_tree_#res.base| 0) (<= 0 |nondet_tree_#res.base|))} is VALID [2022-04-07 12:29:59,070 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {1313#(and (<= |nondet_tree_#res.offset| 0) (<= 0 |nondet_tree_#res.offset|) (<= |nondet_tree_#res.base| 0) (<= 0 |nondet_tree_#res.base|))} {1269#true} #139#return; {1277#(and (= |main_#t~ret44.offset| 0) (= |main_#t~ret44.base| 0))} is VALID [2022-04-07 12:29:59,071 INFO L272 TraceCheckUtils]: 9: Hoare triple {1277#(and (= |main_#t~ret44.offset| 0) (= |main_#t~ret44.base| 0))} call task(#t~ret44.base, #t~ret44.offset); {1278#(and (= |task_#in~t.base| 0) (= |task_#in~t.offset| 0))} is VALID [2022-04-07 12:29:59,072 INFO L290 TraceCheckUtils]: 10: Hoare triple {1278#(and (= |task_#in~t.base| 0) (= |task_#in~t.offset| 0))} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1279#(and (= task_~t.offset 0) (= task_~t.base 0))} is VALID [2022-04-07 12:29:59,072 INFO L272 TraceCheckUtils]: 11: Hoare triple {1279#(and (= task_~t.offset 0) (= task_~t.base 0))} call #t~ret31 := min(~t.base, ~t.offset); {1269#true} is VALID [2022-04-07 12:29:59,072 INFO L290 TraceCheckUtils]: 12: Hoare triple {1269#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {1269#true} is VALID [2022-04-07 12:29:59,072 INFO L290 TraceCheckUtils]: 13: Hoare triple {1269#true} assume ~n.base == 0 && ~n.offset == 0;#res := 2147483647; {1269#true} is VALID [2022-04-07 12:29:59,072 INFO L290 TraceCheckUtils]: 14: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-07 12:29:59,073 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1269#true} {1279#(and (= task_~t.offset 0) (= task_~t.base 0))} #151#return; {1279#(and (= task_~t.offset 0) (= task_~t.base 0))} is VALID [2022-04-07 12:29:59,076 INFO L290 TraceCheckUtils]: 16: Hoare triple {1279#(and (= task_~t.offset 0) (= task_~t.base 0))} assume -2147483648 <= #t~ret31 && #t~ret31 <= 2147483647;~a~1 := #t~ret31;havoc #t~ret31;call ~#b~1.base, ~#b~1.offset := #Ultimate.allocOnStack(4); {1279#(and (= task_~t.offset 0) (= task_~t.base 0))} is VALID [2022-04-07 12:29:59,076 INFO L272 TraceCheckUtils]: 17: Hoare triple {1279#(and (= task_~t.offset 0) (= task_~t.base 0))} call #t~ret32 := size(~t.base, ~t.offset); {1269#true} is VALID [2022-04-07 12:29:59,077 INFO L290 TraceCheckUtils]: 18: Hoare triple {1269#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1384#(and (= |size_#in~t.offset| size_~t.offset) (= |size_#in~t.base| size_~t.base))} is VALID [2022-04-07 12:29:59,077 INFO L290 TraceCheckUtils]: 19: Hoare triple {1384#(and (= |size_#in~t.offset| size_~t.offset) (= |size_#in~t.base| size_~t.base))} assume !(~t.base == 0 && ~t.offset == 0);call #t~mem27.base, #t~mem27.offset := read~$Pointer$(~t.base, 4 + ~t.offset, 4); {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-07 12:29:59,078 INFO L272 TraceCheckUtils]: 20: Hoare triple {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} call #t~ret28 := size(#t~mem27.base, #t~mem27.offset); {1269#true} is VALID [2022-04-07 12:29:59,078 INFO L290 TraceCheckUtils]: 21: Hoare triple {1269#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1269#true} is VALID [2022-04-07 12:29:59,078 INFO L290 TraceCheckUtils]: 22: Hoare triple {1269#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {1269#true} is VALID [2022-04-07 12:29:59,078 INFO L290 TraceCheckUtils]: 23: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-07 12:29:59,081 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {1269#true} {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} #177#return; {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-07 12:29:59,081 INFO L290 TraceCheckUtils]: 25: Hoare triple {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} assume -2147483648 <= #t~ret28 && #t~ret28 <= 2147483647;call #t~mem29.base, #t~mem29.offset := read~$Pointer$(~t.base, 8 + ~t.offset, 4); {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-07 12:29:59,082 INFO L272 TraceCheckUtils]: 26: Hoare triple {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} call #t~ret30 := size(#t~mem29.base, #t~mem29.offset); {1269#true} is VALID [2022-04-07 12:29:59,082 INFO L290 TraceCheckUtils]: 27: Hoare triple {1269#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1269#true} is VALID [2022-04-07 12:29:59,082 INFO L290 TraceCheckUtils]: 28: Hoare triple {1269#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {1269#true} is VALID [2022-04-07 12:29:59,082 INFO L290 TraceCheckUtils]: 29: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-07 12:29:59,082 INFO L284 TraceCheckUtils]: 30: Hoare quadruple {1269#true} {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} #179#return; {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-07 12:29:59,083 INFO L290 TraceCheckUtils]: 31: Hoare triple {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} assume -2147483648 <= #t~ret30 && #t~ret30 <= 2147483647;#res := 1 + (#t~ret28 + #t~ret30);havoc #t~mem27.base, #t~mem27.offset;havoc #t~ret28;havoc #t~mem29.base, #t~mem29.offset;havoc #t~ret30; {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-07 12:29:59,083 INFO L290 TraceCheckUtils]: 32: Hoare triple {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} assume true; {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-07 12:29:59,084 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} {1279#(and (= task_~t.offset 0) (= task_~t.base 0))} #153#return; {1270#false} is VALID [2022-04-07 12:29:59,084 INFO L290 TraceCheckUtils]: 34: Hoare triple {1270#false} assume -2147483648 <= #t~ret32 && #t~ret32 <= 2147483647;~n~1 := #t~ret32;havoc #t~ret32; {1270#false} is VALID [2022-04-07 12:29:59,084 INFO L272 TraceCheckUtils]: 35: Hoare triple {1270#false} call assume_abort_if_not((if 0 != ~n~1 then 1 else 0)); {1270#false} is VALID [2022-04-07 12:29:59,084 INFO L290 TraceCheckUtils]: 36: Hoare triple {1270#false} ~cond := #in~cond; {1270#false} is VALID [2022-04-07 12:29:59,084 INFO L290 TraceCheckUtils]: 37: Hoare triple {1270#false} assume !(0 == ~cond); {1270#false} is VALID [2022-04-07 12:29:59,084 INFO L290 TraceCheckUtils]: 38: Hoare triple {1270#false} assume true; {1270#false} is VALID [2022-04-07 12:29:59,085 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {1270#false} {1270#false} #155#return; {1270#false} is VALID [2022-04-07 12:29:59,085 INFO L290 TraceCheckUtils]: 40: Hoare triple {1270#false} call #t~malloc33.base, #t~malloc33.offset := #Ultimate.allocOnHeap(4 * ~n~1); {1270#false} is VALID [2022-04-07 12:29:59,085 INFO L272 TraceCheckUtils]: 41: Hoare triple {1270#false} call #Ultimate.meminit(#t~malloc33.base, #t~malloc33.offset, ~n~1, 4, 4 * ~n~1); {1270#false} is VALID [2022-04-07 12:29:59,085 INFO L290 TraceCheckUtils]: 42: Hoare triple {1270#false} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {1270#false} is VALID [2022-04-07 12:29:59,085 INFO L290 TraceCheckUtils]: 43: Hoare triple {1270#false} assume true; {1270#false} is VALID [2022-04-07 12:29:59,085 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {1270#false} {1270#false} #157#return; {1270#false} is VALID [2022-04-07 12:29:59,085 INFO L290 TraceCheckUtils]: 45: Hoare triple {1270#false} ~x~0.base, ~x~0.offset := #t~malloc33.base, #t~malloc33.offset; {1270#false} is VALID [2022-04-07 12:29:59,085 INFO L272 TraceCheckUtils]: 46: Hoare triple {1270#false} call #t~ret34 := tree_inorder(~t.base, ~t.offset, ~x~0.base, ~x~0.offset, ~n~1); {1270#false} is VALID [2022-04-07 12:29:59,085 INFO L290 TraceCheckUtils]: 47: Hoare triple {1270#false} ~t.base, ~t.offset := #in~t.base, #in~t.offset;~a.base, ~a.offset := #in~a.base, #in~a.offset;~i := #in~i; {1270#false} is VALID [2022-04-07 12:29:59,085 INFO L290 TraceCheckUtils]: 48: Hoare triple {1270#false} assume ~t.base == 0 && ~t.offset == 0;#res := ~i; {1270#false} is VALID [2022-04-07 12:29:59,085 INFO L290 TraceCheckUtils]: 49: Hoare triple {1270#false} assume true; {1270#false} is VALID [2022-04-07 12:29:59,086 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {1270#false} {1270#false} #159#return; {1270#false} is VALID [2022-04-07 12:29:59,086 INFO L290 TraceCheckUtils]: 51: Hoare triple {1270#false} assume -2147483648 <= #t~ret34 && #t~ret34 <= 2147483647;havoc #t~ret34;call #t~mem35 := read~int(~x~0.base, ~x~0.offset, 4); {1270#false} is VALID [2022-04-07 12:29:59,086 INFO L272 TraceCheckUtils]: 52: Hoare triple {1270#false} call __VERIFIER_assert((if ~a~1 == #t~mem35 then 1 else 0)); {1270#false} is VALID [2022-04-07 12:29:59,086 INFO L290 TraceCheckUtils]: 53: Hoare triple {1270#false} ~cond := #in~cond; {1270#false} is VALID [2022-04-07 12:29:59,086 INFO L290 TraceCheckUtils]: 54: Hoare triple {1270#false} assume 0 == ~cond; {1270#false} is VALID [2022-04-07 12:29:59,086 INFO L290 TraceCheckUtils]: 55: Hoare triple {1270#false} assume !false; {1270#false} is VALID [2022-04-07 12:29:59,086 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 4 proven. 2 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-07 12:29:59,086 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 12:29:59,368 INFO L290 TraceCheckUtils]: 55: Hoare triple {1270#false} assume !false; {1270#false} is VALID [2022-04-07 12:29:59,368 INFO L290 TraceCheckUtils]: 54: Hoare triple {1270#false} assume 0 == ~cond; {1270#false} is VALID [2022-04-07 12:29:59,368 INFO L290 TraceCheckUtils]: 53: Hoare triple {1270#false} ~cond := #in~cond; {1270#false} is VALID [2022-04-07 12:29:59,368 INFO L272 TraceCheckUtils]: 52: Hoare triple {1270#false} call __VERIFIER_assert((if ~a~1 == #t~mem35 then 1 else 0)); {1270#false} is VALID [2022-04-07 12:29:59,369 INFO L290 TraceCheckUtils]: 51: Hoare triple {1270#false} assume -2147483648 <= #t~ret34 && #t~ret34 <= 2147483647;havoc #t~ret34;call #t~mem35 := read~int(~x~0.base, ~x~0.offset, 4); {1270#false} is VALID [2022-04-07 12:29:59,369 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {1269#true} {1270#false} #159#return; {1270#false} is VALID [2022-04-07 12:29:59,369 INFO L290 TraceCheckUtils]: 49: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-07 12:29:59,370 INFO L290 TraceCheckUtils]: 48: Hoare triple {1269#true} assume ~t.base == 0 && ~t.offset == 0;#res := ~i; {1269#true} is VALID [2022-04-07 12:29:59,370 INFO L290 TraceCheckUtils]: 47: Hoare triple {1269#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset;~a.base, ~a.offset := #in~a.base, #in~a.offset;~i := #in~i; {1269#true} is VALID [2022-04-07 12:29:59,370 INFO L272 TraceCheckUtils]: 46: Hoare triple {1270#false} call #t~ret34 := tree_inorder(~t.base, ~t.offset, ~x~0.base, ~x~0.offset, ~n~1); {1269#true} is VALID [2022-04-07 12:29:59,370 INFO L290 TraceCheckUtils]: 45: Hoare triple {1270#false} ~x~0.base, ~x~0.offset := #t~malloc33.base, #t~malloc33.offset; {1270#false} is VALID [2022-04-07 12:29:59,370 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {1269#true} {1270#false} #157#return; {1270#false} is VALID [2022-04-07 12:29:59,370 INFO L290 TraceCheckUtils]: 43: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-07 12:29:59,371 INFO L290 TraceCheckUtils]: 42: Hoare triple {1269#true} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {1269#true} is VALID [2022-04-07 12:29:59,371 INFO L272 TraceCheckUtils]: 41: Hoare triple {1270#false} call #Ultimate.meminit(#t~malloc33.base, #t~malloc33.offset, ~n~1, 4, 4 * ~n~1); {1269#true} is VALID [2022-04-07 12:29:59,371 INFO L290 TraceCheckUtils]: 40: Hoare triple {1270#false} call #t~malloc33.base, #t~malloc33.offset := #Ultimate.allocOnHeap(4 * ~n~1); {1270#false} is VALID [2022-04-07 12:29:59,371 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {1269#true} {1270#false} #155#return; {1270#false} is VALID [2022-04-07 12:29:59,371 INFO L290 TraceCheckUtils]: 38: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-07 12:29:59,371 INFO L290 TraceCheckUtils]: 37: Hoare triple {1269#true} assume !(0 == ~cond); {1269#true} is VALID [2022-04-07 12:29:59,371 INFO L290 TraceCheckUtils]: 36: Hoare triple {1269#true} ~cond := #in~cond; {1269#true} is VALID [2022-04-07 12:29:59,371 INFO L272 TraceCheckUtils]: 35: Hoare triple {1270#false} call assume_abort_if_not((if 0 != ~n~1 then 1 else 0)); {1269#true} is VALID [2022-04-07 12:29:59,371 INFO L290 TraceCheckUtils]: 34: Hoare triple {1270#false} assume -2147483648 <= #t~ret32 && #t~ret32 <= 2147483647;~n~1 := #t~ret32;havoc #t~ret32; {1270#false} is VALID [2022-04-07 12:29:59,372 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} {1279#(and (= task_~t.offset 0) (= task_~t.base 0))} #153#return; {1270#false} is VALID [2022-04-07 12:29:59,372 INFO L290 TraceCheckUtils]: 32: Hoare triple {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} assume true; {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-07 12:29:59,372 INFO L290 TraceCheckUtils]: 31: Hoare triple {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} assume -2147483648 <= #t~ret30 && #t~ret30 <= 2147483647;#res := 1 + (#t~ret28 + #t~ret30);havoc #t~mem27.base, #t~mem27.offset;havoc #t~ret28;havoc #t~mem29.base, #t~mem29.offset;havoc #t~ret30; {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-07 12:29:59,373 INFO L284 TraceCheckUtils]: 30: Hoare quadruple {1269#true} {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} #179#return; {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-07 12:29:59,373 INFO L290 TraceCheckUtils]: 29: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-07 12:29:59,373 INFO L290 TraceCheckUtils]: 28: Hoare triple {1269#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {1269#true} is VALID [2022-04-07 12:29:59,373 INFO L290 TraceCheckUtils]: 27: Hoare triple {1269#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1269#true} is VALID [2022-04-07 12:29:59,373 INFO L272 TraceCheckUtils]: 26: Hoare triple {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} call #t~ret30 := size(#t~mem29.base, #t~mem29.offset); {1269#true} is VALID [2022-04-07 12:29:59,374 INFO L290 TraceCheckUtils]: 25: Hoare triple {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} assume -2147483648 <= #t~ret28 && #t~ret28 <= 2147483647;call #t~mem29.base, #t~mem29.offset := read~$Pointer$(~t.base, 8 + ~t.offset, 4); {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-07 12:29:59,374 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {1269#true} {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} #177#return; {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-07 12:29:59,374 INFO L290 TraceCheckUtils]: 23: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-07 12:29:59,374 INFO L290 TraceCheckUtils]: 22: Hoare triple {1269#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {1269#true} is VALID [2022-04-07 12:29:59,374 INFO L290 TraceCheckUtils]: 21: Hoare triple {1269#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1269#true} is VALID [2022-04-07 12:29:59,375 INFO L272 TraceCheckUtils]: 20: Hoare triple {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} call #t~ret28 := size(#t~mem27.base, #t~mem27.offset); {1269#true} is VALID [2022-04-07 12:29:59,375 INFO L290 TraceCheckUtils]: 19: Hoare triple {1607#(or (not (= |size_#in~t.offset| 0)) (and (= size_~t.offset 0) (= size_~t.base 0)) (not (= |size_#in~t.base| 0)))} assume !(~t.base == 0 && ~t.offset == 0);call #t~mem27.base, #t~mem27.offset := read~$Pointer$(~t.base, 4 + ~t.offset, 4); {1320#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-07 12:29:59,375 INFO L290 TraceCheckUtils]: 18: Hoare triple {1269#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1607#(or (not (= |size_#in~t.offset| 0)) (and (= size_~t.offset 0) (= size_~t.base 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-07 12:29:59,376 INFO L272 TraceCheckUtils]: 17: Hoare triple {1279#(and (= task_~t.offset 0) (= task_~t.base 0))} call #t~ret32 := size(~t.base, ~t.offset); {1269#true} is VALID [2022-04-07 12:29:59,376 INFO L290 TraceCheckUtils]: 16: Hoare triple {1279#(and (= task_~t.offset 0) (= task_~t.base 0))} assume -2147483648 <= #t~ret31 && #t~ret31 <= 2147483647;~a~1 := #t~ret31;havoc #t~ret31;call ~#b~1.base, ~#b~1.offset := #Ultimate.allocOnStack(4); {1279#(and (= task_~t.offset 0) (= task_~t.base 0))} is VALID [2022-04-07 12:29:59,376 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1269#true} {1279#(and (= task_~t.offset 0) (= task_~t.base 0))} #151#return; {1279#(and (= task_~t.offset 0) (= task_~t.base 0))} is VALID [2022-04-07 12:29:59,377 INFO L290 TraceCheckUtils]: 14: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-07 12:29:59,377 INFO L290 TraceCheckUtils]: 13: Hoare triple {1269#true} assume ~n.base == 0 && ~n.offset == 0;#res := 2147483647; {1269#true} is VALID [2022-04-07 12:29:59,377 INFO L290 TraceCheckUtils]: 12: Hoare triple {1269#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {1269#true} is VALID [2022-04-07 12:29:59,377 INFO L272 TraceCheckUtils]: 11: Hoare triple {1279#(and (= task_~t.offset 0) (= task_~t.base 0))} call #t~ret31 := min(~t.base, ~t.offset); {1269#true} is VALID [2022-04-07 12:29:59,378 INFO L290 TraceCheckUtils]: 10: Hoare triple {1278#(and (= |task_#in~t.base| 0) (= |task_#in~t.offset| 0))} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1279#(and (= task_~t.offset 0) (= task_~t.base 0))} is VALID [2022-04-07 12:29:59,379 INFO L272 TraceCheckUtils]: 9: Hoare triple {1277#(and (= |main_#t~ret44.offset| 0) (= |main_#t~ret44.base| 0))} call task(#t~ret44.base, #t~ret44.offset); {1278#(and (= |task_#in~t.base| 0) (= |task_#in~t.offset| 0))} is VALID [2022-04-07 12:29:59,379 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {1313#(and (<= |nondet_tree_#res.offset| 0) (<= 0 |nondet_tree_#res.offset|) (<= |nondet_tree_#res.base| 0) (<= 0 |nondet_tree_#res.base|))} {1269#true} #139#return; {1277#(and (= |main_#t~ret44.offset| 0) (= |main_#t~ret44.base| 0))} is VALID [2022-04-07 12:29:59,380 INFO L290 TraceCheckUtils]: 7: Hoare triple {1313#(and (<= |nondet_tree_#res.offset| 0) (<= 0 |nondet_tree_#res.offset|) (<= |nondet_tree_#res.base| 0) (<= 0 |nondet_tree_#res.base|))} assume true; {1313#(and (<= |nondet_tree_#res.offset| 0) (<= 0 |nondet_tree_#res.offset|) (<= |nondet_tree_#res.base| 0) (<= 0 |nondet_tree_#res.base|))} is VALID [2022-04-07 12:29:59,380 INFO L290 TraceCheckUtils]: 6: Hoare triple {1269#true} assume 0 != #t~nondet5 % 256;havoc #t~nondet5;#res.base, #res.offset := 0, 0; {1313#(and (<= |nondet_tree_#res.offset| 0) (<= 0 |nondet_tree_#res.offset|) (<= |nondet_tree_#res.base| 0) (<= 0 |nondet_tree_#res.base|))} is VALID [2022-04-07 12:29:59,380 INFO L272 TraceCheckUtils]: 5: Hoare triple {1269#true} call #t~ret44.base, #t~ret44.offset := nondet_tree(); {1269#true} is VALID [2022-04-07 12:29:59,380 INFO L272 TraceCheckUtils]: 4: Hoare triple {1269#true} call #t~ret45 := main(); {1269#true} is VALID [2022-04-07 12:29:59,380 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1269#true} {1269#true} #181#return; {1269#true} is VALID [2022-04-07 12:29:59,380 INFO L290 TraceCheckUtils]: 2: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-07 12:29:59,381 INFO L290 TraceCheckUtils]: 1: Hoare triple {1269#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(26, 2);call #Ultimate.allocInit(12, 3); {1269#true} is VALID [2022-04-07 12:29:59,381 INFO L272 TraceCheckUtils]: 0: Hoare triple {1269#true} call ULTIMATE.init(); {1269#true} is VALID [2022-04-07 12:29:59,381 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 4 proven. 2 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-07 12:29:59,381 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [361167556] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 12:29:59,381 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-07 12:29:59,381 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 8, 8] total 15 [2022-04-07 12:29:59,382 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1217630178] [2022-04-07 12:29:59,382 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-07 12:29:59,383 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 14 states have (on average 3.5) internal successors, (49), 9 states have internal predecessors, (49), 6 states have call successors, (20), 7 states have call predecessors, (20), 4 states have return successors, (13), 6 states have call predecessors, (13), 5 states have call successors, (13) Word has length 56 [2022-04-07 12:29:59,391 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 12:29:59,392 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 14 states have (on average 3.5) internal successors, (49), 9 states have internal predecessors, (49), 6 states have call successors, (20), 7 states have call predecessors, (20), 4 states have return successors, (13), 6 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-07 12:29:59,430 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 82 edges. 82 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 12:29:59,430 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-07 12:29:59,430 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 12:29:59,431 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-07 12:29:59,432 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=36, Invalid=174, Unknown=0, NotChecked=0, Total=210 [2022-04-07 12:29:59,432 INFO L87 Difference]: Start difference. First operand 90 states and 113 transitions. Second operand has 15 states, 14 states have (on average 3.5) internal successors, (49), 9 states have internal predecessors, (49), 6 states have call successors, (20), 7 states have call predecessors, (20), 4 states have return successors, (13), 6 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-07 12:30:01,421 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 12:30:01,422 INFO L93 Difference]: Finished difference Result 164 states and 209 transitions. [2022-04-07 12:30:01,422 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-07 12:30:01,422 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 14 states have (on average 3.5) internal successors, (49), 9 states have internal predecessors, (49), 6 states have call successors, (20), 7 states have call predecessors, (20), 4 states have return successors, (13), 6 states have call predecessors, (13), 5 states have call successors, (13) Word has length 56 [2022-04-07 12:30:01,422 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 12:30:01,423 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 14 states have (on average 3.5) internal successors, (49), 9 states have internal predecessors, (49), 6 states have call successors, (20), 7 states have call predecessors, (20), 4 states have return successors, (13), 6 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-07 12:30:01,425 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 205 transitions. [2022-04-07 12:30:01,426 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 14 states have (on average 3.5) internal successors, (49), 9 states have internal predecessors, (49), 6 states have call successors, (20), 7 states have call predecessors, (20), 4 states have return successors, (13), 6 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-07 12:30:01,428 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 205 transitions. [2022-04-07 12:30:01,429 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 205 transitions. [2022-04-07 12:30:01,617 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 205 edges. 205 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 12:30:01,619 INFO L225 Difference]: With dead ends: 164 [2022-04-07 12:30:01,619 INFO L226 Difference]: Without dead ends: 96 [2022-04-07 12:30:01,620 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 147 GetRequests, 122 SyntacticMatches, 3 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 56 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=120, Invalid=432, Unknown=0, NotChecked=0, Total=552 [2022-04-07 12:30:01,620 INFO L913 BasicCegarLoop]: 70 mSDtfsCounter, 103 mSDsluCounter, 12 mSDsCounter, 0 mSdLazyCounter, 826 mSolverCounterSat, 95 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 120 SdHoareTripleChecker+Valid, 82 SdHoareTripleChecker+Invalid, 921 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 95 IncrementalHoareTripleChecker+Valid, 826 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-07 12:30:01,621 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [120 Valid, 82 Invalid, 921 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [95 Valid, 826 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-07 12:30:01,621 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 96 states. [2022-04-07 12:30:01,626 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 96 to 92. [2022-04-07 12:30:01,627 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 12:30:01,627 INFO L82 GeneralOperation]: Start isEquivalent. First operand 96 states. Second operand has 92 states, 55 states have (on average 1.1454545454545455) internal successors, (63), 57 states have internal predecessors, (63), 25 states have call successors, (25), 11 states have call predecessors, (25), 11 states have return successors, (28), 23 states have call predecessors, (28), 23 states have call successors, (28) [2022-04-07 12:30:01,627 INFO L74 IsIncluded]: Start isIncluded. First operand 96 states. Second operand has 92 states, 55 states have (on average 1.1454545454545455) internal successors, (63), 57 states have internal predecessors, (63), 25 states have call successors, (25), 11 states have call predecessors, (25), 11 states have return successors, (28), 23 states have call predecessors, (28), 23 states have call successors, (28) [2022-04-07 12:30:01,628 INFO L87 Difference]: Start difference. First operand 96 states. Second operand has 92 states, 55 states have (on average 1.1454545454545455) internal successors, (63), 57 states have internal predecessors, (63), 25 states have call successors, (25), 11 states have call predecessors, (25), 11 states have return successors, (28), 23 states have call predecessors, (28), 23 states have call successors, (28) [2022-04-07 12:30:01,630 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 12:30:01,631 INFO L93 Difference]: Finished difference Result 96 states and 123 transitions. [2022-04-07 12:30:01,631 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 123 transitions. [2022-04-07 12:30:01,631 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 12:30:01,631 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 12:30:01,631 INFO L74 IsIncluded]: Start isIncluded. First operand has 92 states, 55 states have (on average 1.1454545454545455) internal successors, (63), 57 states have internal predecessors, (63), 25 states have call successors, (25), 11 states have call predecessors, (25), 11 states have return successors, (28), 23 states have call predecessors, (28), 23 states have call successors, (28) Second operand 96 states. [2022-04-07 12:30:01,632 INFO L87 Difference]: Start difference. First operand has 92 states, 55 states have (on average 1.1454545454545455) internal successors, (63), 57 states have internal predecessors, (63), 25 states have call successors, (25), 11 states have call predecessors, (25), 11 states have return successors, (28), 23 states have call predecessors, (28), 23 states have call successors, (28) Second operand 96 states. [2022-04-07 12:30:01,635 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 12:30:01,635 INFO L93 Difference]: Finished difference Result 96 states and 123 transitions. [2022-04-07 12:30:01,635 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 123 transitions. [2022-04-07 12:30:01,635 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 12:30:01,635 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 12:30:01,635 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 12:30:01,635 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 12:30:01,636 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 92 states, 55 states have (on average 1.1454545454545455) internal successors, (63), 57 states have internal predecessors, (63), 25 states have call successors, (25), 11 states have call predecessors, (25), 11 states have return successors, (28), 23 states have call predecessors, (28), 23 states have call successors, (28) [2022-04-07 12:30:01,638 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 92 states to 92 states and 116 transitions. [2022-04-07 12:30:01,638 INFO L78 Accepts]: Start accepts. Automaton has 92 states and 116 transitions. Word has length 56 [2022-04-07 12:30:01,638 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 12:30:01,638 INFO L478 AbstractCegarLoop]: Abstraction has 92 states and 116 transitions. [2022-04-07 12:30:01,638 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 14 states have (on average 3.5) internal successors, (49), 9 states have internal predecessors, (49), 6 states have call successors, (20), 7 states have call predecessors, (20), 4 states have return successors, (13), 6 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-07 12:30:01,639 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 116 transitions. [2022-04-07 12:30:01,639 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 67 [2022-04-07 12:30:01,639 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 12:30:01,640 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 12:30:01,669 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-07 12:30:01,849 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 12:30:01,850 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 12:30:01,850 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 12:30:01,850 INFO L85 PathProgramCache]: Analyzing trace with hash 921875361, now seen corresponding path program 1 times [2022-04-07 12:30:01,850 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 12:30:01,850 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1762080370] [2022-04-07 12:30:01,850 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 12:30:01,850 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 12:30:01,873 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:30:01,918 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-07 12:30:01,919 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:30:01,922 INFO L290 TraceCheckUtils]: 0: Hoare triple {2285#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(26, 2);call #Ultimate.allocInit(12, 3); {2233#true} is VALID [2022-04-07 12:30:01,922 INFO L290 TraceCheckUtils]: 1: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-07 12:30:01,922 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {2233#true} {2233#true} #181#return; {2233#true} is VALID [2022-04-07 12:30:01,930 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 5 [2022-04-07 12:30:01,938 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:30:01,963 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-04-07 12:30:01,966 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:30:01,970 INFO L290 TraceCheckUtils]: 0: Hoare triple {2286#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} assume 0 != #t~nondet5 % 256;havoc #t~nondet5;#res.base, #res.offset := 0, 0; {2233#true} is VALID [2022-04-07 12:30:01,970 INFO L290 TraceCheckUtils]: 1: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-07 12:30:01,970 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {2233#true} {2287#(not (= nondet_tree_~n~0.base 0))} #147#return; {2287#(not (= nondet_tree_~n~0.base 0))} is VALID [2022-04-07 12:30:01,970 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-07 12:30:01,972 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:30:01,974 INFO L290 TraceCheckUtils]: 0: Hoare triple {2286#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} assume 0 != #t~nondet5 % 256;havoc #t~nondet5;#res.base, #res.offset := 0, 0; {2233#true} is VALID [2022-04-07 12:30:01,974 INFO L290 TraceCheckUtils]: 1: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-07 12:30:01,975 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {2233#true} {2287#(not (= nondet_tree_~n~0.base 0))} #149#return; {2287#(not (= nondet_tree_~n~0.base 0))} is VALID [2022-04-07 12:30:01,975 INFO L290 TraceCheckUtils]: 0: Hoare triple {2286#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} assume !(0 != #t~nondet5 % 256);havoc #t~nondet5;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(12);~n~0.base, ~n~0.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset;assume -2147483648 <= #t~nondet7 && #t~nondet7 <= 2147483647;call write~int(#t~nondet7, ~n~0.base, ~n~0.offset, 4);havoc #t~nondet7; {2287#(not (= nondet_tree_~n~0.base 0))} is VALID [2022-04-07 12:30:01,976 INFO L272 TraceCheckUtils]: 1: Hoare triple {2287#(not (= nondet_tree_~n~0.base 0))} call #t~ret8.base, #t~ret8.offset := nondet_tree(); {2286#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} is VALID [2022-04-07 12:30:01,976 INFO L290 TraceCheckUtils]: 2: Hoare triple {2286#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} assume 0 != #t~nondet5 % 256;havoc #t~nondet5;#res.base, #res.offset := 0, 0; {2233#true} is VALID [2022-04-07 12:30:01,976 INFO L290 TraceCheckUtils]: 3: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-07 12:30:01,976 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {2233#true} {2287#(not (= nondet_tree_~n~0.base 0))} #147#return; {2287#(not (= nondet_tree_~n~0.base 0))} is VALID [2022-04-07 12:30:01,977 INFO L290 TraceCheckUtils]: 5: Hoare triple {2287#(not (= nondet_tree_~n~0.base 0))} call write~$Pointer$(#t~ret8.base, #t~ret8.offset, ~n~0.base, 4 + ~n~0.offset, 4);havoc #t~ret8.base, #t~ret8.offset; {2287#(not (= nondet_tree_~n~0.base 0))} is VALID [2022-04-07 12:30:01,978 INFO L272 TraceCheckUtils]: 6: Hoare triple {2287#(not (= nondet_tree_~n~0.base 0))} call #t~ret9.base, #t~ret9.offset := nondet_tree(); {2286#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} is VALID [2022-04-07 12:30:01,978 INFO L290 TraceCheckUtils]: 7: Hoare triple {2286#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} assume 0 != #t~nondet5 % 256;havoc #t~nondet5;#res.base, #res.offset := 0, 0; {2233#true} is VALID [2022-04-07 12:30:01,978 INFO L290 TraceCheckUtils]: 8: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-07 12:30:01,979 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {2233#true} {2287#(not (= nondet_tree_~n~0.base 0))} #149#return; {2287#(not (= nondet_tree_~n~0.base 0))} is VALID [2022-04-07 12:30:01,979 INFO L290 TraceCheckUtils]: 10: Hoare triple {2287#(not (= nondet_tree_~n~0.base 0))} call write~$Pointer$(#t~ret9.base, #t~ret9.offset, ~n~0.base, 8 + ~n~0.offset, 4);havoc #t~ret9.base, #t~ret9.offset;#res.base, #res.offset := ~n~0.base, ~n~0.offset; {2294#(not (= |nondet_tree_#res.base| 0))} is VALID [2022-04-07 12:30:01,981 INFO L290 TraceCheckUtils]: 11: Hoare triple {2294#(not (= |nondet_tree_#res.base| 0))} assume true; {2294#(not (= |nondet_tree_#res.base| 0))} is VALID [2022-04-07 12:30:01,984 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {2294#(not (= |nondet_tree_#res.base| 0))} {2233#true} #139#return; {2251#(not (= |main_#t~ret44.base| 0))} is VALID [2022-04-07 12:30:01,984 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 21 [2022-04-07 12:30:01,987 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:30:02,007 INFO L290 TraceCheckUtils]: 0: Hoare triple {2233#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {2295#(= min_~n.base |min_#in~n.base|)} is VALID [2022-04-07 12:30:02,008 INFO L290 TraceCheckUtils]: 1: Hoare triple {2295#(= min_~n.base |min_#in~n.base|)} assume ~n.base == 0 && ~n.offset == 0;#res := 2147483647; {2296#(= |min_#in~n.base| 0)} is VALID [2022-04-07 12:30:02,008 INFO L290 TraceCheckUtils]: 2: Hoare triple {2296#(= |min_#in~n.base| 0)} assume true; {2296#(= |min_#in~n.base| 0)} is VALID [2022-04-07 12:30:02,008 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2296#(= |min_#in~n.base| 0)} {2253#(not (= task_~t.base 0))} #151#return; {2234#false} is VALID [2022-04-07 12:30:02,008 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 27 [2022-04-07 12:30:02,021 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:30:02,026 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-04-07 12:30:02,027 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:30:02,029 INFO L290 TraceCheckUtils]: 0: Hoare triple {2233#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {2233#true} is VALID [2022-04-07 12:30:02,029 INFO L290 TraceCheckUtils]: 1: Hoare triple {2233#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {2233#true} is VALID [2022-04-07 12:30:02,029 INFO L290 TraceCheckUtils]: 2: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-07 12:30:02,029 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2233#true} {2233#true} #177#return; {2233#true} is VALID [2022-04-07 12:30:02,030 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 8 [2022-04-07 12:30:02,030 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:30:02,033 INFO L290 TraceCheckUtils]: 0: Hoare triple {2233#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {2233#true} is VALID [2022-04-07 12:30:02,033 INFO L290 TraceCheckUtils]: 1: Hoare triple {2233#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {2233#true} is VALID [2022-04-07 12:30:02,033 INFO L290 TraceCheckUtils]: 2: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-07 12:30:02,035 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2233#true} {2233#true} #179#return; {2233#true} is VALID [2022-04-07 12:30:02,035 INFO L290 TraceCheckUtils]: 0: Hoare triple {2233#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {2233#true} is VALID [2022-04-07 12:30:02,035 INFO L290 TraceCheckUtils]: 1: Hoare triple {2233#true} assume !(~t.base == 0 && ~t.offset == 0);call #t~mem27.base, #t~mem27.offset := read~$Pointer$(~t.base, 4 + ~t.offset, 4); {2233#true} is VALID [2022-04-07 12:30:02,036 INFO L272 TraceCheckUtils]: 2: Hoare triple {2233#true} call #t~ret28 := size(#t~mem27.base, #t~mem27.offset); {2233#true} is VALID [2022-04-07 12:30:02,036 INFO L290 TraceCheckUtils]: 3: Hoare triple {2233#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {2233#true} is VALID [2022-04-07 12:30:02,036 INFO L290 TraceCheckUtils]: 4: Hoare triple {2233#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {2233#true} is VALID [2022-04-07 12:30:02,036 INFO L290 TraceCheckUtils]: 5: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-07 12:30:02,036 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {2233#true} {2233#true} #177#return; {2233#true} is VALID [2022-04-07 12:30:02,036 INFO L290 TraceCheckUtils]: 7: Hoare triple {2233#true} assume -2147483648 <= #t~ret28 && #t~ret28 <= 2147483647;call #t~mem29.base, #t~mem29.offset := read~$Pointer$(~t.base, 8 + ~t.offset, 4); {2233#true} is VALID [2022-04-07 12:30:02,036 INFO L272 TraceCheckUtils]: 8: Hoare triple {2233#true} call #t~ret30 := size(#t~mem29.base, #t~mem29.offset); {2233#true} is VALID [2022-04-07 12:30:02,036 INFO L290 TraceCheckUtils]: 9: Hoare triple {2233#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {2233#true} is VALID [2022-04-07 12:30:02,036 INFO L290 TraceCheckUtils]: 10: Hoare triple {2233#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {2233#true} is VALID [2022-04-07 12:30:02,036 INFO L290 TraceCheckUtils]: 11: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-07 12:30:02,036 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {2233#true} {2233#true} #179#return; {2233#true} is VALID [2022-04-07 12:30:02,036 INFO L290 TraceCheckUtils]: 13: Hoare triple {2233#true} assume -2147483648 <= #t~ret30 && #t~ret30 <= 2147483647;#res := 1 + (#t~ret28 + #t~ret30);havoc #t~mem27.base, #t~mem27.offset;havoc #t~ret28;havoc #t~mem29.base, #t~mem29.offset;havoc #t~ret30; {2233#true} is VALID [2022-04-07 12:30:02,036 INFO L290 TraceCheckUtils]: 14: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-07 12:30:02,036 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2233#true} {2234#false} #153#return; {2234#false} is VALID [2022-04-07 12:30:02,037 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 45 [2022-04-07 12:30:02,037 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:30:02,040 INFO L290 TraceCheckUtils]: 0: Hoare triple {2233#true} ~cond := #in~cond; {2233#true} is VALID [2022-04-07 12:30:02,040 INFO L290 TraceCheckUtils]: 1: Hoare triple {2233#true} assume !(0 == ~cond); {2233#true} is VALID [2022-04-07 12:30:02,040 INFO L290 TraceCheckUtils]: 2: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-07 12:30:02,040 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2233#true} {2234#false} #155#return; {2234#false} is VALID [2022-04-07 12:30:02,046 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 51 [2022-04-07 12:30:02,048 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:30:02,053 INFO L290 TraceCheckUtils]: 0: Hoare triple {2305#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {2233#true} is VALID [2022-04-07 12:30:02,053 INFO L290 TraceCheckUtils]: 1: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-07 12:30:02,053 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {2233#true} {2234#false} #157#return; {2234#false} is VALID [2022-04-07 12:30:02,062 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 56 [2022-04-07 12:30:02,063 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:30:02,066 INFO L290 TraceCheckUtils]: 0: Hoare triple {2306#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~t.base, ~t.offset := #in~t.base, #in~t.offset;~a.base, ~a.offset := #in~a.base, #in~a.offset;~i := #in~i; {2233#true} is VALID [2022-04-07 12:30:02,066 INFO L290 TraceCheckUtils]: 1: Hoare triple {2233#true} assume ~t.base == 0 && ~t.offset == 0;#res := ~i; {2233#true} is VALID [2022-04-07 12:30:02,066 INFO L290 TraceCheckUtils]: 2: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-07 12:30:02,066 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2233#true} {2234#false} #159#return; {2234#false} is VALID [2022-04-07 12:30:02,067 INFO L272 TraceCheckUtils]: 0: Hoare triple {2233#true} call ULTIMATE.init(); {2285#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-07 12:30:02,067 INFO L290 TraceCheckUtils]: 1: Hoare triple {2285#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(26, 2);call #Ultimate.allocInit(12, 3); {2233#true} is VALID [2022-04-07 12:30:02,067 INFO L290 TraceCheckUtils]: 2: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-07 12:30:02,067 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2233#true} {2233#true} #181#return; {2233#true} is VALID [2022-04-07 12:30:02,067 INFO L272 TraceCheckUtils]: 4: Hoare triple {2233#true} call #t~ret45 := main(); {2233#true} is VALID [2022-04-07 12:30:02,068 INFO L272 TraceCheckUtils]: 5: Hoare triple {2233#true} call #t~ret44.base, #t~ret44.offset := nondet_tree(); {2286#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} is VALID [2022-04-07 12:30:02,068 INFO L290 TraceCheckUtils]: 6: Hoare triple {2286#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} assume !(0 != #t~nondet5 % 256);havoc #t~nondet5;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(12);~n~0.base, ~n~0.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset;assume -2147483648 <= #t~nondet7 && #t~nondet7 <= 2147483647;call write~int(#t~nondet7, ~n~0.base, ~n~0.offset, 4);havoc #t~nondet7; {2287#(not (= nondet_tree_~n~0.base 0))} is VALID [2022-04-07 12:30:02,069 INFO L272 TraceCheckUtils]: 7: Hoare triple {2287#(not (= nondet_tree_~n~0.base 0))} call #t~ret8.base, #t~ret8.offset := nondet_tree(); {2286#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} is VALID [2022-04-07 12:30:02,069 INFO L290 TraceCheckUtils]: 8: Hoare triple {2286#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} assume 0 != #t~nondet5 % 256;havoc #t~nondet5;#res.base, #res.offset := 0, 0; {2233#true} is VALID [2022-04-07 12:30:02,069 INFO L290 TraceCheckUtils]: 9: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-07 12:30:02,069 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2233#true} {2287#(not (= nondet_tree_~n~0.base 0))} #147#return; {2287#(not (= nondet_tree_~n~0.base 0))} is VALID [2022-04-07 12:30:02,069 INFO L290 TraceCheckUtils]: 11: Hoare triple {2287#(not (= nondet_tree_~n~0.base 0))} call write~$Pointer$(#t~ret8.base, #t~ret8.offset, ~n~0.base, 4 + ~n~0.offset, 4);havoc #t~ret8.base, #t~ret8.offset; {2287#(not (= nondet_tree_~n~0.base 0))} is VALID [2022-04-07 12:30:02,070 INFO L272 TraceCheckUtils]: 12: Hoare triple {2287#(not (= nondet_tree_~n~0.base 0))} call #t~ret9.base, #t~ret9.offset := nondet_tree(); {2286#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} is VALID [2022-04-07 12:30:02,070 INFO L290 TraceCheckUtils]: 13: Hoare triple {2286#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} assume 0 != #t~nondet5 % 256;havoc #t~nondet5;#res.base, #res.offset := 0, 0; {2233#true} is VALID [2022-04-07 12:30:02,070 INFO L290 TraceCheckUtils]: 14: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-07 12:30:02,070 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2233#true} {2287#(not (= nondet_tree_~n~0.base 0))} #149#return; {2287#(not (= nondet_tree_~n~0.base 0))} is VALID [2022-04-07 12:30:02,071 INFO L290 TraceCheckUtils]: 16: Hoare triple {2287#(not (= nondet_tree_~n~0.base 0))} call write~$Pointer$(#t~ret9.base, #t~ret9.offset, ~n~0.base, 8 + ~n~0.offset, 4);havoc #t~ret9.base, #t~ret9.offset;#res.base, #res.offset := ~n~0.base, ~n~0.offset; {2294#(not (= |nondet_tree_#res.base| 0))} is VALID [2022-04-07 12:30:02,071 INFO L290 TraceCheckUtils]: 17: Hoare triple {2294#(not (= |nondet_tree_#res.base| 0))} assume true; {2294#(not (= |nondet_tree_#res.base| 0))} is VALID [2022-04-07 12:30:02,072 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2294#(not (= |nondet_tree_#res.base| 0))} {2233#true} #139#return; {2251#(not (= |main_#t~ret44.base| 0))} is VALID [2022-04-07 12:30:02,072 INFO L272 TraceCheckUtils]: 19: Hoare triple {2251#(not (= |main_#t~ret44.base| 0))} call task(#t~ret44.base, #t~ret44.offset); {2252#(not (= |task_#in~t.base| 0))} is VALID [2022-04-07 12:30:02,072 INFO L290 TraceCheckUtils]: 20: Hoare triple {2252#(not (= |task_#in~t.base| 0))} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {2253#(not (= task_~t.base 0))} is VALID [2022-04-07 12:30:02,073 INFO L272 TraceCheckUtils]: 21: Hoare triple {2253#(not (= task_~t.base 0))} call #t~ret31 := min(~t.base, ~t.offset); {2233#true} is VALID [2022-04-07 12:30:02,073 INFO L290 TraceCheckUtils]: 22: Hoare triple {2233#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {2295#(= min_~n.base |min_#in~n.base|)} is VALID [2022-04-07 12:30:02,073 INFO L290 TraceCheckUtils]: 23: Hoare triple {2295#(= min_~n.base |min_#in~n.base|)} assume ~n.base == 0 && ~n.offset == 0;#res := 2147483647; {2296#(= |min_#in~n.base| 0)} is VALID [2022-04-07 12:30:02,073 INFO L290 TraceCheckUtils]: 24: Hoare triple {2296#(= |min_#in~n.base| 0)} assume true; {2296#(= |min_#in~n.base| 0)} is VALID [2022-04-07 12:30:02,074 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {2296#(= |min_#in~n.base| 0)} {2253#(not (= task_~t.base 0))} #151#return; {2234#false} is VALID [2022-04-07 12:30:02,074 INFO L290 TraceCheckUtils]: 26: Hoare triple {2234#false} assume -2147483648 <= #t~ret31 && #t~ret31 <= 2147483647;~a~1 := #t~ret31;havoc #t~ret31;call ~#b~1.base, ~#b~1.offset := #Ultimate.allocOnStack(4); {2234#false} is VALID [2022-04-07 12:30:02,074 INFO L272 TraceCheckUtils]: 27: Hoare triple {2234#false} call #t~ret32 := size(~t.base, ~t.offset); {2233#true} is VALID [2022-04-07 12:30:02,074 INFO L290 TraceCheckUtils]: 28: Hoare triple {2233#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {2233#true} is VALID [2022-04-07 12:30:02,074 INFO L290 TraceCheckUtils]: 29: Hoare triple {2233#true} assume !(~t.base == 0 && ~t.offset == 0);call #t~mem27.base, #t~mem27.offset := read~$Pointer$(~t.base, 4 + ~t.offset, 4); {2233#true} is VALID [2022-04-07 12:30:02,074 INFO L272 TraceCheckUtils]: 30: Hoare triple {2233#true} call #t~ret28 := size(#t~mem27.base, #t~mem27.offset); {2233#true} is VALID [2022-04-07 12:30:02,074 INFO L290 TraceCheckUtils]: 31: Hoare triple {2233#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {2233#true} is VALID [2022-04-07 12:30:02,074 INFO L290 TraceCheckUtils]: 32: Hoare triple {2233#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {2233#true} is VALID [2022-04-07 12:30:02,074 INFO L290 TraceCheckUtils]: 33: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-07 12:30:02,074 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {2233#true} {2233#true} #177#return; {2233#true} is VALID [2022-04-07 12:30:02,074 INFO L290 TraceCheckUtils]: 35: Hoare triple {2233#true} assume -2147483648 <= #t~ret28 && #t~ret28 <= 2147483647;call #t~mem29.base, #t~mem29.offset := read~$Pointer$(~t.base, 8 + ~t.offset, 4); {2233#true} is VALID [2022-04-07 12:30:02,074 INFO L272 TraceCheckUtils]: 36: Hoare triple {2233#true} call #t~ret30 := size(#t~mem29.base, #t~mem29.offset); {2233#true} is VALID [2022-04-07 12:30:02,075 INFO L290 TraceCheckUtils]: 37: Hoare triple {2233#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {2233#true} is VALID [2022-04-07 12:30:02,075 INFO L290 TraceCheckUtils]: 38: Hoare triple {2233#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {2233#true} is VALID [2022-04-07 12:30:02,075 INFO L290 TraceCheckUtils]: 39: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-07 12:30:02,075 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {2233#true} {2233#true} #179#return; {2233#true} is VALID [2022-04-07 12:30:02,075 INFO L290 TraceCheckUtils]: 41: Hoare triple {2233#true} assume -2147483648 <= #t~ret30 && #t~ret30 <= 2147483647;#res := 1 + (#t~ret28 + #t~ret30);havoc #t~mem27.base, #t~mem27.offset;havoc #t~ret28;havoc #t~mem29.base, #t~mem29.offset;havoc #t~ret30; {2233#true} is VALID [2022-04-07 12:30:02,075 INFO L290 TraceCheckUtils]: 42: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-07 12:30:02,075 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {2233#true} {2234#false} #153#return; {2234#false} is VALID [2022-04-07 12:30:02,075 INFO L290 TraceCheckUtils]: 44: Hoare triple {2234#false} assume -2147483648 <= #t~ret32 && #t~ret32 <= 2147483647;~n~1 := #t~ret32;havoc #t~ret32; {2234#false} is VALID [2022-04-07 12:30:02,075 INFO L272 TraceCheckUtils]: 45: Hoare triple {2234#false} call assume_abort_if_not((if 0 != ~n~1 then 1 else 0)); {2233#true} is VALID [2022-04-07 12:30:02,075 INFO L290 TraceCheckUtils]: 46: Hoare triple {2233#true} ~cond := #in~cond; {2233#true} is VALID [2022-04-07 12:30:02,075 INFO L290 TraceCheckUtils]: 47: Hoare triple {2233#true} assume !(0 == ~cond); {2233#true} is VALID [2022-04-07 12:30:02,075 INFO L290 TraceCheckUtils]: 48: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-07 12:30:02,075 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {2233#true} {2234#false} #155#return; {2234#false} is VALID [2022-04-07 12:30:02,075 INFO L290 TraceCheckUtils]: 50: Hoare triple {2234#false} call #t~malloc33.base, #t~malloc33.offset := #Ultimate.allocOnHeap(4 * ~n~1); {2234#false} is VALID [2022-04-07 12:30:02,075 INFO L272 TraceCheckUtils]: 51: Hoare triple {2234#false} call #Ultimate.meminit(#t~malloc33.base, #t~malloc33.offset, ~n~1, 4, 4 * ~n~1); {2305#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-04-07 12:30:02,075 INFO L290 TraceCheckUtils]: 52: Hoare triple {2305#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {2233#true} is VALID [2022-04-07 12:30:02,075 INFO L290 TraceCheckUtils]: 53: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-07 12:30:02,076 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {2233#true} {2234#false} #157#return; {2234#false} is VALID [2022-04-07 12:30:02,076 INFO L290 TraceCheckUtils]: 55: Hoare triple {2234#false} ~x~0.base, ~x~0.offset := #t~malloc33.base, #t~malloc33.offset; {2234#false} is VALID [2022-04-07 12:30:02,076 INFO L272 TraceCheckUtils]: 56: Hoare triple {2234#false} call #t~ret34 := tree_inorder(~t.base, ~t.offset, ~x~0.base, ~x~0.offset, ~n~1); {2306#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2022-04-07 12:30:02,076 INFO L290 TraceCheckUtils]: 57: Hoare triple {2306#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~t.base, ~t.offset := #in~t.base, #in~t.offset;~a.base, ~a.offset := #in~a.base, #in~a.offset;~i := #in~i; {2233#true} is VALID [2022-04-07 12:30:02,076 INFO L290 TraceCheckUtils]: 58: Hoare triple {2233#true} assume ~t.base == 0 && ~t.offset == 0;#res := ~i; {2233#true} is VALID [2022-04-07 12:30:02,076 INFO L290 TraceCheckUtils]: 59: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-07 12:30:02,076 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {2233#true} {2234#false} #159#return; {2234#false} is VALID [2022-04-07 12:30:02,076 INFO L290 TraceCheckUtils]: 61: Hoare triple {2234#false} assume -2147483648 <= #t~ret34 && #t~ret34 <= 2147483647;havoc #t~ret34;call #t~mem35 := read~int(~x~0.base, ~x~0.offset, 4); {2234#false} is VALID [2022-04-07 12:30:02,076 INFO L272 TraceCheckUtils]: 62: Hoare triple {2234#false} call __VERIFIER_assert((if ~a~1 == #t~mem35 then 1 else 0)); {2234#false} is VALID [2022-04-07 12:30:02,076 INFO L290 TraceCheckUtils]: 63: Hoare triple {2234#false} ~cond := #in~cond; {2234#false} is VALID [2022-04-07 12:30:02,076 INFO L290 TraceCheckUtils]: 64: Hoare triple {2234#false} assume 0 == ~cond; {2234#false} is VALID [2022-04-07 12:30:02,076 INFO L290 TraceCheckUtils]: 65: Hoare triple {2234#false} assume !false; {2234#false} is VALID [2022-04-07 12:30:02,077 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 17 trivial. 0 not checked. [2022-04-07 12:30:02,077 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 12:30:02,078 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1762080370] [2022-04-07 12:30:02,080 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1762080370] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 12:30:02,080 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 12:30:02,080 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-07 12:30:02,080 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1780623104] [2022-04-07 12:30:02,080 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 12:30:02,082 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 11 states have (on average 3.090909090909091) internal successors, (34), 7 states have internal predecessors, (34), 5 states have call successors, (14), 7 states have call predecessors, (14), 3 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) Word has length 66 [2022-04-07 12:30:02,082 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 12:30:02,082 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 11 states have (on average 3.090909090909091) internal successors, (34), 7 states have internal predecessors, (34), 5 states have call successors, (14), 7 states have call predecessors, (14), 3 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-07 12:30:02,120 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 12:30:02,120 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-07 12:30:02,120 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 12:30:02,121 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-07 12:30:02,121 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=130, Unknown=0, NotChecked=0, Total=156 [2022-04-07 12:30:02,121 INFO L87 Difference]: Start difference. First operand 92 states and 116 transitions. Second operand has 13 states, 11 states have (on average 3.090909090909091) internal successors, (34), 7 states have internal predecessors, (34), 5 states have call successors, (14), 7 states have call predecessors, (14), 3 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-07 12:30:04,085 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 12:30:04,085 INFO L93 Difference]: Finished difference Result 163 states and 208 transitions. [2022-04-07 12:30:04,085 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-07 12:30:04,085 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 11 states have (on average 3.090909090909091) internal successors, (34), 7 states have internal predecessors, (34), 5 states have call successors, (14), 7 states have call predecessors, (14), 3 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) Word has length 66 [2022-04-07 12:30:04,085 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 12:30:04,086 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 11 states have (on average 3.090909090909091) internal successors, (34), 7 states have internal predecessors, (34), 5 states have call successors, (14), 7 states have call predecessors, (14), 3 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-07 12:30:04,088 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 200 transitions. [2022-04-07 12:30:04,088 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 11 states have (on average 3.090909090909091) internal successors, (34), 7 states have internal predecessors, (34), 5 states have call successors, (14), 7 states have call predecessors, (14), 3 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-07 12:30:04,091 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 200 transitions. [2022-04-07 12:30:04,091 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 200 transitions. [2022-04-07 12:30:04,243 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 200 edges. 200 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 12:30:04,245 INFO L225 Difference]: With dead ends: 163 [2022-04-07 12:30:04,245 INFO L226 Difference]: Without dead ends: 98 [2022-04-07 12:30:04,246 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 42 GetRequests, 20 SyntacticMatches, 0 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 56 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=108, Invalid=444, Unknown=0, NotChecked=0, Total=552 [2022-04-07 12:30:04,246 INFO L913 BasicCegarLoop]: 68 mSDtfsCounter, 168 mSDsluCounter, 14 mSDsCounter, 0 mSdLazyCounter, 826 mSolverCounterSat, 164 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 170 SdHoareTripleChecker+Valid, 82 SdHoareTripleChecker+Invalid, 990 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 164 IncrementalHoareTripleChecker+Valid, 826 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-07 12:30:04,246 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [170 Valid, 82 Invalid, 990 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [164 Valid, 826 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-07 12:30:04,247 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 98 states. [2022-04-07 12:30:04,252 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 98 to 94. [2022-04-07 12:30:04,252 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 12:30:04,252 INFO L82 GeneralOperation]: Start isEquivalent. First operand 98 states. Second operand has 94 states, 56 states have (on average 1.1428571428571428) internal successors, (64), 59 states have internal predecessors, (64), 25 states have call successors, (25), 11 states have call predecessors, (25), 12 states have return successors, (30), 23 states have call predecessors, (30), 23 states have call successors, (30) [2022-04-07 12:30:04,252 INFO L74 IsIncluded]: Start isIncluded. First operand 98 states. Second operand has 94 states, 56 states have (on average 1.1428571428571428) internal successors, (64), 59 states have internal predecessors, (64), 25 states have call successors, (25), 11 states have call predecessors, (25), 12 states have return successors, (30), 23 states have call predecessors, (30), 23 states have call successors, (30) [2022-04-07 12:30:04,252 INFO L87 Difference]: Start difference. First operand 98 states. Second operand has 94 states, 56 states have (on average 1.1428571428571428) internal successors, (64), 59 states have internal predecessors, (64), 25 states have call successors, (25), 11 states have call predecessors, (25), 12 states have return successors, (30), 23 states have call predecessors, (30), 23 states have call successors, (30) [2022-04-07 12:30:04,255 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 12:30:04,255 INFO L93 Difference]: Finished difference Result 98 states and 126 transitions. [2022-04-07 12:30:04,255 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 126 transitions. [2022-04-07 12:30:04,256 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 12:30:04,256 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 12:30:04,256 INFO L74 IsIncluded]: Start isIncluded. First operand has 94 states, 56 states have (on average 1.1428571428571428) internal successors, (64), 59 states have internal predecessors, (64), 25 states have call successors, (25), 11 states have call predecessors, (25), 12 states have return successors, (30), 23 states have call predecessors, (30), 23 states have call successors, (30) Second operand 98 states. [2022-04-07 12:30:04,256 INFO L87 Difference]: Start difference. First operand has 94 states, 56 states have (on average 1.1428571428571428) internal successors, (64), 59 states have internal predecessors, (64), 25 states have call successors, (25), 11 states have call predecessors, (25), 12 states have return successors, (30), 23 states have call predecessors, (30), 23 states have call successors, (30) Second operand 98 states. [2022-04-07 12:30:04,259 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 12:30:04,259 INFO L93 Difference]: Finished difference Result 98 states and 126 transitions. [2022-04-07 12:30:04,259 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 126 transitions. [2022-04-07 12:30:04,259 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 12:30:04,259 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 12:30:04,259 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 12:30:04,259 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 12:30:04,260 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 94 states, 56 states have (on average 1.1428571428571428) internal successors, (64), 59 states have internal predecessors, (64), 25 states have call successors, (25), 11 states have call predecessors, (25), 12 states have return successors, (30), 23 states have call predecessors, (30), 23 states have call successors, (30) [2022-04-07 12:30:04,262 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 94 states to 94 states and 119 transitions. [2022-04-07 12:30:04,262 INFO L78 Accepts]: Start accepts. Automaton has 94 states and 119 transitions. Word has length 66 [2022-04-07 12:30:04,262 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 12:30:04,262 INFO L478 AbstractCegarLoop]: Abstraction has 94 states and 119 transitions. [2022-04-07 12:30:04,262 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 11 states have (on average 3.090909090909091) internal successors, (34), 7 states have internal predecessors, (34), 5 states have call successors, (14), 7 states have call predecessors, (14), 3 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-07 12:30:04,262 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 119 transitions. [2022-04-07 12:30:04,263 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 80 [2022-04-07 12:30:04,263 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 12:30:04,264 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 12:30:04,264 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-04-07 12:30:04,264 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 12:30:04,264 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 12:30:04,264 INFO L85 PathProgramCache]: Analyzing trace with hash 940648973, now seen corresponding path program 1 times [2022-04-07 12:30:04,264 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 12:30:04,264 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1228990234] [2022-04-07 12:30:04,264 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 12:30:04,264 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 12:30:04,285 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:30:04,311 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-07 12:30:04,313 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:30:04,316 INFO L290 TraceCheckUtils]: 0: Hoare triple {2949#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(26, 2);call #Ultimate.allocInit(12, 3); {2884#true} is VALID [2022-04-07 12:30:04,316 INFO L290 TraceCheckUtils]: 1: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-07 12:30:04,316 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {2884#true} {2884#true} #181#return; {2884#true} is VALID [2022-04-07 12:30:04,323 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 5 [2022-04-07 12:30:04,330 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:30:04,352 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-04-07 12:30:04,354 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:30:04,358 INFO L290 TraceCheckUtils]: 0: Hoare triple {2950#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} assume 0 != #t~nondet5 % 256;havoc #t~nondet5;#res.base, #res.offset := 0, 0; {2884#true} is VALID [2022-04-07 12:30:04,358 INFO L290 TraceCheckUtils]: 1: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-07 12:30:04,359 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {2884#true} {2951#(not (= nondet_tree_~n~0.base 0))} #147#return; {2951#(not (= nondet_tree_~n~0.base 0))} is VALID [2022-04-07 12:30:04,359 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-07 12:30:04,362 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:30:04,365 INFO L290 TraceCheckUtils]: 0: Hoare triple {2950#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} assume 0 != #t~nondet5 % 256;havoc #t~nondet5;#res.base, #res.offset := 0, 0; {2884#true} is VALID [2022-04-07 12:30:04,365 INFO L290 TraceCheckUtils]: 1: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-07 12:30:04,365 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {2884#true} {2951#(not (= nondet_tree_~n~0.base 0))} #149#return; {2951#(not (= nondet_tree_~n~0.base 0))} is VALID [2022-04-07 12:30:04,366 INFO L290 TraceCheckUtils]: 0: Hoare triple {2950#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} assume !(0 != #t~nondet5 % 256);havoc #t~nondet5;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(12);~n~0.base, ~n~0.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset;assume -2147483648 <= #t~nondet7 && #t~nondet7 <= 2147483647;call write~int(#t~nondet7, ~n~0.base, ~n~0.offset, 4);havoc #t~nondet7; {2951#(not (= nondet_tree_~n~0.base 0))} is VALID [2022-04-07 12:30:04,366 INFO L272 TraceCheckUtils]: 1: Hoare triple {2951#(not (= nondet_tree_~n~0.base 0))} call #t~ret8.base, #t~ret8.offset := nondet_tree(); {2950#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} is VALID [2022-04-07 12:30:04,366 INFO L290 TraceCheckUtils]: 2: Hoare triple {2950#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} assume 0 != #t~nondet5 % 256;havoc #t~nondet5;#res.base, #res.offset := 0, 0; {2884#true} is VALID [2022-04-07 12:30:04,366 INFO L290 TraceCheckUtils]: 3: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-07 12:30:04,367 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {2884#true} {2951#(not (= nondet_tree_~n~0.base 0))} #147#return; {2951#(not (= nondet_tree_~n~0.base 0))} is VALID [2022-04-07 12:30:04,367 INFO L290 TraceCheckUtils]: 5: Hoare triple {2951#(not (= nondet_tree_~n~0.base 0))} call write~$Pointer$(#t~ret8.base, #t~ret8.offset, ~n~0.base, 4 + ~n~0.offset, 4);havoc #t~ret8.base, #t~ret8.offset; {2951#(not (= nondet_tree_~n~0.base 0))} is VALID [2022-04-07 12:30:04,368 INFO L272 TraceCheckUtils]: 6: Hoare triple {2951#(not (= nondet_tree_~n~0.base 0))} call #t~ret9.base, #t~ret9.offset := nondet_tree(); {2950#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} is VALID [2022-04-07 12:30:04,368 INFO L290 TraceCheckUtils]: 7: Hoare triple {2950#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} assume 0 != #t~nondet5 % 256;havoc #t~nondet5;#res.base, #res.offset := 0, 0; {2884#true} is VALID [2022-04-07 12:30:04,368 INFO L290 TraceCheckUtils]: 8: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-07 12:30:04,368 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {2884#true} {2951#(not (= nondet_tree_~n~0.base 0))} #149#return; {2951#(not (= nondet_tree_~n~0.base 0))} is VALID [2022-04-07 12:30:04,368 INFO L290 TraceCheckUtils]: 10: Hoare triple {2951#(not (= nondet_tree_~n~0.base 0))} call write~$Pointer$(#t~ret9.base, #t~ret9.offset, ~n~0.base, 8 + ~n~0.offset, 4);havoc #t~ret9.base, #t~ret9.offset;#res.base, #res.offset := ~n~0.base, ~n~0.offset; {2958#(not (= |nondet_tree_#res.base| 0))} is VALID [2022-04-07 12:30:04,371 INFO L290 TraceCheckUtils]: 11: Hoare triple {2958#(not (= |nondet_tree_#res.base| 0))} assume true; {2958#(not (= |nondet_tree_#res.base| 0))} is VALID [2022-04-07 12:30:04,371 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {2958#(not (= |nondet_tree_#res.base| 0))} {2884#true} #139#return; {2902#(not (= |main_#t~ret44.base| 0))} is VALID [2022-04-07 12:30:04,371 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 21 [2022-04-07 12:30:04,375 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:30:04,382 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-04-07 12:30:04,383 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:30:04,386 INFO L290 TraceCheckUtils]: 0: Hoare triple {2884#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {2884#true} is VALID [2022-04-07 12:30:04,386 INFO L290 TraceCheckUtils]: 1: Hoare triple {2884#true} assume ~n.base == 0 && ~n.offset == 0;#res := 2147483647; {2884#true} is VALID [2022-04-07 12:30:04,386 INFO L290 TraceCheckUtils]: 2: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-07 12:30:04,386 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2884#true} {2884#true} #143#return; {2884#true} is VALID [2022-04-07 12:30:04,386 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 8 [2022-04-07 12:30:04,386 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:30:04,388 INFO L290 TraceCheckUtils]: 0: Hoare triple {2884#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {2884#true} is VALID [2022-04-07 12:30:04,388 INFO L290 TraceCheckUtils]: 1: Hoare triple {2884#true} assume ~n.base == 0 && ~n.offset == 0;#res := 2147483647; {2884#true} is VALID [2022-04-07 12:30:04,388 INFO L290 TraceCheckUtils]: 2: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-07 12:30:04,388 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2884#true} {2884#true} #145#return; {2884#true} is VALID [2022-04-07 12:30:04,388 INFO L290 TraceCheckUtils]: 0: Hoare triple {2884#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {2884#true} is VALID [2022-04-07 12:30:04,388 INFO L290 TraceCheckUtils]: 1: Hoare triple {2884#true} assume !(~n.base == 0 && ~n.offset == 0);call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~n.base, 4 + ~n.offset, 4); {2884#true} is VALID [2022-04-07 12:30:04,388 INFO L272 TraceCheckUtils]: 2: Hoare triple {2884#true} call #t~ret11 := min(#t~mem10.base, #t~mem10.offset); {2884#true} is VALID [2022-04-07 12:30:04,388 INFO L290 TraceCheckUtils]: 3: Hoare triple {2884#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {2884#true} is VALID [2022-04-07 12:30:04,388 INFO L290 TraceCheckUtils]: 4: Hoare triple {2884#true} assume ~n.base == 0 && ~n.offset == 0;#res := 2147483647; {2884#true} is VALID [2022-04-07 12:30:04,388 INFO L290 TraceCheckUtils]: 5: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-07 12:30:04,388 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {2884#true} {2884#true} #143#return; {2884#true} is VALID [2022-04-07 12:30:04,392 INFO L290 TraceCheckUtils]: 7: Hoare triple {2884#true} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~a~0 := #t~ret11;havoc #t~mem10.base, #t~mem10.offset;havoc #t~ret11;call #t~mem12.base, #t~mem12.offset := read~$Pointer$(~n.base, 8 + ~n.offset, 4); {2884#true} is VALID [2022-04-07 12:30:04,392 INFO L272 TraceCheckUtils]: 8: Hoare triple {2884#true} call #t~ret13 := min(#t~mem12.base, #t~mem12.offset); {2884#true} is VALID [2022-04-07 12:30:04,392 INFO L290 TraceCheckUtils]: 9: Hoare triple {2884#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {2884#true} is VALID [2022-04-07 12:30:04,392 INFO L290 TraceCheckUtils]: 10: Hoare triple {2884#true} assume ~n.base == 0 && ~n.offset == 0;#res := 2147483647; {2884#true} is VALID [2022-04-07 12:30:04,392 INFO L290 TraceCheckUtils]: 11: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-07 12:30:04,392 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {2884#true} {2884#true} #145#return; {2884#true} is VALID [2022-04-07 12:30:04,392 INFO L290 TraceCheckUtils]: 13: Hoare triple {2884#true} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~b~0 := #t~ret13;havoc #t~mem12.base, #t~mem12.offset;havoc #t~ret13; {2884#true} is VALID [2022-04-07 12:30:04,392 INFO L290 TraceCheckUtils]: 14: Hoare triple {2884#true} assume ~a~0 <= ~b~0;#res := ~a~0; {2884#true} is VALID [2022-04-07 12:30:04,392 INFO L290 TraceCheckUtils]: 15: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-07 12:30:04,393 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2884#true} {2904#(not (= task_~t.base 0))} #151#return; {2904#(not (= task_~t.base 0))} is VALID [2022-04-07 12:30:04,393 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 40 [2022-04-07 12:30:04,396 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:30:04,400 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-04-07 12:30:04,401 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:30:04,403 INFO L290 TraceCheckUtils]: 0: Hoare triple {2884#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {2884#true} is VALID [2022-04-07 12:30:04,403 INFO L290 TraceCheckUtils]: 1: Hoare triple {2884#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {2884#true} is VALID [2022-04-07 12:30:04,403 INFO L290 TraceCheckUtils]: 2: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-07 12:30:04,403 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2884#true} {2884#true} #177#return; {2884#true} is VALID [2022-04-07 12:30:04,403 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 8 [2022-04-07 12:30:04,404 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:30:04,407 INFO L290 TraceCheckUtils]: 0: Hoare triple {2884#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {2884#true} is VALID [2022-04-07 12:30:04,407 INFO L290 TraceCheckUtils]: 1: Hoare triple {2884#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {2884#true} is VALID [2022-04-07 12:30:04,407 INFO L290 TraceCheckUtils]: 2: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-07 12:30:04,407 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2884#true} {2884#true} #179#return; {2884#true} is VALID [2022-04-07 12:30:04,407 INFO L290 TraceCheckUtils]: 0: Hoare triple {2884#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {2884#true} is VALID [2022-04-07 12:30:04,407 INFO L290 TraceCheckUtils]: 1: Hoare triple {2884#true} assume !(~t.base == 0 && ~t.offset == 0);call #t~mem27.base, #t~mem27.offset := read~$Pointer$(~t.base, 4 + ~t.offset, 4); {2884#true} is VALID [2022-04-07 12:30:04,407 INFO L272 TraceCheckUtils]: 2: Hoare triple {2884#true} call #t~ret28 := size(#t~mem27.base, #t~mem27.offset); {2884#true} is VALID [2022-04-07 12:30:04,407 INFO L290 TraceCheckUtils]: 3: Hoare triple {2884#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {2884#true} is VALID [2022-04-07 12:30:04,407 INFO L290 TraceCheckUtils]: 4: Hoare triple {2884#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {2884#true} is VALID [2022-04-07 12:30:04,407 INFO L290 TraceCheckUtils]: 5: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-07 12:30:04,407 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {2884#true} {2884#true} #177#return; {2884#true} is VALID [2022-04-07 12:30:04,407 INFO L290 TraceCheckUtils]: 7: Hoare triple {2884#true} assume -2147483648 <= #t~ret28 && #t~ret28 <= 2147483647;call #t~mem29.base, #t~mem29.offset := read~$Pointer$(~t.base, 8 + ~t.offset, 4); {2884#true} is VALID [2022-04-07 12:30:04,407 INFO L272 TraceCheckUtils]: 8: Hoare triple {2884#true} call #t~ret30 := size(#t~mem29.base, #t~mem29.offset); {2884#true} is VALID [2022-04-07 12:30:04,407 INFO L290 TraceCheckUtils]: 9: Hoare triple {2884#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {2884#true} is VALID [2022-04-07 12:30:04,407 INFO L290 TraceCheckUtils]: 10: Hoare triple {2884#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {2884#true} is VALID [2022-04-07 12:30:04,407 INFO L290 TraceCheckUtils]: 11: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-07 12:30:04,408 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {2884#true} {2884#true} #179#return; {2884#true} is VALID [2022-04-07 12:30:04,408 INFO L290 TraceCheckUtils]: 13: Hoare triple {2884#true} assume -2147483648 <= #t~ret30 && #t~ret30 <= 2147483647;#res := 1 + (#t~ret28 + #t~ret30);havoc #t~mem27.base, #t~mem27.offset;havoc #t~ret28;havoc #t~mem29.base, #t~mem29.offset;havoc #t~ret30; {2884#true} is VALID [2022-04-07 12:30:04,408 INFO L290 TraceCheckUtils]: 14: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-07 12:30:04,408 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2884#true} {2904#(not (= task_~t.base 0))} #153#return; {2904#(not (= task_~t.base 0))} is VALID [2022-04-07 12:30:04,408 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 58 [2022-04-07 12:30:04,409 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:30:04,412 INFO L290 TraceCheckUtils]: 0: Hoare triple {2884#true} ~cond := #in~cond; {2884#true} is VALID [2022-04-07 12:30:04,412 INFO L290 TraceCheckUtils]: 1: Hoare triple {2884#true} assume !(0 == ~cond); {2884#true} is VALID [2022-04-07 12:30:04,412 INFO L290 TraceCheckUtils]: 2: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-07 12:30:04,412 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2884#true} {2904#(not (= task_~t.base 0))} #155#return; {2904#(not (= task_~t.base 0))} is VALID [2022-04-07 12:30:04,417 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 64 [2022-04-07 12:30:04,419 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:30:04,424 INFO L290 TraceCheckUtils]: 0: Hoare triple {2975#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {2884#true} is VALID [2022-04-07 12:30:04,424 INFO L290 TraceCheckUtils]: 1: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-07 12:30:04,425 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {2884#true} {2904#(not (= task_~t.base 0))} #157#return; {2904#(not (= task_~t.base 0))} is VALID [2022-04-07 12:30:04,432 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 69 [2022-04-07 12:30:04,433 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 12:30:04,450 INFO L290 TraceCheckUtils]: 0: Hoare triple {2976#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~t.base, ~t.offset := #in~t.base, #in~t.offset;~a.base, ~a.offset := #in~a.base, #in~a.offset;~i := #in~i; {2977#(= |tree_inorder_#in~t.base| tree_inorder_~t.base)} is VALID [2022-04-07 12:30:04,450 INFO L290 TraceCheckUtils]: 1: Hoare triple {2977#(= |tree_inorder_#in~t.base| tree_inorder_~t.base)} assume ~t.base == 0 && ~t.offset == 0;#res := ~i; {2978#(= |tree_inorder_#in~t.base| 0)} is VALID [2022-04-07 12:30:04,450 INFO L290 TraceCheckUtils]: 2: Hoare triple {2978#(= |tree_inorder_#in~t.base| 0)} assume true; {2978#(= |tree_inorder_#in~t.base| 0)} is VALID [2022-04-07 12:30:04,451 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2978#(= |tree_inorder_#in~t.base| 0)} {2904#(not (= task_~t.base 0))} #159#return; {2885#false} is VALID [2022-04-07 12:30:04,451 INFO L272 TraceCheckUtils]: 0: Hoare triple {2884#true} call ULTIMATE.init(); {2949#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-07 12:30:04,451 INFO L290 TraceCheckUtils]: 1: Hoare triple {2949#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(26, 2);call #Ultimate.allocInit(12, 3); {2884#true} is VALID [2022-04-07 12:30:04,451 INFO L290 TraceCheckUtils]: 2: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-07 12:30:04,452 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2884#true} {2884#true} #181#return; {2884#true} is VALID [2022-04-07 12:30:04,452 INFO L272 TraceCheckUtils]: 4: Hoare triple {2884#true} call #t~ret45 := main(); {2884#true} is VALID [2022-04-07 12:30:04,452 INFO L272 TraceCheckUtils]: 5: Hoare triple {2884#true} call #t~ret44.base, #t~ret44.offset := nondet_tree(); {2950#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} is VALID [2022-04-07 12:30:04,452 INFO L290 TraceCheckUtils]: 6: Hoare triple {2950#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} assume !(0 != #t~nondet5 % 256);havoc #t~nondet5;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(12);~n~0.base, ~n~0.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset;assume -2147483648 <= #t~nondet7 && #t~nondet7 <= 2147483647;call write~int(#t~nondet7, ~n~0.base, ~n~0.offset, 4);havoc #t~nondet7; {2951#(not (= nondet_tree_~n~0.base 0))} is VALID [2022-04-07 12:30:04,453 INFO L272 TraceCheckUtils]: 7: Hoare triple {2951#(not (= nondet_tree_~n~0.base 0))} call #t~ret8.base, #t~ret8.offset := nondet_tree(); {2950#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} is VALID [2022-04-07 12:30:04,453 INFO L290 TraceCheckUtils]: 8: Hoare triple {2950#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} assume 0 != #t~nondet5 % 256;havoc #t~nondet5;#res.base, #res.offset := 0, 0; {2884#true} is VALID [2022-04-07 12:30:04,453 INFO L290 TraceCheckUtils]: 9: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-07 12:30:04,453 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2884#true} {2951#(not (= nondet_tree_~n~0.base 0))} #147#return; {2951#(not (= nondet_tree_~n~0.base 0))} is VALID [2022-04-07 12:30:04,453 INFO L290 TraceCheckUtils]: 11: Hoare triple {2951#(not (= nondet_tree_~n~0.base 0))} call write~$Pointer$(#t~ret8.base, #t~ret8.offset, ~n~0.base, 4 + ~n~0.offset, 4);havoc #t~ret8.base, #t~ret8.offset; {2951#(not (= nondet_tree_~n~0.base 0))} is VALID [2022-04-07 12:30:04,454 INFO L272 TraceCheckUtils]: 12: Hoare triple {2951#(not (= nondet_tree_~n~0.base 0))} call #t~ret9.base, #t~ret9.offset := nondet_tree(); {2950#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} is VALID [2022-04-07 12:30:04,454 INFO L290 TraceCheckUtils]: 13: Hoare triple {2950#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#valid)| |#valid|))} assume 0 != #t~nondet5 % 256;havoc #t~nondet5;#res.base, #res.offset := 0, 0; {2884#true} is VALID [2022-04-07 12:30:04,454 INFO L290 TraceCheckUtils]: 14: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-07 12:30:04,454 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2884#true} {2951#(not (= nondet_tree_~n~0.base 0))} #149#return; {2951#(not (= nondet_tree_~n~0.base 0))} is VALID [2022-04-07 12:30:04,455 INFO L290 TraceCheckUtils]: 16: Hoare triple {2951#(not (= nondet_tree_~n~0.base 0))} call write~$Pointer$(#t~ret9.base, #t~ret9.offset, ~n~0.base, 8 + ~n~0.offset, 4);havoc #t~ret9.base, #t~ret9.offset;#res.base, #res.offset := ~n~0.base, ~n~0.offset; {2958#(not (= |nondet_tree_#res.base| 0))} is VALID [2022-04-07 12:30:04,455 INFO L290 TraceCheckUtils]: 17: Hoare triple {2958#(not (= |nondet_tree_#res.base| 0))} assume true; {2958#(not (= |nondet_tree_#res.base| 0))} is VALID [2022-04-07 12:30:04,455 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2958#(not (= |nondet_tree_#res.base| 0))} {2884#true} #139#return; {2902#(not (= |main_#t~ret44.base| 0))} is VALID [2022-04-07 12:30:04,457 INFO L272 TraceCheckUtils]: 19: Hoare triple {2902#(not (= |main_#t~ret44.base| 0))} call task(#t~ret44.base, #t~ret44.offset); {2903#(not (= |task_#in~t.base| 0))} is VALID [2022-04-07 12:30:04,457 INFO L290 TraceCheckUtils]: 20: Hoare triple {2903#(not (= |task_#in~t.base| 0))} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {2904#(not (= task_~t.base 0))} is VALID [2022-04-07 12:30:04,457 INFO L272 TraceCheckUtils]: 21: Hoare triple {2904#(not (= task_~t.base 0))} call #t~ret31 := min(~t.base, ~t.offset); {2884#true} is VALID [2022-04-07 12:30:04,457 INFO L290 TraceCheckUtils]: 22: Hoare triple {2884#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {2884#true} is VALID [2022-04-07 12:30:04,457 INFO L290 TraceCheckUtils]: 23: Hoare triple {2884#true} assume !(~n.base == 0 && ~n.offset == 0);call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~n.base, 4 + ~n.offset, 4); {2884#true} is VALID [2022-04-07 12:30:04,457 INFO L272 TraceCheckUtils]: 24: Hoare triple {2884#true} call #t~ret11 := min(#t~mem10.base, #t~mem10.offset); {2884#true} is VALID [2022-04-07 12:30:04,457 INFO L290 TraceCheckUtils]: 25: Hoare triple {2884#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {2884#true} is VALID [2022-04-07 12:30:04,457 INFO L290 TraceCheckUtils]: 26: Hoare triple {2884#true} assume ~n.base == 0 && ~n.offset == 0;#res := 2147483647; {2884#true} is VALID [2022-04-07 12:30:04,458 INFO L290 TraceCheckUtils]: 27: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-07 12:30:04,458 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2884#true} {2884#true} #143#return; {2884#true} is VALID [2022-04-07 12:30:04,458 INFO L290 TraceCheckUtils]: 29: Hoare triple {2884#true} assume -2147483648 <= #t~ret11 && #t~ret11 <= 2147483647;~a~0 := #t~ret11;havoc #t~mem10.base, #t~mem10.offset;havoc #t~ret11;call #t~mem12.base, #t~mem12.offset := read~$Pointer$(~n.base, 8 + ~n.offset, 4); {2884#true} is VALID [2022-04-07 12:30:04,458 INFO L272 TraceCheckUtils]: 30: Hoare triple {2884#true} call #t~ret13 := min(#t~mem12.base, #t~mem12.offset); {2884#true} is VALID [2022-04-07 12:30:04,458 INFO L290 TraceCheckUtils]: 31: Hoare triple {2884#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {2884#true} is VALID [2022-04-07 12:30:04,458 INFO L290 TraceCheckUtils]: 32: Hoare triple {2884#true} assume ~n.base == 0 && ~n.offset == 0;#res := 2147483647; {2884#true} is VALID [2022-04-07 12:30:04,458 INFO L290 TraceCheckUtils]: 33: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-07 12:30:04,458 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {2884#true} {2884#true} #145#return; {2884#true} is VALID [2022-04-07 12:30:04,459 INFO L290 TraceCheckUtils]: 35: Hoare triple {2884#true} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~b~0 := #t~ret13;havoc #t~mem12.base, #t~mem12.offset;havoc #t~ret13; {2884#true} is VALID [2022-04-07 12:30:04,459 INFO L290 TraceCheckUtils]: 36: Hoare triple {2884#true} assume ~a~0 <= ~b~0;#res := ~a~0; {2884#true} is VALID [2022-04-07 12:30:04,459 INFO L290 TraceCheckUtils]: 37: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-07 12:30:04,459 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {2884#true} {2904#(not (= task_~t.base 0))} #151#return; {2904#(not (= task_~t.base 0))} is VALID [2022-04-07 12:30:04,459 INFO L290 TraceCheckUtils]: 39: Hoare triple {2904#(not (= task_~t.base 0))} assume -2147483648 <= #t~ret31 && #t~ret31 <= 2147483647;~a~1 := #t~ret31;havoc #t~ret31;call ~#b~1.base, ~#b~1.offset := #Ultimate.allocOnStack(4); {2904#(not (= task_~t.base 0))} is VALID [2022-04-07 12:30:04,459 INFO L272 TraceCheckUtils]: 40: Hoare triple {2904#(not (= task_~t.base 0))} call #t~ret32 := size(~t.base, ~t.offset); {2884#true} is VALID [2022-04-07 12:30:04,459 INFO L290 TraceCheckUtils]: 41: Hoare triple {2884#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {2884#true} is VALID [2022-04-07 12:30:04,459 INFO L290 TraceCheckUtils]: 42: Hoare triple {2884#true} assume !(~t.base == 0 && ~t.offset == 0);call #t~mem27.base, #t~mem27.offset := read~$Pointer$(~t.base, 4 + ~t.offset, 4); {2884#true} is VALID [2022-04-07 12:30:04,459 INFO L272 TraceCheckUtils]: 43: Hoare triple {2884#true} call #t~ret28 := size(#t~mem27.base, #t~mem27.offset); {2884#true} is VALID [2022-04-07 12:30:04,460 INFO L290 TraceCheckUtils]: 44: Hoare triple {2884#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {2884#true} is VALID [2022-04-07 12:30:04,460 INFO L290 TraceCheckUtils]: 45: Hoare triple {2884#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {2884#true} is VALID [2022-04-07 12:30:04,460 INFO L290 TraceCheckUtils]: 46: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-07 12:30:04,460 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {2884#true} {2884#true} #177#return; {2884#true} is VALID [2022-04-07 12:30:04,460 INFO L290 TraceCheckUtils]: 48: Hoare triple {2884#true} assume -2147483648 <= #t~ret28 && #t~ret28 <= 2147483647;call #t~mem29.base, #t~mem29.offset := read~$Pointer$(~t.base, 8 + ~t.offset, 4); {2884#true} is VALID [2022-04-07 12:30:04,460 INFO L272 TraceCheckUtils]: 49: Hoare triple {2884#true} call #t~ret30 := size(#t~mem29.base, #t~mem29.offset); {2884#true} is VALID [2022-04-07 12:30:04,460 INFO L290 TraceCheckUtils]: 50: Hoare triple {2884#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {2884#true} is VALID [2022-04-07 12:30:04,460 INFO L290 TraceCheckUtils]: 51: Hoare triple {2884#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {2884#true} is VALID [2022-04-07 12:30:04,460 INFO L290 TraceCheckUtils]: 52: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-07 12:30:04,460 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {2884#true} {2884#true} #179#return; {2884#true} is VALID [2022-04-07 12:30:04,460 INFO L290 TraceCheckUtils]: 54: Hoare triple {2884#true} assume -2147483648 <= #t~ret30 && #t~ret30 <= 2147483647;#res := 1 + (#t~ret28 + #t~ret30);havoc #t~mem27.base, #t~mem27.offset;havoc #t~ret28;havoc #t~mem29.base, #t~mem29.offset;havoc #t~ret30; {2884#true} is VALID [2022-04-07 12:30:04,460 INFO L290 TraceCheckUtils]: 55: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-07 12:30:04,461 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {2884#true} {2904#(not (= task_~t.base 0))} #153#return; {2904#(not (= task_~t.base 0))} is VALID [2022-04-07 12:30:04,461 INFO L290 TraceCheckUtils]: 57: Hoare triple {2904#(not (= task_~t.base 0))} assume -2147483648 <= #t~ret32 && #t~ret32 <= 2147483647;~n~1 := #t~ret32;havoc #t~ret32; {2904#(not (= task_~t.base 0))} is VALID [2022-04-07 12:30:04,461 INFO L272 TraceCheckUtils]: 58: Hoare triple {2904#(not (= task_~t.base 0))} call assume_abort_if_not((if 0 != ~n~1 then 1 else 0)); {2884#true} is VALID [2022-04-07 12:30:04,461 INFO L290 TraceCheckUtils]: 59: Hoare triple {2884#true} ~cond := #in~cond; {2884#true} is VALID [2022-04-07 12:30:04,461 INFO L290 TraceCheckUtils]: 60: Hoare triple {2884#true} assume !(0 == ~cond); {2884#true} is VALID [2022-04-07 12:30:04,461 INFO L290 TraceCheckUtils]: 61: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-07 12:30:04,461 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {2884#true} {2904#(not (= task_~t.base 0))} #155#return; {2904#(not (= task_~t.base 0))} is VALID [2022-04-07 12:30:04,461 INFO L290 TraceCheckUtils]: 63: Hoare triple {2904#(not (= task_~t.base 0))} call #t~malloc33.base, #t~malloc33.offset := #Ultimate.allocOnHeap(4 * ~n~1); {2904#(not (= task_~t.base 0))} is VALID [2022-04-07 12:30:04,462 INFO L272 TraceCheckUtils]: 64: Hoare triple {2904#(not (= task_~t.base 0))} call #Ultimate.meminit(#t~malloc33.base, #t~malloc33.offset, ~n~1, 4, 4 * ~n~1); {2975#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-04-07 12:30:04,462 INFO L290 TraceCheckUtils]: 65: Hoare triple {2975#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {2884#true} is VALID [2022-04-07 12:30:04,462 INFO L290 TraceCheckUtils]: 66: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-07 12:30:04,463 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {2884#true} {2904#(not (= task_~t.base 0))} #157#return; {2904#(not (= task_~t.base 0))} is VALID [2022-04-07 12:30:04,463 INFO L290 TraceCheckUtils]: 68: Hoare triple {2904#(not (= task_~t.base 0))} ~x~0.base, ~x~0.offset := #t~malloc33.base, #t~malloc33.offset; {2904#(not (= task_~t.base 0))} is VALID [2022-04-07 12:30:04,464 INFO L272 TraceCheckUtils]: 69: Hoare triple {2904#(not (= task_~t.base 0))} call #t~ret34 := tree_inorder(~t.base, ~t.offset, ~x~0.base, ~x~0.offset, ~n~1); {2976#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2022-04-07 12:30:04,464 INFO L290 TraceCheckUtils]: 70: Hoare triple {2976#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~t.base, ~t.offset := #in~t.base, #in~t.offset;~a.base, ~a.offset := #in~a.base, #in~a.offset;~i := #in~i; {2977#(= |tree_inorder_#in~t.base| tree_inorder_~t.base)} is VALID [2022-04-07 12:30:04,464 INFO L290 TraceCheckUtils]: 71: Hoare triple {2977#(= |tree_inorder_#in~t.base| tree_inorder_~t.base)} assume ~t.base == 0 && ~t.offset == 0;#res := ~i; {2978#(= |tree_inorder_#in~t.base| 0)} is VALID [2022-04-07 12:30:04,464 INFO L290 TraceCheckUtils]: 72: Hoare triple {2978#(= |tree_inorder_#in~t.base| 0)} assume true; {2978#(= |tree_inorder_#in~t.base| 0)} is VALID [2022-04-07 12:30:04,465 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {2978#(= |tree_inorder_#in~t.base| 0)} {2904#(not (= task_~t.base 0))} #159#return; {2885#false} is VALID [2022-04-07 12:30:04,465 INFO L290 TraceCheckUtils]: 74: Hoare triple {2885#false} assume -2147483648 <= #t~ret34 && #t~ret34 <= 2147483647;havoc #t~ret34;call #t~mem35 := read~int(~x~0.base, ~x~0.offset, 4); {2885#false} is VALID [2022-04-07 12:30:04,465 INFO L272 TraceCheckUtils]: 75: Hoare triple {2885#false} call __VERIFIER_assert((if ~a~1 == #t~mem35 then 1 else 0)); {2885#false} is VALID [2022-04-07 12:30:04,465 INFO L290 TraceCheckUtils]: 76: Hoare triple {2885#false} ~cond := #in~cond; {2885#false} is VALID [2022-04-07 12:30:04,465 INFO L290 TraceCheckUtils]: 77: Hoare triple {2885#false} assume 0 == ~cond; {2885#false} is VALID [2022-04-07 12:30:04,465 INFO L290 TraceCheckUtils]: 78: Hoare triple {2885#false} assume !false; {2885#false} is VALID [2022-04-07 12:30:04,466 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 29 trivial. 0 not checked. [2022-04-07 12:30:04,466 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 12:30:04,466 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1228990234] [2022-04-07 12:30:04,466 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1228990234] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 12:30:04,466 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 12:30:04,466 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-07 12:30:04,466 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [43473341] [2022-04-07 12:30:04,466 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 12:30:04,467 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 3.1666666666666665) internal successors, (38), 7 states have internal predecessors, (38), 5 states have call successors, (16), 7 states have call predecessors, (16), 3 states have return successors, (13), 5 states have call predecessors, (13), 3 states have call successors, (13) Word has length 79 [2022-04-07 12:30:04,467 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 12:30:04,467 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 3.1666666666666665) internal successors, (38), 7 states have internal predecessors, (38), 5 states have call successors, (16), 7 states have call predecessors, (16), 3 states have return successors, (13), 5 states have call predecessors, (13), 3 states have call successors, (13) [2022-04-07 12:30:04,503 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 12:30:04,503 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-07 12:30:04,504 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 12:30:04,504 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-07 12:30:04,504 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=130, Unknown=0, NotChecked=0, Total=156 [2022-04-07 12:30:04,505 INFO L87 Difference]: Start difference. First operand 94 states and 119 transitions. Second operand has 13 states, 12 states have (on average 3.1666666666666665) internal successors, (38), 7 states have internal predecessors, (38), 5 states have call successors, (16), 7 states have call predecessors, (16), 3 states have return successors, (13), 5 states have call predecessors, (13), 3 states have call successors, (13) [2022-04-07 12:30:06,349 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 12:30:06,350 INFO L93 Difference]: Finished difference Result 151 states and 192 transitions. [2022-04-07 12:30:06,350 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-07 12:30:06,350 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 3.1666666666666665) internal successors, (38), 7 states have internal predecessors, (38), 5 states have call successors, (16), 7 states have call predecessors, (16), 3 states have return successors, (13), 5 states have call predecessors, (13), 3 states have call successors, (13) Word has length 79 [2022-04-07 12:30:06,350 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 12:30:06,350 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 3.1666666666666665) internal successors, (38), 7 states have internal predecessors, (38), 5 states have call successors, (16), 7 states have call predecessors, (16), 3 states have return successors, (13), 5 states have call predecessors, (13), 3 states have call successors, (13) [2022-04-07 12:30:06,352 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 181 transitions. [2022-04-07 12:30:06,353 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 3.1666666666666665) internal successors, (38), 7 states have internal predecessors, (38), 5 states have call successors, (16), 7 states have call predecessors, (16), 3 states have return successors, (13), 5 states have call predecessors, (13), 3 states have call successors, (13) [2022-04-07 12:30:06,355 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 181 transitions. [2022-04-07 12:30:06,355 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 181 transitions. [2022-04-07 12:30:06,501 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 181 edges. 181 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 12:30:06,503 INFO L225 Difference]: With dead ends: 151 [2022-04-07 12:30:06,503 INFO L226 Difference]: Without dead ends: 98 [2022-04-07 12:30:06,503 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 47 GetRequests, 24 SyntacticMatches, 0 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 75 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=114, Invalid=486, Unknown=0, NotChecked=0, Total=600 [2022-04-07 12:30:06,504 INFO L913 BasicCegarLoop]: 68 mSDtfsCounter, 196 mSDsluCounter, 14 mSDsCounter, 0 mSdLazyCounter, 786 mSolverCounterSat, 187 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 196 SdHoareTripleChecker+Valid, 82 SdHoareTripleChecker+Invalid, 973 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 187 IncrementalHoareTripleChecker+Valid, 786 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-04-07 12:30:06,504 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [196 Valid, 82 Invalid, 973 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [187 Valid, 786 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-04-07 12:30:06,505 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 98 states. [2022-04-07 12:30:06,509 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 98 to 96. [2022-04-07 12:30:06,509 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 12:30:06,510 INFO L82 GeneralOperation]: Start isEquivalent. First operand 98 states. Second operand has 96 states, 57 states have (on average 1.1403508771929824) internal successors, (65), 61 states have internal predecessors, (65), 25 states have call successors, (25), 11 states have call predecessors, (25), 13 states have return successors, (33), 23 states have call predecessors, (33), 23 states have call successors, (33) [2022-04-07 12:30:06,510 INFO L74 IsIncluded]: Start isIncluded. First operand 98 states. Second operand has 96 states, 57 states have (on average 1.1403508771929824) internal successors, (65), 61 states have internal predecessors, (65), 25 states have call successors, (25), 11 states have call predecessors, (25), 13 states have return successors, (33), 23 states have call predecessors, (33), 23 states have call successors, (33) [2022-04-07 12:30:06,510 INFO L87 Difference]: Start difference. First operand 98 states. Second operand has 96 states, 57 states have (on average 1.1403508771929824) internal successors, (65), 61 states have internal predecessors, (65), 25 states have call successors, (25), 11 states have call predecessors, (25), 13 states have return successors, (33), 23 states have call predecessors, (33), 23 states have call successors, (33) [2022-04-07 12:30:06,513 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 12:30:06,513 INFO L93 Difference]: Finished difference Result 98 states and 125 transitions. [2022-04-07 12:30:06,513 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 125 transitions. [2022-04-07 12:30:06,513 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 12:30:06,513 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 12:30:06,514 INFO L74 IsIncluded]: Start isIncluded. First operand has 96 states, 57 states have (on average 1.1403508771929824) internal successors, (65), 61 states have internal predecessors, (65), 25 states have call successors, (25), 11 states have call predecessors, (25), 13 states have return successors, (33), 23 states have call predecessors, (33), 23 states have call successors, (33) Second operand 98 states. [2022-04-07 12:30:06,514 INFO L87 Difference]: Start difference. First operand has 96 states, 57 states have (on average 1.1403508771929824) internal successors, (65), 61 states have internal predecessors, (65), 25 states have call successors, (25), 11 states have call predecessors, (25), 13 states have return successors, (33), 23 states have call predecessors, (33), 23 states have call successors, (33) Second operand 98 states. [2022-04-07 12:30:06,516 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 12:30:06,517 INFO L93 Difference]: Finished difference Result 98 states and 125 transitions. [2022-04-07 12:30:06,517 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 125 transitions. [2022-04-07 12:30:06,517 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 12:30:06,517 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 12:30:06,517 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 12:30:06,517 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 12:30:06,517 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 96 states, 57 states have (on average 1.1403508771929824) internal successors, (65), 61 states have internal predecessors, (65), 25 states have call successors, (25), 11 states have call predecessors, (25), 13 states have return successors, (33), 23 states have call predecessors, (33), 23 states have call successors, (33) [2022-04-07 12:30:06,520 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 96 states to 96 states and 123 transitions. [2022-04-07 12:30:06,520 INFO L78 Accepts]: Start accepts. Automaton has 96 states and 123 transitions. Word has length 79 [2022-04-07 12:30:06,520 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 12:30:06,520 INFO L478 AbstractCegarLoop]: Abstraction has 96 states and 123 transitions. [2022-04-07 12:30:06,520 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 3.1666666666666665) internal successors, (38), 7 states have internal predecessors, (38), 5 states have call successors, (16), 7 states have call predecessors, (16), 3 states have return successors, (13), 5 states have call predecessors, (13), 3 states have call successors, (13) [2022-04-07 12:30:06,520 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 123 transitions. [2022-04-07 12:30:06,521 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-04-07 12:30:06,521 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 12:30:06,521 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 12:30:06,521 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2022-04-07 12:30:06,522 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 12:30:06,522 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 12:30:06,522 INFO L85 PathProgramCache]: Analyzing trace with hash 1677199096, now seen corresponding path program 1 times [2022-04-07 12:30:06,522 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 12:30:06,522 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [969177870] [2022-04-07 12:30:06,522 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 12:30:06,522 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 12:30:06,554 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-04-07 12:30:06,554 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-04-07 12:30:06,571 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-04-07 12:30:06,594 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-04-07 12:30:06,594 INFO L618 BasicCegarLoop]: Counterexample is feasible [2022-04-07 12:30:06,595 INFO L788 garLoopResultBuilder]: Registering result UNSAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-07 12:30:06,596 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2022-04-07 12:30:06,598 INFO L719 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1, 1, 1] [2022-04-07 12:30:06,600 INFO L178 ceAbstractionStarter]: Computing trace abstraction results [2022-04-07 12:30:06,625 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-07 12:30:06,625 WARN L170 areAnnotationChecker]: nondet_treeENTRY has no Hoare annotation [2022-04-07 12:30:06,625 WARN L170 areAnnotationChecker]: nondet_treeENTRY has no Hoare annotation [2022-04-07 12:30:06,625 WARN L170 areAnnotationChecker]: assume_abort_if_notENTRY has no Hoare annotation [2022-04-07 12:30:06,625 WARN L170 areAnnotationChecker]: mainENTRY has no Hoare annotation [2022-04-07 12:30:06,626 WARN L170 areAnnotationChecker]: mainENTRY has no Hoare annotation [2022-04-07 12:30:06,626 WARN L170 areAnnotationChecker]: tree_delENTRY has no Hoare annotation [2022-04-07 12:30:06,626 WARN L170 areAnnotationChecker]: ULTIMATE.initENTRY has no Hoare annotation [2022-04-07 12:30:06,626 WARN L170 areAnnotationChecker]: minENTRY has no Hoare annotation [2022-04-07 12:30:06,626 WARN L170 areAnnotationChecker]: taskENTRY has no Hoare annotation [2022-04-07 12:30:06,626 WARN L170 areAnnotationChecker]: sizeENTRY has no Hoare annotation [2022-04-07 12:30:06,626 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-04-07 12:30:06,626 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-04-07 12:30:06,626 WARN L170 areAnnotationChecker]: __VERIFIER_assertENTRY has no Hoare annotation [2022-04-07 12:30:06,626 WARN L170 areAnnotationChecker]: #Ultimate.meminitENTRY has no Hoare annotation [2022-04-07 12:30:06,626 WARN L170 areAnnotationChecker]: tree_inorderENTRY has no Hoare annotation [2022-04-07 12:30:06,626 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-07 12:30:06,626 WARN L170 areAnnotationChecker]: nondet_treeFINAL has no Hoare annotation [2022-04-07 12:30:06,626 WARN L170 areAnnotationChecker]: L30 has no Hoare annotation [2022-04-07 12:30:06,626 WARN L170 areAnnotationChecker]: L30 has no Hoare annotation [2022-04-07 12:30:06,626 WARN L170 areAnnotationChecker]: L10 has no Hoare annotation [2022-04-07 12:30:06,626 WARN L170 areAnnotationChecker]: L10 has no Hoare annotation [2022-04-07 12:30:06,626 WARN L170 areAnnotationChecker]: L105 has no Hoare annotation [2022-04-07 12:30:06,626 WARN L170 areAnnotationChecker]: L105 has no Hoare annotation [2022-04-07 12:30:06,626 WARN L170 areAnnotationChecker]: L52 has no Hoare annotation [2022-04-07 12:30:06,626 WARN L170 areAnnotationChecker]: L52 has no Hoare annotation [2022-04-07 12:30:06,626 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-07 12:30:06,626 WARN L170 areAnnotationChecker]: L37 has no Hoare annotation [2022-04-07 12:30:06,626 WARN L170 areAnnotationChecker]: L37 has no Hoare annotation [2022-04-07 12:30:06,626 WARN L170 areAnnotationChecker]: L83 has no Hoare annotation [2022-04-07 12:30:06,626 WARN L170 areAnnotationChecker]: L83 has no Hoare annotation [2022-04-07 12:30:06,626 WARN L170 areAnnotationChecker]: L78 has no Hoare annotation [2022-04-07 12:30:06,626 WARN L170 areAnnotationChecker]: L78 has no Hoare annotation [2022-04-07 12:30:06,626 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-04-07 12:30:06,626 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-04-07 12:30:06,626 WARN L170 areAnnotationChecker]: L16 has no Hoare annotation [2022-04-07 12:30:06,627 WARN L170 areAnnotationChecker]: L16 has no Hoare annotation [2022-04-07 12:30:06,627 WARN L170 areAnnotationChecker]: #Ultimate.meminitFINAL has no Hoare annotation [2022-04-07 12:30:06,627 WARN L170 areAnnotationChecker]: L67 has no Hoare annotation [2022-04-07 12:30:06,627 WARN L170 areAnnotationChecker]: L67 has no Hoare annotation [2022-04-07 12:30:06,627 WARN L170 areAnnotationChecker]: nondet_treeEXIT has no Hoare annotation [2022-04-07 12:30:06,627 WARN L170 areAnnotationChecker]: nondet_treeEXIT has no Hoare annotation [2022-04-07 12:30:06,627 WARN L170 areAnnotationChecker]: nondet_treeEXIT has no Hoare annotation [2022-04-07 12:30:06,627 WARN L170 areAnnotationChecker]: L30-1 has no Hoare annotation [2022-04-07 12:30:06,627 WARN L170 areAnnotationChecker]: L10-2 has no Hoare annotation [2022-04-07 12:30:06,627 WARN L170 areAnnotationChecker]: L105-1 has no Hoare annotation [2022-04-07 12:30:06,627 WARN L170 areAnnotationChecker]: L52-2 has no Hoare annotation [2022-04-07 12:30:06,627 WARN L170 areAnnotationChecker]: L56-2 has no Hoare annotation [2022-04-07 12:30:06,627 WARN L170 areAnnotationChecker]: L56-2 has no Hoare annotation [2022-04-07 12:30:06,627 WARN L170 areAnnotationChecker]: L56-2 has no Hoare annotation [2022-04-07 12:30:06,627 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-07 12:30:06,627 WARN L170 areAnnotationChecker]: minFINAL has no Hoare annotation [2022-04-07 12:30:06,627 WARN L170 areAnnotationChecker]: L40 has no Hoare annotation [2022-04-07 12:30:06,627 WARN L170 areAnnotationChecker]: L40 has no Hoare annotation [2022-04-07 12:30:06,627 WARN L170 areAnnotationChecker]: L83-1 has no Hoare annotation [2022-04-07 12:30:06,627 WARN L170 areAnnotationChecker]: sizeFINAL has no Hoare annotation [2022-04-07 12:30:06,627 WARN L170 areAnnotationChecker]: L79 has no Hoare annotation [2022-04-07 12:30:06,627 WARN L170 areAnnotationChecker]: L79 has no Hoare annotation [2022-04-07 12:30:06,627 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-07 12:30:06,627 WARN L170 areAnnotationChecker]: L16-1 has no Hoare annotation [2022-04-07 12:30:06,627 WARN L170 areAnnotationChecker]: L16-1 has no Hoare annotation [2022-04-07 12:30:06,627 WARN L170 areAnnotationChecker]: L16-3 has no Hoare annotation [2022-04-07 12:30:06,627 WARN L170 areAnnotationChecker]: #Ultimate.meminitEXIT has no Hoare annotation [2022-04-07 12:30:06,627 WARN L170 areAnnotationChecker]: #Ultimate.meminitEXIT has no Hoare annotation [2022-04-07 12:30:06,627 WARN L170 areAnnotationChecker]: tree_inorderFINAL has no Hoare annotation [2022-04-07 12:30:06,627 WARN L170 areAnnotationChecker]: L70 has no Hoare annotation [2022-04-07 12:30:06,627 WARN L170 areAnnotationChecker]: L70 has no Hoare annotation [2022-04-07 12:30:06,628 WARN L170 areAnnotationChecker]: L31-1 has no Hoare annotation [2022-04-07 12:30:06,628 WARN L170 areAnnotationChecker]: L31 has no Hoare annotation [2022-04-07 12:30:06,628 WARN L170 areAnnotationChecker]: L31 has no Hoare annotation [2022-04-07 12:30:06,628 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-07 12:30:06,628 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2022-04-07 12:30:06,628 WARN L170 areAnnotationChecker]: tree_delFINAL has no Hoare annotation [2022-04-07 12:30:06,628 WARN L170 areAnnotationChecker]: L56-3 has no Hoare annotation [2022-04-07 12:30:06,628 WARN L170 areAnnotationChecker]: minEXIT has no Hoare annotation [2022-04-07 12:30:06,628 WARN L170 areAnnotationChecker]: minEXIT has no Hoare annotation [2022-04-07 12:30:06,628 WARN L170 areAnnotationChecker]: minEXIT has no Hoare annotation [2022-04-07 12:30:06,628 WARN L170 areAnnotationChecker]: L40-1 has no Hoare annotation [2022-04-07 12:30:06,628 WARN L170 areAnnotationChecker]: L86 has no Hoare annotation [2022-04-07 12:30:06,628 WARN L170 areAnnotationChecker]: L86 has no Hoare annotation [2022-04-07 12:30:06,628 WARN L170 areAnnotationChecker]: sizeEXIT has no Hoare annotation [2022-04-07 12:30:06,628 WARN L170 areAnnotationChecker]: sizeEXIT has no Hoare annotation [2022-04-07 12:30:06,628 WARN L170 areAnnotationChecker]: sizeEXIT has no Hoare annotation [2022-04-07 12:30:06,628 WARN L170 areAnnotationChecker]: sizeEXIT has no Hoare annotation [2022-04-07 12:30:06,628 WARN L170 areAnnotationChecker]: L79-1 has no Hoare annotation [2022-04-07 12:30:06,628 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-07 12:30:06,628 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-07 12:30:06,628 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-07 12:30:06,628 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-07 12:30:06,628 WARN L170 areAnnotationChecker]: L88-1 has no Hoare annotation [2022-04-07 12:30:06,628 WARN L170 areAnnotationChecker]: L95-1 has no Hoare annotation [2022-04-07 12:30:06,628 WARN L170 areAnnotationChecker]: tree_inorderEXIT has no Hoare annotation [2022-04-07 12:30:06,628 WARN L170 areAnnotationChecker]: tree_inorderEXIT has no Hoare annotation [2022-04-07 12:30:06,628 WARN L170 areAnnotationChecker]: tree_inorderEXIT has no Hoare annotation [2022-04-07 12:30:06,628 WARN L170 areAnnotationChecker]: tree_inorderEXIT has no Hoare annotation [2022-04-07 12:30:06,628 WARN L170 areAnnotationChecker]: L70-1 has no Hoare annotation [2022-04-07 12:30:06,628 WARN L170 areAnnotationChecker]: L87-1 has no Hoare annotation [2022-04-07 12:30:06,628 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-07 12:30:06,628 WARN L170 areAnnotationChecker]: tree_delEXIT has no Hoare annotation [2022-04-07 12:30:06,628 WARN L170 areAnnotationChecker]: L41-1 has no Hoare annotation [2022-04-07 12:30:06,629 WARN L170 areAnnotationChecker]: L41 has no Hoare annotation [2022-04-07 12:30:06,629 WARN L170 areAnnotationChecker]: L41 has no Hoare annotation [2022-04-07 12:30:06,629 WARN L170 areAnnotationChecker]: L86-1 has no Hoare annotation [2022-04-07 12:30:06,629 WARN L170 areAnnotationChecker]: L94-1 has no Hoare annotation [2022-04-07 12:30:06,630 WARN L170 areAnnotationChecker]: L79-3 has no Hoare annotation [2022-04-07 12:30:06,630 WARN L170 areAnnotationChecker]: L79-2 has no Hoare annotation [2022-04-07 12:30:06,630 WARN L170 areAnnotationChecker]: L79-2 has no Hoare annotation [2022-04-07 12:30:06,631 WARN L170 areAnnotationChecker]: L90-1 has no Hoare annotation [2022-04-07 12:30:06,631 WARN L170 areAnnotationChecker]: L93-1 has no Hoare annotation [2022-04-07 12:30:06,631 WARN L170 areAnnotationChecker]: L98-1 has no Hoare annotation [2022-04-07 12:30:06,631 WARN L170 areAnnotationChecker]: L101-1 has no Hoare annotation [2022-04-07 12:30:06,631 WARN L170 areAnnotationChecker]: L89 has no Hoare annotation [2022-04-07 12:30:06,631 WARN L170 areAnnotationChecker]: L89 has no Hoare annotation [2022-04-07 12:30:06,631 WARN L170 areAnnotationChecker]: L96 has no Hoare annotation [2022-04-07 12:30:06,631 WARN L170 areAnnotationChecker]: L96 has no Hoare annotation [2022-04-07 12:30:06,631 WARN L170 areAnnotationChecker]: L89-1 has no Hoare annotation [2022-04-07 12:30:06,631 WARN L170 areAnnotationChecker]: L96-1 has no Hoare annotation [2022-04-07 12:30:06,631 WARN L170 areAnnotationChecker]: L72-1 has no Hoare annotation [2022-04-07 12:30:06,631 WARN L170 areAnnotationChecker]: L72 has no Hoare annotation [2022-04-07 12:30:06,631 WARN L170 areAnnotationChecker]: L72 has no Hoare annotation [2022-04-07 12:30:06,631 WARN L170 areAnnotationChecker]: L88 has no Hoare annotation [2022-04-07 12:30:06,631 WARN L170 areAnnotationChecker]: L88 has no Hoare annotation [2022-04-07 12:30:06,631 WARN L170 areAnnotationChecker]: L92-1 has no Hoare annotation [2022-04-07 12:30:06,631 WARN L170 areAnnotationChecker]: L42 has no Hoare annotation [2022-04-07 12:30:06,631 WARN L170 areAnnotationChecker]: L42 has no Hoare annotation [2022-04-07 12:30:06,631 WARN L170 areAnnotationChecker]: L87 has no Hoare annotation [2022-04-07 12:30:06,631 WARN L170 areAnnotationChecker]: L87 has no Hoare annotation [2022-04-07 12:30:06,631 WARN L170 areAnnotationChecker]: L95 has no Hoare annotation [2022-04-07 12:30:06,631 WARN L170 areAnnotationChecker]: L95 has no Hoare annotation [2022-04-07 12:30:06,631 WARN L170 areAnnotationChecker]: L92 has no Hoare annotation [2022-04-07 12:30:06,631 WARN L170 areAnnotationChecker]: L92 has no Hoare annotation [2022-04-07 12:30:06,631 WARN L170 areAnnotationChecker]: L94 has no Hoare annotation [2022-04-07 12:30:06,631 WARN L170 areAnnotationChecker]: L94 has no Hoare annotation [2022-04-07 12:30:06,631 WARN L170 areAnnotationChecker]: L100-3 has no Hoare annotation [2022-04-07 12:30:06,632 WARN L170 areAnnotationChecker]: L100-3 has no Hoare annotation [2022-04-07 12:30:06,632 WARN L170 areAnnotationChecker]: L100-3 has no Hoare annotation [2022-04-07 12:30:06,632 WARN L170 areAnnotationChecker]: L100-2 has no Hoare annotation [2022-04-07 12:30:06,632 WARN L170 areAnnotationChecker]: L90 has no Hoare annotation [2022-04-07 12:30:06,632 WARN L170 areAnnotationChecker]: L90 has no Hoare annotation [2022-04-07 12:30:06,632 WARN L170 areAnnotationChecker]: L98 has no Hoare annotation [2022-04-07 12:30:06,632 WARN L170 areAnnotationChecker]: L98 has no Hoare annotation [2022-04-07 12:30:06,632 WARN L170 areAnnotationChecker]: L93 has no Hoare annotation [2022-04-07 12:30:06,632 WARN L170 areAnnotationChecker]: L93 has no Hoare annotation [2022-04-07 12:30:06,632 WARN L170 areAnnotationChecker]: L100-4 has no Hoare annotation [2022-04-07 12:30:06,632 WARN L170 areAnnotationChecker]: L101 has no Hoare annotation [2022-04-07 12:30:06,632 WARN L170 areAnnotationChecker]: L101 has no Hoare annotation [2022-04-07 12:30:06,632 WARN L170 areAnnotationChecker]: taskFINAL has no Hoare annotation [2022-04-07 12:30:06,632 WARN L170 areAnnotationChecker]: taskEXIT has no Hoare annotation [2022-04-07 12:30:06,632 INFO L163 areAnnotationChecker]: CFG has 0 edges. 0 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-07 12:30:06,634 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 07.04 12:30:06 BoogieIcfgContainer [2022-04-07 12:30:06,634 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-07 12:30:06,635 INFO L158 Benchmark]: Toolchain (without parser) took 12976.46ms. Allocated memory was 184.5MB in the beginning and 341.8MB in the end (delta: 157.3MB). Free memory was 123.8MB in the beginning and 129.0MB in the end (delta: -5.2MB). Peak memory consumption was 152.8MB. Max. memory is 8.0GB. [2022-04-07 12:30:06,635 INFO L158 Benchmark]: CDTParser took 0.09ms. Allocated memory is still 184.5MB. Free memory is still 140.8MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-07 12:30:06,635 INFO L158 Benchmark]: CACSL2BoogieTranslator took 258.15ms. Allocated memory was 184.5MB in the beginning and 271.6MB in the end (delta: 87.0MB). Free memory was 123.7MB in the beginning and 240.4MB in the end (delta: -116.7MB). Peak memory consumption was 16.5MB. Max. memory is 8.0GB. [2022-04-07 12:30:06,635 INFO L158 Benchmark]: Boogie Preprocessor took 50.10ms. Allocated memory is still 271.6MB. Free memory was 240.4MB in the beginning and 237.8MB in the end (delta: 2.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-07 12:30:06,635 INFO L158 Benchmark]: RCFGBuilder took 565.18ms. Allocated memory is still 271.6MB. Free memory was 237.8MB in the beginning and 213.7MB in the end (delta: 24.1MB). Peak memory consumption was 24.1MB. Max. memory is 8.0GB. [2022-04-07 12:30:06,635 INFO L158 Benchmark]: TraceAbstraction took 12099.23ms. Allocated memory was 271.6MB in the beginning and 341.8MB in the end (delta: 70.3MB). Free memory was 213.2MB in the beginning and 129.0MB in the end (delta: 84.1MB). Peak memory consumption was 155.4MB. Max. memory is 8.0GB. [2022-04-07 12:30:06,637 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.09ms. Allocated memory is still 184.5MB. Free memory is still 140.8MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 258.15ms. Allocated memory was 184.5MB in the beginning and 271.6MB in the end (delta: 87.0MB). Free memory was 123.7MB in the beginning and 240.4MB in the end (delta: -116.7MB). Peak memory consumption was 16.5MB. Max. memory is 8.0GB. * Boogie Preprocessor took 50.10ms. Allocated memory is still 271.6MB. Free memory was 240.4MB in the beginning and 237.8MB in the end (delta: 2.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 565.18ms. Allocated memory is still 271.6MB. Free memory was 237.8MB in the beginning and 213.7MB in the end (delta: 24.1MB). Peak memory consumption was 24.1MB. Max. memory is 8.0GB. * TraceAbstraction took 12099.23ms. Allocated memory was 271.6MB in the beginning and 341.8MB in the end (delta: 70.3MB). Free memory was 213.2MB in the beginning and 129.0MB in the end (delta: 84.1MB). Peak memory consumption was 155.4MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - CounterExampleResult [Line: 16]: a call to reach_error is reachable a call to reach_error is reachable We found a FailurePath: [L105] CALL, EXPR nondet_tree() [L25] COND FALSE !(__VERIFIER_nondet_bool()) [L28] struct node *n = (struct node *)malloc(sizeof(struct node)); [L29] n->data = __VERIFIER_nondet_int() [L30] CALL, EXPR nondet_tree() [L25] COND TRUE __VERIFIER_nondet_bool() [L26] return 0; VAL [\result={0:0}] [L30] RET, EXPR nondet_tree() VAL [n={-2:0}, nondet_tree()={0:0}] [L30] n->left = nondet_tree() [L31] CALL, EXPR nondet_tree() [L25] COND TRUE __VERIFIER_nondet_bool() [L26] return 0; VAL [\result={0:0}] [L31] RET, EXPR nondet_tree() VAL [n={-2:0}, nondet_tree()={0:0}] [L31] n->right = nondet_tree() [L32] return n; VAL [\result={-2:0}, n={-2:0}] [L105] RET, EXPR nondet_tree() VAL [nondet_tree()={-2:0}] [L105] CALL task(nondet_tree()) VAL [t={-2:0}] [L83] CALL, EXPR min(t) VAL [n={-2:0}] [L37] COND FALSE !(!n) [L40] EXPR n->left VAL [n={-2:0}, n={-2:0}, n->left={0:0}] [L40] CALL, EXPR min(n->left) VAL [n={0:0}] [L37] COND TRUE !n [L38] return 2147483647; VAL [\result=2147483647, n={0:0}, n={0:0}] [L40] RET, EXPR min(n->left) VAL [min(n->left)=2147483647, n={-2:0}, n={-2:0}, n->left={0:0}] [L40] int a = min(n->left); [L41] EXPR n->right VAL [a=2147483647, n={-2:0}, n={-2:0}, n->right={0:0}] [L41] CALL, EXPR min(n->right) VAL [n={0:0}] [L37] COND TRUE !n [L38] return 2147483647; VAL [\result=2147483647, n={0:0}, n={0:0}] [L41] RET, EXPR min(n->right) VAL [a=2147483647, min(n->right)=2147483647, n={-2:0}, n={-2:0}, n->right={0:0}] [L41] int b = min(n->right); [L42] COND TRUE a <= b [L42] return a; VAL [\result=2147483647, a=2147483647, b=2147483647, n={-2:0}, n={-2:0}] [L83] RET, EXPR min(t) VAL [min(t)=2147483647, t={-2:0}, t={-2:0}] [L83] int a = min(t); [L84] int b; VAL [a=2147483647, b={5:0}, t={-2:0}, t={-2:0}] [L86] CALL, EXPR size(t) VAL [t={-2:0}] [L78] COND FALSE !(!t) [L79] EXPR t->left VAL [t={-2:0}, t={-2:0}, t->left={0:0}] [L79] CALL, EXPR size(t->left) VAL [t={0:0}] [L78] COND TRUE !t [L78] return 0; VAL [\result=0, t={0:0}, t={0:0}] [L79] RET, EXPR size(t->left) VAL [size(t->left)=0, t={-2:0}, t={-2:0}, t->left={0:0}] [L79] EXPR t->right VAL [size(t->left)=0, t={-2:0}, t={-2:0}, t->left={0:0}, t->right={0:0}] [L79] CALL, EXPR size(t->right) VAL [t={0:0}] [L78] COND TRUE !t [L78] return 0; VAL [\result=0, t={0:0}, t={0:0}] [L79] RET, EXPR size(t->right) VAL [size(t->left)=0, size(t->right)=0, t={-2:0}, t={-2:0}, t->left={0:0}, t->right={0:0}] [L79] return size(t->left) + size(t->right) + 1; [L86] RET, EXPR size(t) VAL [a=2147483647, b={5:0}, size(t)=1, t={-2:0}, t={-2:0}] [L86] int n = size(t); [L87] CALL assume_abort_if_not(n != 0) VAL [\old(cond)=1] [L10] COND FALSE !(!cond) VAL [\old(cond)=1, cond=1] [L87] RET assume_abort_if_not(n != 0) VAL [a=2147483647, b={5:0}, n=1, t={-2:0}, t={-2:0}] [L88] EXPR, FCALL calloc(n, sizeof(int)) VAL [a=2147483647, b={5:0}, calloc(n, sizeof(int))={-3:0}, n=1, t={-2:0}, t={-2:0}] [L88] int *x = calloc(n, sizeof(int)); VAL [a=2147483647, b={5:0}, calloc(n, sizeof(int))={-3:0}, n=1, t={-2:0}, t={-2:0}, x={-3:0}] [L89] CALL tree_inorder(t, x, n) VAL [\old(i)=1, a={-3:0}, t={-2:0}] [L67] COND FALSE !(!t) [L70] EXPR t->left VAL [\old(i)=1, a={-3:0}, a={-3:0}, i=1, t={-2:0}, t={-2:0}, t->left={0:0}] [L70] CALL, EXPR tree_inorder(t->left, a, i) VAL [\old(i)=1, a={-3:0}, t={0:0}] [L67] COND TRUE !t [L68] return i; VAL [\old(i)=1, \result=1, a={-3:0}, a={-3:0}, i=1, t={0:0}, t={0:0}] [L70] RET, EXPR tree_inorder(t->left, a, i) VAL [\old(i)=1, a={-3:0}, a={-3:0}, i=1, t={-2:0}, t={-2:0}, t->left={0:0}, tree_inorder(t->left, a, i)=1] [L70] i = tree_inorder(t->left, a, i) [L71] EXPR i++ [L71] EXPR t->data [L71] a[i++] = t->data [L72] EXPR t->right VAL [\old(i)=1, a={-3:0}, a={-3:0}, i=2, t={-2:0}, t={-2:0}, t->right={0:0}] [L72] CALL, EXPR tree_inorder(t->right, a, i) VAL [\old(i)=2, a={-3:0}, t={0:0}] [L67] COND TRUE !t [L68] return i; VAL [\old(i)=2, \result=2, a={-3:0}, a={-3:0}, i=2, t={0:0}, t={0:0}] [L72] RET, EXPR tree_inorder(t->right, a, i) VAL [\old(i)=1, a={-3:0}, a={-3:0}, i=2, t={-2:0}, t={-2:0}, t->right={0:0}, tree_inorder(t->right, a, i)=2] [L72] i = tree_inorder(t->right, a, i) [L73] return i; VAL [\old(i)=1, \result=2, a={-3:0}, a={-3:0}, i=2, t={-2:0}, t={-2:0}] [L89] RET tree_inorder(t, x, n) VAL [a=2147483647, b={5:0}, calloc(n, sizeof(int))={-3:0}, n=1, t={-2:0}, t={-2:0}, tree_inorder(t, x, n)=2, x={-3:0}] [L90] EXPR x[0] VAL [a=2147483647, b={5:0}, calloc(n, sizeof(int))={-3:0}, n=1, t={-2:0}, t={-2:0}, x={-3:0}, x[0]=0] [L90] CALL __VERIFIER_assert(a == x[0]) VAL [\old(cond)=0] [L16] COND TRUE !cond VAL [\old(cond)=0, cond=0] [L16] reach_error() VAL [\old(cond)=0, cond=0] - StatisticsResult: Ultimate Automizer benchmark data CFG has 13 procedures, 99 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 12.0s, OverallIterations: 6, TraceHistogramMax: 3, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 9.3s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 820 SdHoareTripleChecker+Valid, 3.6s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 765 mSDsluCounter, 405 SdHoareTripleChecker+Invalid, 3.6s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 52 mSDsCounter, 728 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 3194 IncrementalHoareTripleChecker+Invalid, 3922 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 728 mSolverCounterUnsat, 353 mSDtfsCounter, 3194 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 286 GetRequests, 194 SyntacticMatches, 3 SemanticMatches, 89 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 203 ImplicationChecksByTransitivity, 0.8s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=96occurred in iteration=0, InterpolantAutomatonStates: 61, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.1s AutomataMinimizationTime, 5 MinimizatonAttempts, 24 StatesRemovedByMinimization, 5 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 1.7s InterpolantComputationTime, 436 NumberOfCodeBlocks, 436 NumberOfCodeBlocksAsserted, 7 NumberOfCheckSat, 394 ConstructedInterpolants, 0 QuantifiedInterpolants, 1065 SizeOfPredicates, 4 NumberOfNonLiveVariables, 280 ConjunctsInSsa, 25 ConjunctsInUnsatCore, 7 InterpolantComputations, 4 PerfectInterpolantSequences, 84/90 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available RESULT: Ultimate proved your program to be incorrect! [2022-04-07 12:30:06,661 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Ended with exit code 0 Received shutdown request...