/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-fb4f59a-m [2022-04-27 11:45:40,711 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-27 11:45:40,741 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-27 11:45:40,779 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-27 11:45:40,779 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-27 11:45:40,780 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-27 11:45:40,782 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-27 11:45:40,784 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-27 11:45:40,785 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-27 11:45:40,788 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-27 11:45:40,788 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-27 11:45:40,789 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-27 11:45:40,790 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-27 11:45:40,791 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-27 11:45:40,792 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-27 11:45:40,794 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-27 11:45:40,794 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-27 11:45:40,795 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-27 11:45:40,796 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-27 11:45:40,800 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-27 11:45:40,801 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-27 11:45:40,802 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-27 11:45:40,802 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-27 11:45:40,803 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-27 11:45:40,804 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-27 11:45:40,808 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-27 11:45:40,809 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-27 11:45:40,809 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-27 11:45:40,809 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-27 11:45:40,810 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-27 11:45:40,810 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-27 11:45:40,810 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-27 11:45:40,812 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-27 11:45:40,812 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-27 11:45:40,812 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-27 11:45:40,813 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-27 11:45:40,813 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-27 11:45:40,813 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-27 11:45:40,814 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-27 11:45:40,814 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-27 11:45:40,814 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-27 11:45:40,815 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-27 11:45:40,816 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-27 11:45:40,837 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-27 11:45:40,837 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-27 11:45:40,837 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-04-27 11:45:40,837 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-04-27 11:45:40,838 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-27 11:45:40,838 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-27 11:45:40,838 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-27 11:45:40,839 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-27 11:45:40,839 INFO L138 SettingsManager]: * Use SBE=true [2022-04-27 11:45:40,839 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-27 11:45:40,839 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-27 11:45:40,839 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-27 11:45:40,840 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-27 11:45:40,840 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-27 11:45:40,840 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-27 11:45:40,840 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-27 11:45:40,840 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-27 11:45:40,840 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-27 11:45:40,840 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-27 11:45:40,840 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-27 11:45:40,840 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-27 11:45:40,841 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-27 11:45:40,841 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-27 11:45:40,841 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-27 11:45:40,841 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 11:45:40,841 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-27 11:45:40,841 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-27 11:45:40,841 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-27 11:45:40,842 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-27 11:45:40,842 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-27 11:45:40,842 INFO L138 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2022-04-27 11:45:40,842 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-04-27 11:45:40,842 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-27 11:45:40,842 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-27 11:45:41,008 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-27 11:45:41,033 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-27 11:45:41,034 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-27 11:45:41,035 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-27 11:45:41,036 INFO L275 PluginConnector]: CDTParser initialized [2022-04-27 11:45:41,037 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-27 11:45:41,081 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/23243421e/a6c7c2e726404040aeebc9005ebfa841/FLAG4330f186a [2022-04-27 11:45:41,447 INFO L306 CDTParser]: Found 1 translation units. [2022-04-27 11:45:41,448 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/verifythis/tree_del_iter_incorrect.c [2022-04-27 11:45:41,452 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/23243421e/a6c7c2e726404040aeebc9005ebfa841/FLAG4330f186a [2022-04-27 11:45:41,460 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/23243421e/a6c7c2e726404040aeebc9005ebfa841 [2022-04-27 11:45:41,463 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-27 11:45:41,464 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-27 11:45:41,465 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-27 11:45:41,465 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-27 11:45:41,467 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-27 11:45:41,468 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 11:45:41" (1/1) ... [2022-04-27 11:45:41,468 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5a804f49 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 11:45:41, skipping insertion in model container [2022-04-27 11:45:41,469 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 11:45:41" (1/1) ... [2022-04-27 11:45:41,473 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-27 11:45:41,482 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-27 11:45:41,607 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-27 11:45:41,635 WARN L1550 CHandler]: Possible shadowing of function min [2022-04-27 11:45:41,646 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 11:45:41,653 INFO L203 MainTranslator]: Completed pre-run [2022-04-27 11:45:41,665 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-27 11:45:41,672 WARN L1550 CHandler]: Possible shadowing of function min [2022-04-27 11:45:41,683 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 11:45:41,696 INFO L208 MainTranslator]: Completed translation [2022-04-27 11:45:41,697 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 11:45:41 WrapperNode [2022-04-27 11:45:41,697 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-27 11:45:41,697 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-27 11:45:41,697 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-27 11:45:41,697 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-27 11:45:41,706 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 11:45:41" (1/1) ... [2022-04-27 11:45:41,706 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 11:45:41" (1/1) ... [2022-04-27 11:45:41,721 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 11:45:41" (1/1) ... [2022-04-27 11:45:41,722 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 11:45:41" (1/1) ... [2022-04-27 11:45:41,734 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 11:45:41" (1/1) ... [2022-04-27 11:45:41,748 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 11:45:41" (1/1) ... [2022-04-27 11:45:41,749 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 11:45:41" (1/1) ... [2022-04-27 11:45:41,752 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-27 11:45:41,753 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-27 11:45:41,753 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-27 11:45:41,753 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-27 11:45:41,753 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 11:45:41" (1/1) ... [2022-04-27 11:45:41,764 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 11:45:41,773 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 11:45:41,783 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-27 11:45:41,785 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-27 11:45:41,809 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-27 11:45:41,810 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-27 11:45:41,810 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-27 11:45:41,810 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-27 11:45:41,810 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-27 11:45:41,810 INFO L138 BoogieDeclarations]: Found implementation of procedure nondet_tree [2022-04-27 11:45:41,810 INFO L138 BoogieDeclarations]: Found implementation of procedure min [2022-04-27 11:45:41,810 INFO L138 BoogieDeclarations]: Found implementation of procedure tree_del [2022-04-27 11:45:41,810 INFO L138 BoogieDeclarations]: Found implementation of procedure tree_inorder [2022-04-27 11:45:41,810 INFO L138 BoogieDeclarations]: Found implementation of procedure size [2022-04-27 11:45:41,810 INFO L138 BoogieDeclarations]: Found implementation of procedure task [2022-04-27 11:45:41,810 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-27 11:45:41,811 INFO L138 BoogieDeclarations]: Found implementation of procedure #Ultimate.meminit [2022-04-27 11:45:41,811 INFO L130 BoogieDeclarations]: Found specification of procedure calloc [2022-04-27 11:45:41,811 INFO L130 BoogieDeclarations]: Found specification of procedure malloc [2022-04-27 11:45:41,811 INFO L130 BoogieDeclarations]: Found specification of procedure free [2022-04-27 11:45:41,811 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-27 11:45:41,811 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_bool [2022-04-27 11:45:41,811 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-27 11:45:41,811 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-27 11:45:41,811 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-27 11:45:41,811 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-27 11:45:41,811 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-27 11:45:41,811 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-27 11:45:41,811 INFO L130 BoogieDeclarations]: Found specification of procedure nondet_tree [2022-04-27 11:45:41,812 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2022-04-27 11:45:41,812 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-27 11:45:41,812 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2022-04-27 11:45:41,812 INFO L130 BoogieDeclarations]: Found specification of procedure min [2022-04-27 11:45:41,812 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2022-04-27 11:45:41,812 INFO L130 BoogieDeclarations]: Found specification of procedure tree_del [2022-04-27 11:45:41,812 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-27 11:45:41,812 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-27 11:45:41,812 INFO L130 BoogieDeclarations]: Found specification of procedure tree_inorder [2022-04-27 11:45:41,812 INFO L130 BoogieDeclarations]: Found specification of procedure size [2022-04-27 11:45:41,812 INFO L130 BoogieDeclarations]: Found specification of procedure task [2022-04-27 11:45:41,812 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-04-27 11:45:41,812 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.meminit [2022-04-27 11:45:41,812 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-27 11:45:41,813 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-27 11:45:41,813 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-27 11:45:41,813 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-27 11:45:41,881 INFO L234 CfgBuilder]: Building ICFG [2022-04-27 11:45:41,882 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-27 11:45:42,183 INFO L275 CfgBuilder]: Performing block encoding [2022-04-27 11:45:42,189 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-27 11:45:42,190 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-27 11:45:42,193 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 11:45:42 BoogieIcfgContainer [2022-04-27 11:45:42,193 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-27 11:45:42,195 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-27 11:45:42,195 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-27 11:45:42,197 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-27 11:45:42,197 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 27.04 11:45:41" (1/3) ... [2022-04-27 11:45:42,198 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3de97ced and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 11:45:42, skipping insertion in model container [2022-04-27 11:45:42,198 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 11:45:41" (2/3) ... [2022-04-27 11:45:42,198 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3de97ced and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 11:45:42, skipping insertion in model container [2022-04-27 11:45:42,199 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 11:45:42" (3/3) ... [2022-04-27 11:45:42,200 INFO L111 eAbstractionObserver]: Analyzing ICFG tree_del_iter_incorrect.c [2022-04-27 11:45:42,210 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-27 11:45:42,210 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-27 11:45:42,261 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-27 11:45:42,265 INFO L357 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, mPorIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@55813b0b, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@1346181d [2022-04-27 11:45:42,265 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-27 11:45:42,271 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-27 11:45:42,277 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-04-27 11:45:42,277 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 11:45:42,278 INFO L195 NwaCegarLoop]: 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-27 11:45:42,278 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 11:45:42,281 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 11:45:42,281 INFO L85 PathProgramCache]: Analyzing trace with hash 1536185801, now seen corresponding path program 1 times [2022-04-27 11:45:42,287 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 11:45:42,287 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1739384312] [2022-04-27 11:45:42,288 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 11:45:42,288 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 11:45:42,367 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:42,424 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 11:45:42,440 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:42,450 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-27 11:45:42,450 INFO L290 TraceCheckUtils]: 1: Hoare triple {99#true} assume true; {99#true} is VALID [2022-04-27 11:45:42,450 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {99#true} {99#true} #181#return; {99#true} is VALID [2022-04-27 11:45:42,461 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 5 [2022-04-27 11:45:42,465 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:42,469 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-27 11:45:42,469 INFO L290 TraceCheckUtils]: 1: Hoare triple {99#true} assume true; {99#true} is VALID [2022-04-27 11:45:42,470 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {99#true} {99#true} #139#return; {99#true} is VALID [2022-04-27 11:45:42,470 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-27 11:45:42,471 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:42,474 INFO L290 TraceCheckUtils]: 0: Hoare triple {99#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {99#true} is VALID [2022-04-27 11:45:42,474 INFO L290 TraceCheckUtils]: 1: Hoare triple {99#true} assume ~n.base == 0 && ~n.offset == 0;#res := 2147483647; {99#true} is VALID [2022-04-27 11:45:42,474 INFO L290 TraceCheckUtils]: 2: Hoare triple {99#true} assume true; {99#true} is VALID [2022-04-27 11:45:42,474 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {99#true} {99#true} #151#return; {99#true} is VALID [2022-04-27 11:45:42,475 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-27 11:45:42,476 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:42,481 INFO L290 TraceCheckUtils]: 0: Hoare triple {99#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {99#true} is VALID [2022-04-27 11:45:42,481 INFO L290 TraceCheckUtils]: 1: Hoare triple {99#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {99#true} is VALID [2022-04-27 11:45:42,481 INFO L290 TraceCheckUtils]: 2: Hoare triple {99#true} assume true; {99#true} is VALID [2022-04-27 11:45:42,481 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {99#true} {99#true} #153#return; {99#true} is VALID [2022-04-27 11:45:42,481 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 23 [2022-04-27 11:45:42,483 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:42,492 INFO L290 TraceCheckUtils]: 0: Hoare triple {99#true} ~cond := #in~cond; {99#true} is VALID [2022-04-27 11:45:42,492 INFO L290 TraceCheckUtils]: 1: Hoare triple {99#true} assume 0 == ~cond;assume false; {100#false} is VALID [2022-04-27 11:45:42,492 INFO L290 TraceCheckUtils]: 2: Hoare triple {100#false} assume true; {100#false} is VALID [2022-04-27 11:45:42,493 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {100#false} {99#true} #155#return; {100#false} is VALID [2022-04-27 11:45:42,496 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 29 [2022-04-27 11:45:42,499 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:42,503 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-27 11:45:42,503 INFO L290 TraceCheckUtils]: 1: Hoare triple {99#true} assume true; {99#true} is VALID [2022-04-27 11:45:42,503 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {99#true} {100#false} #157#return; {100#false} is VALID [2022-04-27 11:45:42,510 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 34 [2022-04-27 11:45:42,512 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:42,522 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-27 11:45:42,523 INFO L290 TraceCheckUtils]: 1: Hoare triple {99#true} assume ~t.base == 0 && ~t.offset == 0;#res := ~i; {99#true} is VALID [2022-04-27 11:45:42,523 INFO L290 TraceCheckUtils]: 2: Hoare triple {99#true} assume true; {99#true} is VALID [2022-04-27 11:45:42,524 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {99#true} {100#false} #159#return; {100#false} is VALID [2022-04-27 11:45:42,525 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-27 11:45:42,525 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-27 11:45:42,525 INFO L290 TraceCheckUtils]: 2: Hoare triple {99#true} assume true; {99#true} is VALID [2022-04-27 11:45:42,525 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {99#true} {99#true} #181#return; {99#true} is VALID [2022-04-27 11:45:42,526 INFO L272 TraceCheckUtils]: 4: Hoare triple {99#true} call #t~ret45 := main(); {99#true} is VALID [2022-04-27 11:45:42,526 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-27 11:45:42,526 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-27 11:45:42,527 INFO L290 TraceCheckUtils]: 7: Hoare triple {99#true} assume true; {99#true} is VALID [2022-04-27 11:45:42,527 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {99#true} {99#true} #139#return; {99#true} is VALID [2022-04-27 11:45:42,527 INFO L272 TraceCheckUtils]: 9: Hoare triple {99#true} call task(#t~ret44.base, #t~ret44.offset); {99#true} is VALID [2022-04-27 11:45:42,527 INFO L290 TraceCheckUtils]: 10: Hoare triple {99#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {99#true} is VALID [2022-04-27 11:45:42,527 INFO L272 TraceCheckUtils]: 11: Hoare triple {99#true} call #t~ret31 := min(~t.base, ~t.offset); {99#true} is VALID [2022-04-27 11:45:42,527 INFO L290 TraceCheckUtils]: 12: Hoare triple {99#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {99#true} is VALID [2022-04-27 11:45:42,527 INFO L290 TraceCheckUtils]: 13: Hoare triple {99#true} assume ~n.base == 0 && ~n.offset == 0;#res := 2147483647; {99#true} is VALID [2022-04-27 11:45:42,528 INFO L290 TraceCheckUtils]: 14: Hoare triple {99#true} assume true; {99#true} is VALID [2022-04-27 11:45:42,528 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {99#true} {99#true} #151#return; {99#true} is VALID [2022-04-27 11:45:42,528 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-27 11:45:42,528 INFO L272 TraceCheckUtils]: 17: Hoare triple {99#true} call #t~ret32 := size(~t.base, ~t.offset); {99#true} is VALID [2022-04-27 11:45:42,528 INFO L290 TraceCheckUtils]: 18: Hoare triple {99#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {99#true} is VALID [2022-04-27 11:45:42,529 INFO L290 TraceCheckUtils]: 19: Hoare triple {99#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {99#true} is VALID [2022-04-27 11:45:42,529 INFO L290 TraceCheckUtils]: 20: Hoare triple {99#true} assume true; {99#true} is VALID [2022-04-27 11:45:42,529 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {99#true} {99#true} #153#return; {99#true} is VALID [2022-04-27 11:45:42,529 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-27 11:45:42,532 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-27 11:45:42,532 INFO L290 TraceCheckUtils]: 24: Hoare triple {99#true} ~cond := #in~cond; {99#true} is VALID [2022-04-27 11:45:42,533 INFO L290 TraceCheckUtils]: 25: Hoare triple {99#true} assume 0 == ~cond;assume false; {100#false} is VALID [2022-04-27 11:45:42,533 INFO L290 TraceCheckUtils]: 26: Hoare triple {100#false} assume true; {100#false} is VALID [2022-04-27 11:45:42,533 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {100#false} {99#true} #155#return; {100#false} is VALID [2022-04-27 11:45:42,533 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-27 11:45:42,534 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-27 11:45:42,534 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-27 11:45:42,534 INFO L290 TraceCheckUtils]: 31: Hoare triple {99#true} assume true; {99#true} is VALID [2022-04-27 11:45:42,534 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {99#true} {100#false} #157#return; {100#false} is VALID [2022-04-27 11:45:42,534 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-27 11:45:42,534 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-27 11:45:42,534 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-27 11:45:42,534 INFO L290 TraceCheckUtils]: 36: Hoare triple {99#true} assume ~t.base == 0 && ~t.offset == 0;#res := ~i; {99#true} is VALID [2022-04-27 11:45:42,535 INFO L290 TraceCheckUtils]: 37: Hoare triple {99#true} assume true; {99#true} is VALID [2022-04-27 11:45:42,535 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {99#true} {100#false} #159#return; {100#false} is VALID [2022-04-27 11:45:42,535 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-27 11:45:42,535 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-27 11:45:42,535 INFO L290 TraceCheckUtils]: 41: Hoare triple {100#false} ~cond := #in~cond; {100#false} is VALID [2022-04-27 11:45:42,535 INFO L290 TraceCheckUtils]: 42: Hoare triple {100#false} assume 0 == ~cond; {100#false} is VALID [2022-04-27 11:45:42,535 INFO L290 TraceCheckUtils]: 43: Hoare triple {100#false} assume !false; {100#false} is VALID [2022-04-27 11:45:42,536 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-27 11:45:42,536 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 11:45:42,536 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1739384312] [2022-04-27 11:45:42,537 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1739384312] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 11:45:42,537 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 11:45:42,537 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-27 11:45:42,538 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1813806803] [2022-04-27 11:45:42,538 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 11:45:42,542 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-27 11:45:42,543 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 11:45:42,546 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-27 11:45:42,603 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-27 11:45:42,603 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-27 11:45:42,603 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 11:45:42,621 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-27 11:45:42,621 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-04-27 11:45:42,624 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-27 11:45:43,378 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 11:45:43,378 INFO L93 Difference]: Finished difference Result 168 states and 221 transitions. [2022-04-27 11:45:43,378 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 11:45:43,378 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-27 11:45:43,379 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 11:45:43,379 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-27 11:45:43,391 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 221 transitions. [2022-04-27 11:45:43,391 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-27 11:45:43,398 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 221 transitions. [2022-04-27 11:45:43,398 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 221 transitions. [2022-04-27 11:45:43,630 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-27 11:45:43,639 INFO L225 Difference]: With dead ends: 168 [2022-04-27 11:45:43,639 INFO L226 Difference]: Without dead ends: 95 [2022-04-27 11:45:43,645 INFO L412 NwaCegarLoop]: 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-27 11:45:43,649 INFO L413 NwaCegarLoop]: 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-27 11:45:43,653 INFO L414 NwaCegarLoop]: 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-27 11:45:43,665 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 95 states. [2022-04-27 11:45:43,679 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 95 to 88. [2022-04-27 11:45:43,680 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 11:45:43,681 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-27 11:45:43,681 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-27 11:45:43,682 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-27 11:45:43,690 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 11:45:43,690 INFO L93 Difference]: Finished difference Result 95 states and 121 transitions. [2022-04-27 11:45:43,690 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 121 transitions. [2022-04-27 11:45:43,692 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 11:45:43,692 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 11:45:43,693 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-27 11:45:43,693 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-27 11:45:43,698 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 11:45:43,699 INFO L93 Difference]: Finished difference Result 95 states and 121 transitions. [2022-04-27 11:45:43,699 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 121 transitions. [2022-04-27 11:45:43,700 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 11:45:43,700 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 11:45:43,700 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 11:45:43,701 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 11:45:43,701 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-27 11:45:43,705 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 88 states to 88 states and 109 transitions. [2022-04-27 11:45:43,706 INFO L78 Accepts]: Start accepts. Automaton has 88 states and 109 transitions. Word has length 44 [2022-04-27 11:45:43,707 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 11:45:43,707 INFO L495 AbstractCegarLoop]: Abstraction has 88 states and 109 transitions. [2022-04-27 11:45:43,708 INFO L496 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-27 11:45:43,708 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 109 transitions. [2022-04-27 11:45:43,709 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-04-27 11:45:43,709 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 11:45:43,709 INFO L195 NwaCegarLoop]: 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-27 11:45:43,709 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-27 11:45:43,710 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 11:45:43,710 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 11:45:43,710 INFO L85 PathProgramCache]: Analyzing trace with hash -152757941, now seen corresponding path program 1 times [2022-04-27 11:45:43,710 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 11:45:43,710 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2076814454] [2022-04-27 11:45:43,710 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 11:45:43,710 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 11:45:43,743 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:43,783 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 11:45:43,785 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:43,788 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-27 11:45:43,789 INFO L290 TraceCheckUtils]: 1: Hoare triple {680#true} assume true; {680#true} is VALID [2022-04-27 11:45:43,789 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {680#true} {680#true} #181#return; {680#true} is VALID [2022-04-27 11:45:43,796 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 5 [2022-04-27 11:45:43,798 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:43,800 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-27 11:45:43,801 INFO L290 TraceCheckUtils]: 1: Hoare triple {680#true} assume true; {680#true} is VALID [2022-04-27 11:45:43,801 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {680#true} {680#true} #139#return; {680#true} is VALID [2022-04-27 11:45:43,801 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-27 11:45:43,802 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:43,808 INFO L290 TraceCheckUtils]: 0: Hoare triple {680#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {680#true} is VALID [2022-04-27 11:45:43,808 INFO L290 TraceCheckUtils]: 1: Hoare triple {680#true} assume ~n.base == 0 && ~n.offset == 0;#res := 2147483647; {680#true} is VALID [2022-04-27 11:45:43,808 INFO L290 TraceCheckUtils]: 2: Hoare triple {680#true} assume true; {680#true} is VALID [2022-04-27 11:45:43,808 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {680#true} {680#true} #151#return; {680#true} is VALID [2022-04-27 11:45:43,808 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-27 11:45:43,810 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:43,821 INFO L290 TraceCheckUtils]: 0: Hoare triple {680#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {680#true} is VALID [2022-04-27 11:45:43,822 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-27 11:45:43,822 INFO L290 TraceCheckUtils]: 2: Hoare triple {711#(= |size_#res| 0)} assume true; {711#(= |size_#res| 0)} is VALID [2022-04-27 11:45:43,822 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {711#(= |size_#res| 0)} {680#true} #153#return; {696#(= |task_#t~ret32| 0)} is VALID [2022-04-27 11:45:43,823 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 23 [2022-04-27 11:45:43,827 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:43,845 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-27 11:45:43,846 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-27 11:45:43,848 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-27 11:45:43,848 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-27 11:45:43,857 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 29 [2022-04-27 11:45:43,859 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:43,867 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-27 11:45:43,867 INFO L290 TraceCheckUtils]: 1: Hoare triple {680#true} assume true; {680#true} is VALID [2022-04-27 11:45:43,867 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {680#true} {681#false} #157#return; {681#false} is VALID [2022-04-27 11:45:43,875 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 34 [2022-04-27 11:45:43,877 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:43,884 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-27 11:45:43,884 INFO L290 TraceCheckUtils]: 1: Hoare triple {680#true} assume ~t.base == 0 && ~t.offset == 0;#res := ~i; {680#true} is VALID [2022-04-27 11:45:43,884 INFO L290 TraceCheckUtils]: 2: Hoare triple {680#true} assume true; {680#true} is VALID [2022-04-27 11:45:43,884 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {680#true} {681#false} #159#return; {681#false} is VALID [2022-04-27 11:45:43,885 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-27 11:45:43,885 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-27 11:45:43,885 INFO L290 TraceCheckUtils]: 2: Hoare triple {680#true} assume true; {680#true} is VALID [2022-04-27 11:45:43,885 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {680#true} {680#true} #181#return; {680#true} is VALID [2022-04-27 11:45:43,885 INFO L272 TraceCheckUtils]: 4: Hoare triple {680#true} call #t~ret45 := main(); {680#true} is VALID [2022-04-27 11:45:43,886 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-27 11:45:43,886 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-27 11:45:43,886 INFO L290 TraceCheckUtils]: 7: Hoare triple {680#true} assume true; {680#true} is VALID [2022-04-27 11:45:43,886 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {680#true} {680#true} #139#return; {680#true} is VALID [2022-04-27 11:45:43,886 INFO L272 TraceCheckUtils]: 9: Hoare triple {680#true} call task(#t~ret44.base, #t~ret44.offset); {680#true} is VALID [2022-04-27 11:45:43,886 INFO L290 TraceCheckUtils]: 10: Hoare triple {680#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {680#true} is VALID [2022-04-27 11:45:43,886 INFO L272 TraceCheckUtils]: 11: Hoare triple {680#true} call #t~ret31 := min(~t.base, ~t.offset); {680#true} is VALID [2022-04-27 11:45:43,887 INFO L290 TraceCheckUtils]: 12: Hoare triple {680#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {680#true} is VALID [2022-04-27 11:45:43,887 INFO L290 TraceCheckUtils]: 13: Hoare triple {680#true} assume ~n.base == 0 && ~n.offset == 0;#res := 2147483647; {680#true} is VALID [2022-04-27 11:45:43,887 INFO L290 TraceCheckUtils]: 14: Hoare triple {680#true} assume true; {680#true} is VALID [2022-04-27 11:45:43,887 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {680#true} {680#true} #151#return; {680#true} is VALID [2022-04-27 11:45:43,887 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-27 11:45:43,887 INFO L272 TraceCheckUtils]: 17: Hoare triple {680#true} call #t~ret32 := size(~t.base, ~t.offset); {680#true} is VALID [2022-04-27 11:45:43,887 INFO L290 TraceCheckUtils]: 18: Hoare triple {680#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {680#true} is VALID [2022-04-27 11:45:43,887 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-27 11:45:43,888 INFO L290 TraceCheckUtils]: 20: Hoare triple {711#(= |size_#res| 0)} assume true; {711#(= |size_#res| 0)} is VALID [2022-04-27 11:45:43,888 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {711#(= |size_#res| 0)} {680#true} #153#return; {696#(= |task_#t~ret32| 0)} is VALID [2022-04-27 11:45:43,889 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-27 11:45:43,889 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-27 11:45:43,889 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-27 11:45:43,889 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-27 11:45:43,890 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-27 11:45:43,890 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-27 11:45:43,890 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-27 11:45:43,890 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-27 11:45:43,891 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-27 11:45:43,891 INFO L290 TraceCheckUtils]: 31: Hoare triple {680#true} assume true; {680#true} is VALID [2022-04-27 11:45:43,891 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {680#true} {681#false} #157#return; {681#false} is VALID [2022-04-27 11:45:43,891 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-27 11:45:43,891 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-27 11:45:43,891 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-27 11:45:43,891 INFO L290 TraceCheckUtils]: 36: Hoare triple {680#true} assume ~t.base == 0 && ~t.offset == 0;#res := ~i; {680#true} is VALID [2022-04-27 11:45:43,891 INFO L290 TraceCheckUtils]: 37: Hoare triple {680#true} assume true; {680#true} is VALID [2022-04-27 11:45:43,891 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {680#true} {681#false} #159#return; {681#false} is VALID [2022-04-27 11:45:43,891 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-27 11:45:43,891 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-27 11:45:43,892 INFO L290 TraceCheckUtils]: 41: Hoare triple {681#false} ~cond := #in~cond; {681#false} is VALID [2022-04-27 11:45:43,892 INFO L290 TraceCheckUtils]: 42: Hoare triple {681#false} assume 0 == ~cond; {681#false} is VALID [2022-04-27 11:45:43,892 INFO L290 TraceCheckUtils]: 43: Hoare triple {681#false} assume !false; {681#false} is VALID [2022-04-27 11:45:43,892 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-27 11:45:43,892 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 11:45:43,892 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2076814454] [2022-04-27 11:45:43,892 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2076814454] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 11:45:43,892 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 11:45:43,892 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-27 11:45:43,893 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [790834361] [2022-04-27 11:45:43,893 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 11:45:43,894 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-27 11:45:43,894 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 11:45:43,894 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-27 11:45:43,918 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-27 11:45:43,918 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-27 11:45:43,918 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 11:45:43,919 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-27 11:45:43,919 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=88, Unknown=0, NotChecked=0, Total=110 [2022-04-27 11:45:43,919 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-27 11:45:45,523 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 11:45:45,523 INFO L93 Difference]: Finished difference Result 154 states and 197 transitions. [2022-04-27 11:45:45,523 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-27 11:45:45,524 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-27 11:45:45,524 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 11:45:45,524 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-27 11:45:45,527 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 197 transitions. [2022-04-27 11:45:45,528 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-27 11:45:45,531 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 197 transitions. [2022-04-27 11:45:45,531 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 197 transitions. [2022-04-27 11:45:45,705 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-27 11:45:45,708 INFO L225 Difference]: With dead ends: 154 [2022-04-27 11:45:45,708 INFO L226 Difference]: Without dead ends: 97 [2022-04-27 11:45:45,709 INFO L412 NwaCegarLoop]: 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-27 11:45:45,709 INFO L413 NwaCegarLoop]: 69 mSDtfsCounter, 131 mSDsluCounter, 10 mSDsCounter, 0 mSdLazyCounter, 658 mSolverCounterSat, 128 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s 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-27 11:45:45,710 INFO L414 NwaCegarLoop]: 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-27 11:45:45,710 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 97 states. [2022-04-27 11:45:45,716 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 97 to 90. [2022-04-27 11:45:45,716 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 11:45:45,717 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-27 11:45:45,717 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-27 11:45:45,718 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-27 11:45:45,721 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 11:45:45,721 INFO L93 Difference]: Finished difference Result 97 states and 125 transitions. [2022-04-27 11:45:45,721 INFO L276 IsEmpty]: Start isEmpty. Operand 97 states and 125 transitions. [2022-04-27 11:45:45,722 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 11:45:45,722 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 11:45:45,723 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-27 11:45:45,723 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-27 11:45:45,726 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 11:45:45,726 INFO L93 Difference]: Finished difference Result 97 states and 125 transitions. [2022-04-27 11:45:45,726 INFO L276 IsEmpty]: Start isEmpty. Operand 97 states and 125 transitions. [2022-04-27 11:45:45,727 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 11:45:45,727 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 11:45:45,727 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 11:45:45,727 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 11:45:45,728 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-27 11:45:45,730 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 90 states to 90 states and 113 transitions. [2022-04-27 11:45:45,730 INFO L78 Accepts]: Start accepts. Automaton has 90 states and 113 transitions. Word has length 44 [2022-04-27 11:45:45,730 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 11:45:45,730 INFO L495 AbstractCegarLoop]: Abstraction has 90 states and 113 transitions. [2022-04-27 11:45:45,731 INFO L496 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-27 11:45:45,731 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 113 transitions. [2022-04-27 11:45:45,734 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 57 [2022-04-27 11:45:45,734 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 11:45:45,734 INFO L195 NwaCegarLoop]: 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-27 11:45:45,734 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-04-27 11:45:45,735 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 11:45:45,735 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 11:45:45,735 INFO L85 PathProgramCache]: Analyzing trace with hash 2001282500, now seen corresponding path program 1 times [2022-04-27 11:45:45,735 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 11:45:45,735 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1873236375] [2022-04-27 11:45:45,735 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 11:45:45,735 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 11:45:45,761 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:45,827 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 11:45:45,829 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:45,833 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-27 11:45:45,834 INFO L290 TraceCheckUtils]: 1: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-27 11:45:45,834 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {1269#true} {1269#true} #181#return; {1269#true} is VALID [2022-04-27 11:45:45,843 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 5 [2022-04-27 11:45:45,850 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:45,887 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-27 11:45:45,888 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-27 11:45:45,888 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-27 11:45:45,889 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-27 11:45:45,890 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:45,892 INFO L290 TraceCheckUtils]: 0: Hoare triple {1269#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {1269#true} is VALID [2022-04-27 11:45:45,893 INFO L290 TraceCheckUtils]: 1: Hoare triple {1269#true} assume ~n.base == 0 && ~n.offset == 0;#res := 2147483647; {1269#true} is VALID [2022-04-27 11:45:45,893 INFO L290 TraceCheckUtils]: 2: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-27 11:45:45,893 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-27 11:45:45,893 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-27 11:45:45,897 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:45,938 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-04-27 11:45:45,939 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:45,942 INFO L290 TraceCheckUtils]: 0: Hoare triple {1269#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1269#true} is VALID [2022-04-27 11:45:45,942 INFO L290 TraceCheckUtils]: 1: Hoare triple {1269#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {1269#true} is VALID [2022-04-27 11:45:45,942 INFO L290 TraceCheckUtils]: 2: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-27 11:45:45,942 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-27 11:45:45,943 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 8 [2022-04-27 11:45:45,944 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:45,946 INFO L290 TraceCheckUtils]: 0: Hoare triple {1269#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1269#true} is VALID [2022-04-27 11:45:45,946 INFO L290 TraceCheckUtils]: 1: Hoare triple {1269#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {1269#true} is VALID [2022-04-27 11:45:45,946 INFO L290 TraceCheckUtils]: 2: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-27 11:45:45,946 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-27 11:45:45,947 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-27 11:45:45,947 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-27 11:45:45,947 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-27 11:45:45,948 INFO L290 TraceCheckUtils]: 3: Hoare triple {1269#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1269#true} is VALID [2022-04-27 11:45:45,948 INFO L290 TraceCheckUtils]: 4: Hoare triple {1269#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {1269#true} is VALID [2022-04-27 11:45:45,948 INFO L290 TraceCheckUtils]: 5: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-27 11:45:45,948 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-27 11:45:45,949 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-27 11:45:45,949 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-27 11:45:45,949 INFO L290 TraceCheckUtils]: 9: Hoare triple {1269#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1269#true} is VALID [2022-04-27 11:45:45,949 INFO L290 TraceCheckUtils]: 10: Hoare triple {1269#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {1269#true} is VALID [2022-04-27 11:45:45,949 INFO L290 TraceCheckUtils]: 11: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-27 11:45:45,949 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-27 11:45:45,950 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-27 11:45:45,950 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-27 11:45:45,951 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-27 11:45:45,951 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 35 [2022-04-27 11:45:45,952 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:45,953 INFO L290 TraceCheckUtils]: 0: Hoare triple {1269#true} ~cond := #in~cond; {1269#true} is VALID [2022-04-27 11:45:45,953 INFO L290 TraceCheckUtils]: 1: Hoare triple {1269#true} assume !(0 == ~cond); {1269#true} is VALID [2022-04-27 11:45:45,954 INFO L290 TraceCheckUtils]: 2: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-27 11:45:45,954 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1269#true} {1270#false} #155#return; {1270#false} is VALID [2022-04-27 11:45:45,959 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 41 [2022-04-27 11:45:45,960 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:45,962 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-27 11:45:45,963 INFO L290 TraceCheckUtils]: 1: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-27 11:45:45,963 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {1269#true} {1270#false} #157#return; {1270#false} is VALID [2022-04-27 11:45:45,971 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 46 [2022-04-27 11:45:45,973 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:45,975 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-27 11:45:45,975 INFO L290 TraceCheckUtils]: 1: Hoare triple {1269#true} assume ~t.base == 0 && ~t.offset == 0;#res := ~i; {1269#true} is VALID [2022-04-27 11:45:45,975 INFO L290 TraceCheckUtils]: 2: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-27 11:45:45,975 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1269#true} {1270#false} #159#return; {1270#false} is VALID [2022-04-27 11:45:45,977 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-27 11:45:45,977 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-27 11:45:45,977 INFO L290 TraceCheckUtils]: 2: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-27 11:45:45,977 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1269#true} {1269#true} #181#return; {1269#true} is VALID [2022-04-27 11:45:45,977 INFO L272 TraceCheckUtils]: 4: Hoare triple {1269#true} call #t~ret45 := main(); {1269#true} is VALID [2022-04-27 11:45:45,978 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-27 11:45:45,978 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-27 11:45:45,978 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-27 11:45:45,979 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-27 11:45:45,980 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-27 11:45:45,980 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-27 11:45:45,980 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-27 11:45:45,980 INFO L290 TraceCheckUtils]: 12: Hoare triple {1269#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {1269#true} is VALID [2022-04-27 11:45:45,980 INFO L290 TraceCheckUtils]: 13: Hoare triple {1269#true} assume ~n.base == 0 && ~n.offset == 0;#res := 2147483647; {1269#true} is VALID [2022-04-27 11:45:45,980 INFO L290 TraceCheckUtils]: 14: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-27 11:45:45,981 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-27 11:45:45,981 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-27 11:45:45,981 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-27 11:45:45,982 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-27 11:45:45,982 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-27 11:45:45,982 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-27 11:45:45,982 INFO L290 TraceCheckUtils]: 21: Hoare triple {1269#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1269#true} is VALID [2022-04-27 11:45:45,982 INFO L290 TraceCheckUtils]: 22: Hoare triple {1269#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {1269#true} is VALID [2022-04-27 11:45:45,983 INFO L290 TraceCheckUtils]: 23: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-27 11:45:45,983 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-27 11:45:45,984 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-27 11:45:45,984 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-27 11:45:45,984 INFO L290 TraceCheckUtils]: 27: Hoare triple {1269#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1269#true} is VALID [2022-04-27 11:45:45,984 INFO L290 TraceCheckUtils]: 28: Hoare triple {1269#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {1269#true} is VALID [2022-04-27 11:45:45,984 INFO L290 TraceCheckUtils]: 29: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-27 11:45:45,984 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-27 11:45:45,985 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-27 11:45:45,985 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-27 11:45:45,985 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-27 11:45:45,986 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-27 11:45:45,986 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-27 11:45:45,986 INFO L290 TraceCheckUtils]: 36: Hoare triple {1269#true} ~cond := #in~cond; {1269#true} is VALID [2022-04-27 11:45:45,986 INFO L290 TraceCheckUtils]: 37: Hoare triple {1269#true} assume !(0 == ~cond); {1269#true} is VALID [2022-04-27 11:45:45,986 INFO L290 TraceCheckUtils]: 38: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-27 11:45:45,986 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {1269#true} {1270#false} #155#return; {1270#false} is VALID [2022-04-27 11:45:45,986 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-27 11:45:45,986 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-27 11:45:45,986 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-27 11:45:45,986 INFO L290 TraceCheckUtils]: 43: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-27 11:45:45,986 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {1269#true} {1270#false} #157#return; {1270#false} is VALID [2022-04-27 11:45:45,986 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-27 11:45:45,986 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-27 11:45:45,987 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-27 11:45:45,987 INFO L290 TraceCheckUtils]: 48: Hoare triple {1269#true} assume ~t.base == 0 && ~t.offset == 0;#res := ~i; {1269#true} is VALID [2022-04-27 11:45:45,987 INFO L290 TraceCheckUtils]: 49: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-27 11:45:45,987 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {1269#true} {1270#false} #159#return; {1270#false} is VALID [2022-04-27 11:45:45,987 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-27 11:45:45,987 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-27 11:45:45,987 INFO L290 TraceCheckUtils]: 53: Hoare triple {1270#false} ~cond := #in~cond; {1270#false} is VALID [2022-04-27 11:45:45,987 INFO L290 TraceCheckUtils]: 54: Hoare triple {1270#false} assume 0 == ~cond; {1270#false} is VALID [2022-04-27 11:45:45,987 INFO L290 TraceCheckUtils]: 55: Hoare triple {1270#false} assume !false; {1270#false} is VALID [2022-04-27 11:45:45,988 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-27 11:45:45,988 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 11:45:45,988 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1873236375] [2022-04-27 11:45:45,988 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1873236375] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 11:45:45,988 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1119178947] [2022-04-27 11:45:45,988 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 11:45:45,988 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 11:45:45,988 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 11:45:45,989 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-27 11:45:45,993 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-27 11:45:46,083 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:46,095 INFO L263 TraceCheckSpWp]: Trace formula consists of 280 conjuncts, 25 conjunts are in the unsatisfiable core [2022-04-27 11:45:46,124 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:46,128 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 11:45:46,386 INFO L272 TraceCheckUtils]: 0: Hoare triple {1269#true} call ULTIMATE.init(); {1269#true} is VALID [2022-04-27 11:45:46,386 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-27 11:45:46,386 INFO L290 TraceCheckUtils]: 2: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-27 11:45:46,386 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1269#true} {1269#true} #181#return; {1269#true} is VALID [2022-04-27 11:45:46,386 INFO L272 TraceCheckUtils]: 4: Hoare triple {1269#true} call #t~ret45 := main(); {1269#true} is VALID [2022-04-27 11:45:46,386 INFO L272 TraceCheckUtils]: 5: Hoare triple {1269#true} call #t~ret44.base, #t~ret44.offset := nondet_tree(); {1269#true} is VALID [2022-04-27 11:45:46,387 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-27 11:45:46,387 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-27 11:45:46,388 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-27 11:45:46,388 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-27 11:45:46,389 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-27 11:45:46,389 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-27 11:45:46,389 INFO L290 TraceCheckUtils]: 12: Hoare triple {1269#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {1269#true} is VALID [2022-04-27 11:45:46,389 INFO L290 TraceCheckUtils]: 13: Hoare triple {1269#true} assume ~n.base == 0 && ~n.offset == 0;#res := 2147483647; {1269#true} is VALID [2022-04-27 11:45:46,389 INFO L290 TraceCheckUtils]: 14: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-27 11:45:46,389 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-27 11:45:46,390 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-27 11:45:46,390 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-27 11:45:46,390 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-27 11:45:46,391 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-27 11:45:46,391 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-27 11:45:46,391 INFO L290 TraceCheckUtils]: 21: Hoare triple {1269#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1269#true} is VALID [2022-04-27 11:45:46,391 INFO L290 TraceCheckUtils]: 22: Hoare triple {1269#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {1269#true} is VALID [2022-04-27 11:45:46,391 INFO L290 TraceCheckUtils]: 23: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-27 11:45:46,391 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-27 11:45:46,392 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-27 11:45:46,392 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-27 11:45:46,392 INFO L290 TraceCheckUtils]: 27: Hoare triple {1269#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1269#true} is VALID [2022-04-27 11:45:46,392 INFO L290 TraceCheckUtils]: 28: Hoare triple {1269#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {1269#true} is VALID [2022-04-27 11:45:46,392 INFO L290 TraceCheckUtils]: 29: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-27 11:45:46,392 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-27 11:45:46,393 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-27 11:45:46,393 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-27 11:45:46,393 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-27 11:45:46,393 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-27 11:45:46,393 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-27 11:45:46,394 INFO L290 TraceCheckUtils]: 36: Hoare triple {1270#false} ~cond := #in~cond; {1270#false} is VALID [2022-04-27 11:45:46,394 INFO L290 TraceCheckUtils]: 37: Hoare triple {1270#false} assume !(0 == ~cond); {1270#false} is VALID [2022-04-27 11:45:46,394 INFO L290 TraceCheckUtils]: 38: Hoare triple {1270#false} assume true; {1270#false} is VALID [2022-04-27 11:45:46,394 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {1270#false} {1270#false} #155#return; {1270#false} is VALID [2022-04-27 11:45:46,394 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-27 11:45:46,394 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-27 11:45:46,394 INFO L290 TraceCheckUtils]: 42: Hoare triple {1270#false} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {1270#false} is VALID [2022-04-27 11:45:46,394 INFO L290 TraceCheckUtils]: 43: Hoare triple {1270#false} assume true; {1270#false} is VALID [2022-04-27 11:45:46,394 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {1270#false} {1270#false} #157#return; {1270#false} is VALID [2022-04-27 11:45:46,394 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-27 11:45:46,394 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-27 11:45:46,394 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-27 11:45:46,394 INFO L290 TraceCheckUtils]: 48: Hoare triple {1270#false} assume ~t.base == 0 && ~t.offset == 0;#res := ~i; {1270#false} is VALID [2022-04-27 11:45:46,395 INFO L290 TraceCheckUtils]: 49: Hoare triple {1270#false} assume true; {1270#false} is VALID [2022-04-27 11:45:46,395 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {1270#false} {1270#false} #159#return; {1270#false} is VALID [2022-04-27 11:45:46,395 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-27 11:45:46,395 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-27 11:45:46,395 INFO L290 TraceCheckUtils]: 53: Hoare triple {1270#false} ~cond := #in~cond; {1270#false} is VALID [2022-04-27 11:45:46,395 INFO L290 TraceCheckUtils]: 54: Hoare triple {1270#false} assume 0 == ~cond; {1270#false} is VALID [2022-04-27 11:45:46,395 INFO L290 TraceCheckUtils]: 55: Hoare triple {1270#false} assume !false; {1270#false} is VALID [2022-04-27 11:45:46,395 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-27 11:45:46,395 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 11:45:46,677 INFO L290 TraceCheckUtils]: 55: Hoare triple {1270#false} assume !false; {1270#false} is VALID [2022-04-27 11:45:46,678 INFO L290 TraceCheckUtils]: 54: Hoare triple {1270#false} assume 0 == ~cond; {1270#false} is VALID [2022-04-27 11:45:46,678 INFO L290 TraceCheckUtils]: 53: Hoare triple {1270#false} ~cond := #in~cond; {1270#false} is VALID [2022-04-27 11:45:46,678 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-27 11:45:46,678 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-27 11:45:46,678 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {1269#true} {1270#false} #159#return; {1270#false} is VALID [2022-04-27 11:45:46,678 INFO L290 TraceCheckUtils]: 49: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-27 11:45:46,678 INFO L290 TraceCheckUtils]: 48: Hoare triple {1269#true} assume ~t.base == 0 && ~t.offset == 0;#res := ~i; {1269#true} is VALID [2022-04-27 11:45:46,678 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-27 11:45:46,678 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-27 11:45:46,678 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-27 11:45:46,678 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {1269#true} {1270#false} #157#return; {1270#false} is VALID [2022-04-27 11:45:46,679 INFO L290 TraceCheckUtils]: 43: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-27 11:45:46,679 INFO L290 TraceCheckUtils]: 42: Hoare triple {1269#true} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {1269#true} is VALID [2022-04-27 11:45:46,679 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-27 11:45:46,679 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-27 11:45:46,679 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {1269#true} {1270#false} #155#return; {1270#false} is VALID [2022-04-27 11:45:46,679 INFO L290 TraceCheckUtils]: 38: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-27 11:45:46,679 INFO L290 TraceCheckUtils]: 37: Hoare triple {1269#true} assume !(0 == ~cond); {1269#true} is VALID [2022-04-27 11:45:46,679 INFO L290 TraceCheckUtils]: 36: Hoare triple {1269#true} ~cond := #in~cond; {1269#true} is VALID [2022-04-27 11:45:46,679 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-27 11:45:46,679 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-27 11:45:46,680 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-27 11:45:46,680 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-27 11:45:46,681 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-27 11:45:46,681 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-27 11:45:46,681 INFO L290 TraceCheckUtils]: 29: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-27 11:45:46,681 INFO L290 TraceCheckUtils]: 28: Hoare triple {1269#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {1269#true} is VALID [2022-04-27 11:45:46,681 INFO L290 TraceCheckUtils]: 27: Hoare triple {1269#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1269#true} is VALID [2022-04-27 11:45:46,681 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-27 11:45:46,682 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-27 11:45:46,682 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-27 11:45:46,682 INFO L290 TraceCheckUtils]: 23: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-27 11:45:46,682 INFO L290 TraceCheckUtils]: 22: Hoare triple {1269#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {1269#true} is VALID [2022-04-27 11:45:46,682 INFO L290 TraceCheckUtils]: 21: Hoare triple {1269#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1269#true} is VALID [2022-04-27 11:45:46,682 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-27 11:45:46,683 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-27 11:45:46,683 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-27 11:45:46,683 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-27 11:45:46,684 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-27 11:45:46,684 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-27 11:45:46,684 INFO L290 TraceCheckUtils]: 14: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-27 11:45:46,685 INFO L290 TraceCheckUtils]: 13: Hoare triple {1269#true} assume ~n.base == 0 && ~n.offset == 0;#res := 2147483647; {1269#true} is VALID [2022-04-27 11:45:46,685 INFO L290 TraceCheckUtils]: 12: Hoare triple {1269#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {1269#true} is VALID [2022-04-27 11:45:46,685 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-27 11:45:46,685 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-27 11:45:46,685 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-27 11:45:46,686 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-27 11:45:46,686 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-27 11:45:46,687 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-27 11:45:46,687 INFO L272 TraceCheckUtils]: 5: Hoare triple {1269#true} call #t~ret44.base, #t~ret44.offset := nondet_tree(); {1269#true} is VALID [2022-04-27 11:45:46,687 INFO L272 TraceCheckUtils]: 4: Hoare triple {1269#true} call #t~ret45 := main(); {1269#true} is VALID [2022-04-27 11:45:46,687 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1269#true} {1269#true} #181#return; {1269#true} is VALID [2022-04-27 11:45:46,687 INFO L290 TraceCheckUtils]: 2: Hoare triple {1269#true} assume true; {1269#true} is VALID [2022-04-27 11:45:46,687 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-27 11:45:46,687 INFO L272 TraceCheckUtils]: 0: Hoare triple {1269#true} call ULTIMATE.init(); {1269#true} is VALID [2022-04-27 11:45:46,687 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-27 11:45:46,687 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1119178947] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 11:45:46,688 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 11:45:46,688 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 8, 8] total 15 [2022-04-27 11:45:46,688 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1492727825] [2022-04-27 11:45:46,688 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 11:45:46,689 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-27 11:45:46,692 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 11:45:46,693 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-27 11:45:46,748 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-27 11:45:46,748 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-27 11:45:46,748 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 11:45:46,748 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-27 11:45:46,749 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=36, Invalid=174, Unknown=0, NotChecked=0, Total=210 [2022-04-27 11:45:46,749 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-27 11:45:48,750 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 11:45:48,750 INFO L93 Difference]: Finished difference Result 164 states and 209 transitions. [2022-04-27 11:45:48,750 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-27 11:45:48,750 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-27 11:45:48,750 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 11:45:48,751 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-27 11:45:48,754 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 205 transitions. [2022-04-27 11:45:48,754 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-27 11:45:48,757 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 205 transitions. [2022-04-27 11:45:48,757 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 205 transitions. [2022-04-27 11:45:48,926 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-27 11:45:48,932 INFO L225 Difference]: With dead ends: 164 [2022-04-27 11:45:48,932 INFO L226 Difference]: Without dead ends: 96 [2022-04-27 11:45:48,933 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 147 GetRequests, 122 SyntacticMatches, 3 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 56 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=120, Invalid=432, Unknown=0, NotChecked=0, Total=552 [2022-04-27 11:45:48,933 INFO L413 NwaCegarLoop]: 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-27 11:45:48,933 INFO L414 NwaCegarLoop]: 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-27 11:45:48,934 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 96 states. [2022-04-27 11:45:48,939 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 96 to 92. [2022-04-27 11:45:48,939 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 11:45:48,939 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-27 11:45:48,939 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-27 11:45:48,940 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-27 11:45:48,943 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 11:45:48,943 INFO L93 Difference]: Finished difference Result 96 states and 123 transitions. [2022-04-27 11:45:48,943 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 123 transitions. [2022-04-27 11:45:48,943 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 11:45:48,943 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 11:45:48,944 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-27 11:45:48,944 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-27 11:45:48,947 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 11:45:48,947 INFO L93 Difference]: Finished difference Result 96 states and 123 transitions. [2022-04-27 11:45:48,947 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 123 transitions. [2022-04-27 11:45:48,947 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 11:45:48,948 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 11:45:48,948 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 11:45:48,948 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 11:45:48,948 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-27 11:45:48,950 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 92 states to 92 states and 116 transitions. [2022-04-27 11:45:48,950 INFO L78 Accepts]: Start accepts. Automaton has 92 states and 116 transitions. Word has length 56 [2022-04-27 11:45:48,951 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 11:45:48,951 INFO L495 AbstractCegarLoop]: Abstraction has 92 states and 116 transitions. [2022-04-27 11:45:48,951 INFO L496 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-27 11:45:48,951 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 116 transitions. [2022-04-27 11:45:48,952 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 67 [2022-04-27 11:45:48,952 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 11:45:48,952 INFO L195 NwaCegarLoop]: 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-27 11:45:48,971 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-27 11:45:49,167 WARN L477 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-27 11:45:49,168 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 11:45:49,168 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 11:45:49,168 INFO L85 PathProgramCache]: Analyzing trace with hash 921875361, now seen corresponding path program 1 times [2022-04-27 11:45:49,168 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 11:45:49,168 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [445437076] [2022-04-27 11:45:49,168 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 11:45:49,168 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 11:45:49,222 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:49,261 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 11:45:49,263 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:49,267 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-27 11:45:49,267 INFO L290 TraceCheckUtils]: 1: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-27 11:45:49,267 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {2233#true} {2233#true} #181#return; {2233#true} is VALID [2022-04-27 11:45:49,275 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 5 [2022-04-27 11:45:49,283 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:49,299 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-04-27 11:45:49,300 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:49,302 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-27 11:45:49,302 INFO L290 TraceCheckUtils]: 1: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-27 11:45:49,303 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-27 11:45:49,303 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-27 11:45:49,304 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:49,306 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-27 11:45:49,306 INFO L290 TraceCheckUtils]: 1: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-27 11:45:49,307 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-27 11:45:49,307 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-27 11:45:49,308 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-27 11:45:49,308 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-27 11:45:49,308 INFO L290 TraceCheckUtils]: 3: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-27 11:45:49,308 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-27 11:45:49,309 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-27 11:45:49,309 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-27 11:45:49,309 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-27 11:45:49,309 INFO L290 TraceCheckUtils]: 8: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-27 11:45:49,310 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-27 11:45:49,310 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-27 11:45:49,314 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-27 11:45:49,315 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-27 11:45:49,315 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 21 [2022-04-27 11:45:49,320 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:49,336 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-27 11:45:49,338 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-27 11:45:49,339 INFO L290 TraceCheckUtils]: 2: Hoare triple {2296#(= |min_#in~n.base| 0)} assume true; {2296#(= |min_#in~n.base| 0)} is VALID [2022-04-27 11:45:49,339 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-27 11:45:49,340 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 27 [2022-04-27 11:45:49,346 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:49,352 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-04-27 11:45:49,353 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:49,355 INFO L290 TraceCheckUtils]: 0: Hoare triple {2233#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {2233#true} is VALID [2022-04-27 11:45:49,355 INFO L290 TraceCheckUtils]: 1: Hoare triple {2233#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {2233#true} is VALID [2022-04-27 11:45:49,356 INFO L290 TraceCheckUtils]: 2: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-27 11:45:49,356 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2233#true} {2233#true} #177#return; {2233#true} is VALID [2022-04-27 11:45:49,356 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 8 [2022-04-27 11:45:49,357 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:49,358 INFO L290 TraceCheckUtils]: 0: Hoare triple {2233#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {2233#true} is VALID [2022-04-27 11:45:49,361 INFO L290 TraceCheckUtils]: 1: Hoare triple {2233#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {2233#true} is VALID [2022-04-27 11:45:49,363 INFO L290 TraceCheckUtils]: 2: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-27 11:45:49,363 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2233#true} {2233#true} #179#return; {2233#true} is VALID [2022-04-27 11:45:49,363 INFO L290 TraceCheckUtils]: 0: Hoare triple {2233#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {2233#true} is VALID [2022-04-27 11:45:49,363 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-27 11:45:49,363 INFO L272 TraceCheckUtils]: 2: Hoare triple {2233#true} call #t~ret28 := size(#t~mem27.base, #t~mem27.offset); {2233#true} is VALID [2022-04-27 11:45:49,363 INFO L290 TraceCheckUtils]: 3: Hoare triple {2233#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {2233#true} is VALID [2022-04-27 11:45:49,363 INFO L290 TraceCheckUtils]: 4: Hoare triple {2233#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {2233#true} is VALID [2022-04-27 11:45:49,363 INFO L290 TraceCheckUtils]: 5: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-27 11:45:49,363 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {2233#true} {2233#true} #177#return; {2233#true} is VALID [2022-04-27 11:45:49,364 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-27 11:45:49,365 INFO L272 TraceCheckUtils]: 8: Hoare triple {2233#true} call #t~ret30 := size(#t~mem29.base, #t~mem29.offset); {2233#true} is VALID [2022-04-27 11:45:49,365 INFO L290 TraceCheckUtils]: 9: Hoare triple {2233#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {2233#true} is VALID [2022-04-27 11:45:49,365 INFO L290 TraceCheckUtils]: 10: Hoare triple {2233#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {2233#true} is VALID [2022-04-27 11:45:49,365 INFO L290 TraceCheckUtils]: 11: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-27 11:45:49,365 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {2233#true} {2233#true} #179#return; {2233#true} is VALID [2022-04-27 11:45:49,365 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-27 11:45:49,365 INFO L290 TraceCheckUtils]: 14: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-27 11:45:49,365 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2233#true} {2234#false} #153#return; {2234#false} is VALID [2022-04-27 11:45:49,365 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 45 [2022-04-27 11:45:49,366 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:49,368 INFO L290 TraceCheckUtils]: 0: Hoare triple {2233#true} ~cond := #in~cond; {2233#true} is VALID [2022-04-27 11:45:49,368 INFO L290 TraceCheckUtils]: 1: Hoare triple {2233#true} assume !(0 == ~cond); {2233#true} is VALID [2022-04-27 11:45:49,368 INFO L290 TraceCheckUtils]: 2: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-27 11:45:49,369 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2233#true} {2234#false} #155#return; {2234#false} is VALID [2022-04-27 11:45:49,374 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 51 [2022-04-27 11:45:49,375 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:49,377 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-27 11:45:49,377 INFO L290 TraceCheckUtils]: 1: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-27 11:45:49,377 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {2233#true} {2234#false} #157#return; {2234#false} is VALID [2022-04-27 11:45:49,385 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 56 [2022-04-27 11:45:49,386 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:49,388 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-27 11:45:49,389 INFO L290 TraceCheckUtils]: 1: Hoare triple {2233#true} assume ~t.base == 0 && ~t.offset == 0;#res := ~i; {2233#true} is VALID [2022-04-27 11:45:49,389 INFO L290 TraceCheckUtils]: 2: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-27 11:45:49,389 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2233#true} {2234#false} #159#return; {2234#false} is VALID [2022-04-27 11:45:49,389 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-27 11:45:49,389 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-27 11:45:49,389 INFO L290 TraceCheckUtils]: 2: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-27 11:45:49,389 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2233#true} {2233#true} #181#return; {2233#true} is VALID [2022-04-27 11:45:49,389 INFO L272 TraceCheckUtils]: 4: Hoare triple {2233#true} call #t~ret45 := main(); {2233#true} is VALID [2022-04-27 11:45:49,390 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-27 11:45:49,390 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-27 11:45:49,390 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-27 11:45:49,390 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-27 11:45:49,390 INFO L290 TraceCheckUtils]: 9: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-27 11:45:49,391 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-27 11:45:49,391 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-27 11:45:49,392 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-27 11:45:49,392 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-27 11:45:49,392 INFO L290 TraceCheckUtils]: 14: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-27 11:45:49,392 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-27 11:45:49,393 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-27 11:45:49,393 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-27 11:45:49,393 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-27 11:45:49,394 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-27 11:45:49,394 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-27 11:45:49,395 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-27 11:45:49,395 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-27 11:45:49,395 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-27 11:45:49,395 INFO L290 TraceCheckUtils]: 24: Hoare triple {2296#(= |min_#in~n.base| 0)} assume true; {2296#(= |min_#in~n.base| 0)} is VALID [2022-04-27 11:45:49,396 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-27 11:45:49,396 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-27 11:45:49,396 INFO L272 TraceCheckUtils]: 27: Hoare triple {2234#false} call #t~ret32 := size(~t.base, ~t.offset); {2233#true} is VALID [2022-04-27 11:45:49,396 INFO L290 TraceCheckUtils]: 28: Hoare triple {2233#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {2233#true} is VALID [2022-04-27 11:45:49,396 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-27 11:45:49,396 INFO L272 TraceCheckUtils]: 30: Hoare triple {2233#true} call #t~ret28 := size(#t~mem27.base, #t~mem27.offset); {2233#true} is VALID [2022-04-27 11:45:49,396 INFO L290 TraceCheckUtils]: 31: Hoare triple {2233#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {2233#true} is VALID [2022-04-27 11:45:49,396 INFO L290 TraceCheckUtils]: 32: Hoare triple {2233#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {2233#true} is VALID [2022-04-27 11:45:49,396 INFO L290 TraceCheckUtils]: 33: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-27 11:45:49,396 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {2233#true} {2233#true} #177#return; {2233#true} is VALID [2022-04-27 11:45:49,396 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-27 11:45:49,396 INFO L272 TraceCheckUtils]: 36: Hoare triple {2233#true} call #t~ret30 := size(#t~mem29.base, #t~mem29.offset); {2233#true} is VALID [2022-04-27 11:45:49,396 INFO L290 TraceCheckUtils]: 37: Hoare triple {2233#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {2233#true} is VALID [2022-04-27 11:45:49,396 INFO L290 TraceCheckUtils]: 38: Hoare triple {2233#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {2233#true} is VALID [2022-04-27 11:45:49,398 INFO L290 TraceCheckUtils]: 39: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-27 11:45:49,398 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {2233#true} {2233#true} #179#return; {2233#true} is VALID [2022-04-27 11:45:49,398 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-27 11:45:49,398 INFO L290 TraceCheckUtils]: 42: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-27 11:45:49,398 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {2233#true} {2234#false} #153#return; {2234#false} is VALID [2022-04-27 11:45:49,398 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-27 11:45:49,398 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-27 11:45:49,398 INFO L290 TraceCheckUtils]: 46: Hoare triple {2233#true} ~cond := #in~cond; {2233#true} is VALID [2022-04-27 11:45:49,398 INFO L290 TraceCheckUtils]: 47: Hoare triple {2233#true} assume !(0 == ~cond); {2233#true} is VALID [2022-04-27 11:45:49,398 INFO L290 TraceCheckUtils]: 48: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-27 11:45:49,398 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {2233#true} {2234#false} #155#return; {2234#false} is VALID [2022-04-27 11:45:49,398 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-27 11:45:49,398 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-27 11:45:49,398 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-27 11:45:49,398 INFO L290 TraceCheckUtils]: 53: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-27 11:45:49,398 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {2233#true} {2234#false} #157#return; {2234#false} is VALID [2022-04-27 11:45:49,398 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-27 11:45:49,399 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-27 11:45:49,399 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-27 11:45:49,399 INFO L290 TraceCheckUtils]: 58: Hoare triple {2233#true} assume ~t.base == 0 && ~t.offset == 0;#res := ~i; {2233#true} is VALID [2022-04-27 11:45:49,399 INFO L290 TraceCheckUtils]: 59: Hoare triple {2233#true} assume true; {2233#true} is VALID [2022-04-27 11:45:49,399 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {2233#true} {2234#false} #159#return; {2234#false} is VALID [2022-04-27 11:45:49,399 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-27 11:45:49,399 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-27 11:45:49,399 INFO L290 TraceCheckUtils]: 63: Hoare triple {2234#false} ~cond := #in~cond; {2234#false} is VALID [2022-04-27 11:45:49,399 INFO L290 TraceCheckUtils]: 64: Hoare triple {2234#false} assume 0 == ~cond; {2234#false} is VALID [2022-04-27 11:45:49,399 INFO L290 TraceCheckUtils]: 65: Hoare triple {2234#false} assume !false; {2234#false} is VALID [2022-04-27 11:45:49,400 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-27 11:45:49,400 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 11:45:49,403 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [445437076] [2022-04-27 11:45:49,403 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [445437076] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 11:45:49,403 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 11:45:49,404 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-27 11:45:49,404 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1658148697] [2022-04-27 11:45:49,404 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 11:45:49,406 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-27 11:45:49,407 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 11:45:49,408 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-27 11:45:49,437 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-27 11:45:49,437 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-27 11:45:49,437 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 11:45:49,438 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-27 11:45:49,438 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=130, Unknown=0, NotChecked=0, Total=156 [2022-04-27 11:45:49,438 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-27 11:45:51,324 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 11:45:51,324 INFO L93 Difference]: Finished difference Result 163 states and 208 transitions. [2022-04-27 11:45:51,324 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-27 11:45:51,324 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-27 11:45:51,324 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 11:45:51,325 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-27 11:45:51,329 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 200 transitions. [2022-04-27 11:45:51,329 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-27 11:45:51,333 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 200 transitions. [2022-04-27 11:45:51,333 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 200 transitions. [2022-04-27 11:45:51,495 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-27 11:45:51,497 INFO L225 Difference]: With dead ends: 163 [2022-04-27 11:45:51,497 INFO L226 Difference]: Without dead ends: 98 [2022-04-27 11:45:51,498 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 42 GetRequests, 20 SyntacticMatches, 0 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 56 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=108, Invalid=444, Unknown=0, NotChecked=0, Total=552 [2022-04-27 11:45:51,498 INFO L413 NwaCegarLoop]: 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-27 11:45:51,499 INFO L414 NwaCegarLoop]: 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-27 11:45:51,499 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 98 states. [2022-04-27 11:45:51,504 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 98 to 94. [2022-04-27 11:45:51,504 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 11:45:51,504 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-27 11:45:51,505 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-27 11:45:51,505 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-27 11:45:51,507 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 11:45:51,508 INFO L93 Difference]: Finished difference Result 98 states and 126 transitions. [2022-04-27 11:45:51,508 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 126 transitions. [2022-04-27 11:45:51,508 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 11:45:51,508 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 11:45:51,508 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-27 11:45:51,509 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-27 11:45:51,511 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 11:45:51,511 INFO L93 Difference]: Finished difference Result 98 states and 126 transitions. [2022-04-27 11:45:51,511 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 126 transitions. [2022-04-27 11:45:51,512 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 11:45:51,512 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 11:45:51,512 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 11:45:51,512 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 11:45:51,512 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-27 11:45:51,514 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 94 states to 94 states and 119 transitions. [2022-04-27 11:45:51,514 INFO L78 Accepts]: Start accepts. Automaton has 94 states and 119 transitions. Word has length 66 [2022-04-27 11:45:51,514 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 11:45:51,515 INFO L495 AbstractCegarLoop]: Abstraction has 94 states and 119 transitions. [2022-04-27 11:45:51,515 INFO L496 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-27 11:45:51,515 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 119 transitions. [2022-04-27 11:45:51,515 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 80 [2022-04-27 11:45:51,515 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 11:45:51,515 INFO L195 NwaCegarLoop]: 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-27 11:45:51,516 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-04-27 11:45:51,516 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 11:45:51,516 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 11:45:51,516 INFO L85 PathProgramCache]: Analyzing trace with hash 940648973, now seen corresponding path program 1 times [2022-04-27 11:45:51,516 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 11:45:51,516 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1776605908] [2022-04-27 11:45:51,516 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 11:45:51,516 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 11:45:51,559 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:51,586 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 11:45:51,587 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:51,592 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-27 11:45:51,592 INFO L290 TraceCheckUtils]: 1: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-27 11:45:51,592 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {2884#true} {2884#true} #181#return; {2884#true} is VALID [2022-04-27 11:45:51,599 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 5 [2022-04-27 11:45:51,605 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:51,625 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-04-27 11:45:51,626 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:51,629 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-27 11:45:51,629 INFO L290 TraceCheckUtils]: 1: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-27 11:45:51,630 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-27 11:45:51,630 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-27 11:45:51,632 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:51,634 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-27 11:45:51,634 INFO L290 TraceCheckUtils]: 1: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-27 11:45:51,634 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-27 11:45:51,635 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-27 11:45:51,635 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-27 11:45:51,635 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-27 11:45:51,635 INFO L290 TraceCheckUtils]: 3: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-27 11:45:51,636 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-27 11:45:51,636 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-27 11:45:51,636 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-27 11:45:51,636 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-27 11:45:51,636 INFO L290 TraceCheckUtils]: 8: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-27 11:45:51,637 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-27 11:45:51,637 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-27 11:45:51,638 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-27 11:45:51,639 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-27 11:45:51,639 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 21 [2022-04-27 11:45:51,642 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:51,649 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-04-27 11:45:51,649 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:51,652 INFO L290 TraceCheckUtils]: 0: Hoare triple {2884#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {2884#true} is VALID [2022-04-27 11:45:51,653 INFO L290 TraceCheckUtils]: 1: Hoare triple {2884#true} assume ~n.base == 0 && ~n.offset == 0;#res := 2147483647; {2884#true} is VALID [2022-04-27 11:45:51,654 INFO L290 TraceCheckUtils]: 2: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-27 11:45:51,654 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2884#true} {2884#true} #143#return; {2884#true} is VALID [2022-04-27 11:45:51,654 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 8 [2022-04-27 11:45:51,656 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:51,657 INFO L290 TraceCheckUtils]: 0: Hoare triple {2884#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {2884#true} is VALID [2022-04-27 11:45:51,657 INFO L290 TraceCheckUtils]: 1: Hoare triple {2884#true} assume ~n.base == 0 && ~n.offset == 0;#res := 2147483647; {2884#true} is VALID [2022-04-27 11:45:51,657 INFO L290 TraceCheckUtils]: 2: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-27 11:45:51,658 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2884#true} {2884#true} #145#return; {2884#true} is VALID [2022-04-27 11:45:51,658 INFO L290 TraceCheckUtils]: 0: Hoare triple {2884#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {2884#true} is VALID [2022-04-27 11:45:51,658 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-27 11:45:51,658 INFO L272 TraceCheckUtils]: 2: Hoare triple {2884#true} call #t~ret11 := min(#t~mem10.base, #t~mem10.offset); {2884#true} is VALID [2022-04-27 11:45:51,658 INFO L290 TraceCheckUtils]: 3: Hoare triple {2884#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {2884#true} is VALID [2022-04-27 11:45:51,658 INFO L290 TraceCheckUtils]: 4: Hoare triple {2884#true} assume ~n.base == 0 && ~n.offset == 0;#res := 2147483647; {2884#true} is VALID [2022-04-27 11:45:51,658 INFO L290 TraceCheckUtils]: 5: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-27 11:45:51,658 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {2884#true} {2884#true} #143#return; {2884#true} is VALID [2022-04-27 11:45:51,661 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-27 11:45:51,661 INFO L272 TraceCheckUtils]: 8: Hoare triple {2884#true} call #t~ret13 := min(#t~mem12.base, #t~mem12.offset); {2884#true} is VALID [2022-04-27 11:45:51,661 INFO L290 TraceCheckUtils]: 9: Hoare triple {2884#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {2884#true} is VALID [2022-04-27 11:45:51,661 INFO L290 TraceCheckUtils]: 10: Hoare triple {2884#true} assume ~n.base == 0 && ~n.offset == 0;#res := 2147483647; {2884#true} is VALID [2022-04-27 11:45:51,661 INFO L290 TraceCheckUtils]: 11: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-27 11:45:51,662 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {2884#true} {2884#true} #145#return; {2884#true} is VALID [2022-04-27 11:45:51,662 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-27 11:45:51,662 INFO L290 TraceCheckUtils]: 14: Hoare triple {2884#true} assume ~a~0 <= ~b~0;#res := ~a~0; {2884#true} is VALID [2022-04-27 11:45:51,662 INFO L290 TraceCheckUtils]: 15: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-27 11:45:51,662 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-27 11:45:51,662 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 40 [2022-04-27 11:45:51,665 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:51,668 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-04-27 11:45:51,669 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:51,670 INFO L290 TraceCheckUtils]: 0: Hoare triple {2884#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {2884#true} is VALID [2022-04-27 11:45:51,670 INFO L290 TraceCheckUtils]: 1: Hoare triple {2884#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {2884#true} is VALID [2022-04-27 11:45:51,670 INFO L290 TraceCheckUtils]: 2: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-27 11:45:51,670 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2884#true} {2884#true} #177#return; {2884#true} is VALID [2022-04-27 11:45:51,670 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 8 [2022-04-27 11:45:51,671 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:51,673 INFO L290 TraceCheckUtils]: 0: Hoare triple {2884#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {2884#true} is VALID [2022-04-27 11:45:51,673 INFO L290 TraceCheckUtils]: 1: Hoare triple {2884#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {2884#true} is VALID [2022-04-27 11:45:51,673 INFO L290 TraceCheckUtils]: 2: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-27 11:45:51,673 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2884#true} {2884#true} #179#return; {2884#true} is VALID [2022-04-27 11:45:51,673 INFO L290 TraceCheckUtils]: 0: Hoare triple {2884#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {2884#true} is VALID [2022-04-27 11:45:51,674 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-27 11:45:51,674 INFO L272 TraceCheckUtils]: 2: Hoare triple {2884#true} call #t~ret28 := size(#t~mem27.base, #t~mem27.offset); {2884#true} is VALID [2022-04-27 11:45:51,674 INFO L290 TraceCheckUtils]: 3: Hoare triple {2884#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {2884#true} is VALID [2022-04-27 11:45:51,674 INFO L290 TraceCheckUtils]: 4: Hoare triple {2884#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {2884#true} is VALID [2022-04-27 11:45:51,674 INFO L290 TraceCheckUtils]: 5: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-27 11:45:51,674 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {2884#true} {2884#true} #177#return; {2884#true} is VALID [2022-04-27 11:45:51,674 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-27 11:45:51,674 INFO L272 TraceCheckUtils]: 8: Hoare triple {2884#true} call #t~ret30 := size(#t~mem29.base, #t~mem29.offset); {2884#true} is VALID [2022-04-27 11:45:51,674 INFO L290 TraceCheckUtils]: 9: Hoare triple {2884#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {2884#true} is VALID [2022-04-27 11:45:51,674 INFO L290 TraceCheckUtils]: 10: Hoare triple {2884#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {2884#true} is VALID [2022-04-27 11:45:51,674 INFO L290 TraceCheckUtils]: 11: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-27 11:45:51,674 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {2884#true} {2884#true} #179#return; {2884#true} is VALID [2022-04-27 11:45:51,674 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-27 11:45:51,674 INFO L290 TraceCheckUtils]: 14: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-27 11:45:51,675 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-27 11:45:51,675 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 58 [2022-04-27 11:45:51,676 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:51,679 INFO L290 TraceCheckUtils]: 0: Hoare triple {2884#true} ~cond := #in~cond; {2884#true} is VALID [2022-04-27 11:45:51,679 INFO L290 TraceCheckUtils]: 1: Hoare triple {2884#true} assume !(0 == ~cond); {2884#true} is VALID [2022-04-27 11:45:51,679 INFO L290 TraceCheckUtils]: 2: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-27 11:45:51,679 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-27 11:45:51,684 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 64 [2022-04-27 11:45:51,686 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:51,689 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-27 11:45:51,689 INFO L290 TraceCheckUtils]: 1: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-27 11:45:51,689 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-27 11:45:51,696 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 69 [2022-04-27 11:45:51,697 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 11:45:51,713 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-27 11:45:51,714 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-27 11:45:51,714 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-27 11:45:51,715 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-27 11:45:51,715 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-27 11:45:51,715 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-27 11:45:51,715 INFO L290 TraceCheckUtils]: 2: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-27 11:45:51,715 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2884#true} {2884#true} #181#return; {2884#true} is VALID [2022-04-27 11:45:51,715 INFO L272 TraceCheckUtils]: 4: Hoare triple {2884#true} call #t~ret45 := main(); {2884#true} is VALID [2022-04-27 11:45:51,716 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-27 11:45:51,716 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-27 11:45:51,716 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-27 11:45:51,716 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-27 11:45:51,716 INFO L290 TraceCheckUtils]: 9: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-27 11:45:51,717 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-27 11:45:51,717 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-27 11:45:51,717 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-27 11:45:51,718 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-27 11:45:51,718 INFO L290 TraceCheckUtils]: 14: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-27 11:45:51,718 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-27 11:45:51,718 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-27 11:45:51,719 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-27 11:45:51,719 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-27 11:45:51,719 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-27 11:45:51,720 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-27 11:45:51,720 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-27 11:45:51,720 INFO L290 TraceCheckUtils]: 22: Hoare triple {2884#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {2884#true} is VALID [2022-04-27 11:45:51,720 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-27 11:45:51,720 INFO L272 TraceCheckUtils]: 24: Hoare triple {2884#true} call #t~ret11 := min(#t~mem10.base, #t~mem10.offset); {2884#true} is VALID [2022-04-27 11:45:51,720 INFO L290 TraceCheckUtils]: 25: Hoare triple {2884#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {2884#true} is VALID [2022-04-27 11:45:51,720 INFO L290 TraceCheckUtils]: 26: Hoare triple {2884#true} assume ~n.base == 0 && ~n.offset == 0;#res := 2147483647; {2884#true} is VALID [2022-04-27 11:45:51,721 INFO L290 TraceCheckUtils]: 27: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-27 11:45:51,721 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2884#true} {2884#true} #143#return; {2884#true} is VALID [2022-04-27 11:45:51,721 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-27 11:45:51,721 INFO L272 TraceCheckUtils]: 30: Hoare triple {2884#true} call #t~ret13 := min(#t~mem12.base, #t~mem12.offset); {2884#true} is VALID [2022-04-27 11:45:51,721 INFO L290 TraceCheckUtils]: 31: Hoare triple {2884#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {2884#true} is VALID [2022-04-27 11:45:51,721 INFO L290 TraceCheckUtils]: 32: Hoare triple {2884#true} assume ~n.base == 0 && ~n.offset == 0;#res := 2147483647; {2884#true} is VALID [2022-04-27 11:45:51,721 INFO L290 TraceCheckUtils]: 33: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-27 11:45:51,721 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {2884#true} {2884#true} #145#return; {2884#true} is VALID [2022-04-27 11:45:51,721 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-27 11:45:51,721 INFO L290 TraceCheckUtils]: 36: Hoare triple {2884#true} assume ~a~0 <= ~b~0;#res := ~a~0; {2884#true} is VALID [2022-04-27 11:45:51,721 INFO L290 TraceCheckUtils]: 37: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-27 11:45:51,722 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-27 11:45:51,722 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-27 11:45:51,722 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-27 11:45:51,722 INFO L290 TraceCheckUtils]: 41: Hoare triple {2884#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {2884#true} is VALID [2022-04-27 11:45:51,722 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-27 11:45:51,722 INFO L272 TraceCheckUtils]: 43: Hoare triple {2884#true} call #t~ret28 := size(#t~mem27.base, #t~mem27.offset); {2884#true} is VALID [2022-04-27 11:45:51,722 INFO L290 TraceCheckUtils]: 44: Hoare triple {2884#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {2884#true} is VALID [2022-04-27 11:45:51,722 INFO L290 TraceCheckUtils]: 45: Hoare triple {2884#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {2884#true} is VALID [2022-04-27 11:45:51,722 INFO L290 TraceCheckUtils]: 46: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-27 11:45:51,723 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {2884#true} {2884#true} #177#return; {2884#true} is VALID [2022-04-27 11:45:51,723 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-27 11:45:51,723 INFO L272 TraceCheckUtils]: 49: Hoare triple {2884#true} call #t~ret30 := size(#t~mem29.base, #t~mem29.offset); {2884#true} is VALID [2022-04-27 11:45:51,723 INFO L290 TraceCheckUtils]: 50: Hoare triple {2884#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {2884#true} is VALID [2022-04-27 11:45:51,723 INFO L290 TraceCheckUtils]: 51: Hoare triple {2884#true} assume ~t.base == 0 && ~t.offset == 0;#res := 0; {2884#true} is VALID [2022-04-27 11:45:51,723 INFO L290 TraceCheckUtils]: 52: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-27 11:45:51,723 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {2884#true} {2884#true} #179#return; {2884#true} is VALID [2022-04-27 11:45:51,723 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-27 11:45:51,723 INFO L290 TraceCheckUtils]: 55: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-27 11:45:51,723 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-27 11:45:51,724 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-27 11:45:51,724 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-27 11:45:51,724 INFO L290 TraceCheckUtils]: 59: Hoare triple {2884#true} ~cond := #in~cond; {2884#true} is VALID [2022-04-27 11:45:51,724 INFO L290 TraceCheckUtils]: 60: Hoare triple {2884#true} assume !(0 == ~cond); {2884#true} is VALID [2022-04-27 11:45:51,724 INFO L290 TraceCheckUtils]: 61: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-27 11:45:51,724 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-27 11:45:51,724 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-27 11:45:51,725 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-27 11:45:51,725 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-27 11:45:51,725 INFO L290 TraceCheckUtils]: 66: Hoare triple {2884#true} assume true; {2884#true} is VALID [2022-04-27 11:45:51,725 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-27 11:45:51,726 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-27 11:45:51,726 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-27 11:45:51,726 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-27 11:45:51,727 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-27 11:45:51,727 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-27 11:45:51,728 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-27 11:45:51,728 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-27 11:45:51,728 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-27 11:45:51,728 INFO L290 TraceCheckUtils]: 76: Hoare triple {2885#false} ~cond := #in~cond; {2885#false} is VALID [2022-04-27 11:45:51,728 INFO L290 TraceCheckUtils]: 77: Hoare triple {2885#false} assume 0 == ~cond; {2885#false} is VALID [2022-04-27 11:45:51,728 INFO L290 TraceCheckUtils]: 78: Hoare triple {2885#false} assume !false; {2885#false} is VALID [2022-04-27 11:45:51,729 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-27 11:45:51,729 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 11:45:51,729 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1776605908] [2022-04-27 11:45:51,729 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1776605908] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 11:45:51,729 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 11:45:51,729 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-27 11:45:51,729 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [682732100] [2022-04-27 11:45:51,729 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 11:45:51,730 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-27 11:45:51,730 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 11:45:51,730 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-27 11:45:51,765 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-27 11:45:51,765 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-27 11:45:51,765 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 11:45:51,766 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-27 11:45:51,766 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=130, Unknown=0, NotChecked=0, Total=156 [2022-04-27 11:45:51,766 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-27 11:45:53,600 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 11:45:53,600 INFO L93 Difference]: Finished difference Result 151 states and 192 transitions. [2022-04-27 11:45:53,600 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-27 11:45:53,601 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-27 11:45:53,601 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 11:45:53,601 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-27 11:45:53,603 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 181 transitions. [2022-04-27 11:45:53,603 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-27 11:45:53,606 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 181 transitions. [2022-04-27 11:45:53,606 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 181 transitions. [2022-04-27 11:45:53,757 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-27 11:45:53,759 INFO L225 Difference]: With dead ends: 151 [2022-04-27 11:45:53,759 INFO L226 Difference]: Without dead ends: 98 [2022-04-27 11:45:53,760 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 47 GetRequests, 24 SyntacticMatches, 0 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 75 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=114, Invalid=486, Unknown=0, NotChecked=0, Total=600 [2022-04-27 11:45:53,760 INFO L413 NwaCegarLoop]: 68 mSDtfsCounter, 196 mSDsluCounter, 14 mSDsCounter, 0 mSdLazyCounter, 786 mSolverCounterSat, 187 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s 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.9s IncrementalHoareTripleChecker+Time [2022-04-27 11:45:53,760 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [196 Valid, 82 Invalid, 973 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [187 Valid, 786 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-27 11:45:53,761 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 98 states. [2022-04-27 11:45:53,766 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 98 to 96. [2022-04-27 11:45:53,766 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 11:45:53,766 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-27 11:45:53,766 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-27 11:45:53,766 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-27 11:45:53,769 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 11:45:53,769 INFO L93 Difference]: Finished difference Result 98 states and 125 transitions. [2022-04-27 11:45:53,769 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 125 transitions. [2022-04-27 11:45:53,770 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 11:45:53,770 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 11:45:53,770 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-27 11:45:53,770 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-27 11:45:53,773 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 11:45:53,773 INFO L93 Difference]: Finished difference Result 98 states and 125 transitions. [2022-04-27 11:45:53,773 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 125 transitions. [2022-04-27 11:45:53,773 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 11:45:53,773 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 11:45:53,773 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 11:45:53,773 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 11:45:53,773 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-27 11:45:53,776 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 96 states to 96 states and 123 transitions. [2022-04-27 11:45:53,776 INFO L78 Accepts]: Start accepts. Automaton has 96 states and 123 transitions. Word has length 79 [2022-04-27 11:45:53,776 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 11:45:53,776 INFO L495 AbstractCegarLoop]: Abstraction has 96 states and 123 transitions. [2022-04-27 11:45:53,776 INFO L496 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-27 11:45:53,776 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 123 transitions. [2022-04-27 11:45:53,777 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-04-27 11:45:53,777 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 11:45:53,777 INFO L195 NwaCegarLoop]: 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-27 11:45:53,777 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2022-04-27 11:45:53,777 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 11:45:53,777 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 11:45:53,777 INFO L85 PathProgramCache]: Analyzing trace with hash 1677199096, now seen corresponding path program 1 times [2022-04-27 11:45:53,777 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 11:45:53,777 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [526811578] [2022-04-27 11:45:53,777 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 11:45:53,778 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 11:45:53,830 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-04-27 11:45:53,831 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-04-27 11:45:53,846 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-04-27 11:45:53,867 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-04-27 11:45:53,867 INFO L271 BasicCegarLoop]: Counterexample is feasible [2022-04-27 11:45:53,868 INFO L805 garLoopResultBuilder]: Registering result UNSAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-27 11:45:53,869 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2022-04-27 11:45:53,871 INFO L356 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1, 1, 1] [2022-04-27 11:45:53,873 INFO L176 ceAbstractionStarter]: Computing trace abstraction results [2022-04-27 11:45:53,909 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-27 11:45:53,909 WARN L170 areAnnotationChecker]: nondet_treeENTRY has no Hoare annotation [2022-04-27 11:45:53,909 WARN L170 areAnnotationChecker]: nondet_treeENTRY has no Hoare annotation [2022-04-27 11:45:53,909 WARN L170 areAnnotationChecker]: assume_abort_if_notENTRY has no Hoare annotation [2022-04-27 11:45:53,909 WARN L170 areAnnotationChecker]: mainENTRY has no Hoare annotation [2022-04-27 11:45:53,909 WARN L170 areAnnotationChecker]: mainENTRY has no Hoare annotation [2022-04-27 11:45:53,909 WARN L170 areAnnotationChecker]: tree_delENTRY has no Hoare annotation [2022-04-27 11:45:53,909 WARN L170 areAnnotationChecker]: ULTIMATE.initENTRY has no Hoare annotation [2022-04-27 11:45:53,909 WARN L170 areAnnotationChecker]: minENTRY has no Hoare annotation [2022-04-27 11:45:53,910 WARN L170 areAnnotationChecker]: taskENTRY has no Hoare annotation [2022-04-27 11:45:53,910 WARN L170 areAnnotationChecker]: sizeENTRY has no Hoare annotation [2022-04-27 11:45:53,910 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-04-27 11:45:53,910 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-04-27 11:45:53,910 WARN L170 areAnnotationChecker]: __VERIFIER_assertENTRY has no Hoare annotation [2022-04-27 11:45:53,910 WARN L170 areAnnotationChecker]: #Ultimate.meminitENTRY has no Hoare annotation [2022-04-27 11:45:53,910 WARN L170 areAnnotationChecker]: tree_inorderENTRY has no Hoare annotation [2022-04-27 11:45:53,910 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-27 11:45:53,910 WARN L170 areAnnotationChecker]: nondet_treeFINAL has no Hoare annotation [2022-04-27 11:45:53,910 WARN L170 areAnnotationChecker]: L30 has no Hoare annotation [2022-04-27 11:45:53,910 WARN L170 areAnnotationChecker]: L30 has no Hoare annotation [2022-04-27 11:45:53,910 WARN L170 areAnnotationChecker]: L10 has no Hoare annotation [2022-04-27 11:45:53,910 WARN L170 areAnnotationChecker]: L10 has no Hoare annotation [2022-04-27 11:45:53,910 WARN L170 areAnnotationChecker]: L105 has no Hoare annotation [2022-04-27 11:45:53,910 WARN L170 areAnnotationChecker]: L105 has no Hoare annotation [2022-04-27 11:45:53,910 WARN L170 areAnnotationChecker]: L52 has no Hoare annotation [2022-04-27 11:45:53,910 WARN L170 areAnnotationChecker]: L52 has no Hoare annotation [2022-04-27 11:45:53,910 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-27 11:45:53,910 WARN L170 areAnnotationChecker]: L37 has no Hoare annotation [2022-04-27 11:45:53,910 WARN L170 areAnnotationChecker]: L37 has no Hoare annotation [2022-04-27 11:45:53,910 WARN L170 areAnnotationChecker]: L83 has no Hoare annotation [2022-04-27 11:45:53,910 WARN L170 areAnnotationChecker]: L83 has no Hoare annotation [2022-04-27 11:45:53,910 WARN L170 areAnnotationChecker]: L78 has no Hoare annotation [2022-04-27 11:45:53,910 WARN L170 areAnnotationChecker]: L78 has no Hoare annotation [2022-04-27 11:45:53,910 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-04-27 11:45:53,910 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-04-27 11:45:53,910 WARN L170 areAnnotationChecker]: L16 has no Hoare annotation [2022-04-27 11:45:53,910 WARN L170 areAnnotationChecker]: L16 has no Hoare annotation [2022-04-27 11:45:53,911 WARN L170 areAnnotationChecker]: #Ultimate.meminitFINAL has no Hoare annotation [2022-04-27 11:45:53,911 WARN L170 areAnnotationChecker]: L67 has no Hoare annotation [2022-04-27 11:45:53,911 WARN L170 areAnnotationChecker]: L67 has no Hoare annotation [2022-04-27 11:45:53,911 WARN L170 areAnnotationChecker]: nondet_treeEXIT has no Hoare annotation [2022-04-27 11:45:53,911 WARN L170 areAnnotationChecker]: nondet_treeEXIT has no Hoare annotation [2022-04-27 11:45:53,911 WARN L170 areAnnotationChecker]: nondet_treeEXIT has no Hoare annotation [2022-04-27 11:45:53,911 WARN L170 areAnnotationChecker]: L30-1 has no Hoare annotation [2022-04-27 11:45:53,911 WARN L170 areAnnotationChecker]: L10-2 has no Hoare annotation [2022-04-27 11:45:53,911 WARN L170 areAnnotationChecker]: L105-1 has no Hoare annotation [2022-04-27 11:45:53,911 WARN L170 areAnnotationChecker]: L52-2 has no Hoare annotation [2022-04-27 11:45:53,911 WARN L170 areAnnotationChecker]: L56-2 has no Hoare annotation [2022-04-27 11:45:53,911 WARN L170 areAnnotationChecker]: L56-2 has no Hoare annotation [2022-04-27 11:45:53,911 WARN L170 areAnnotationChecker]: L56-2 has no Hoare annotation [2022-04-27 11:45:53,911 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-27 11:45:53,911 WARN L170 areAnnotationChecker]: minFINAL has no Hoare annotation [2022-04-27 11:45:53,911 WARN L170 areAnnotationChecker]: L40 has no Hoare annotation [2022-04-27 11:45:53,911 WARN L170 areAnnotationChecker]: L40 has no Hoare annotation [2022-04-27 11:45:53,911 WARN L170 areAnnotationChecker]: L83-1 has no Hoare annotation [2022-04-27 11:45:53,911 WARN L170 areAnnotationChecker]: sizeFINAL has no Hoare annotation [2022-04-27 11:45:53,911 WARN L170 areAnnotationChecker]: L79 has no Hoare annotation [2022-04-27 11:45:53,911 WARN L170 areAnnotationChecker]: L79 has no Hoare annotation [2022-04-27 11:45:53,911 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-27 11:45:53,911 WARN L170 areAnnotationChecker]: L16-1 has no Hoare annotation [2022-04-27 11:45:53,911 WARN L170 areAnnotationChecker]: L16-1 has no Hoare annotation [2022-04-27 11:45:53,911 WARN L170 areAnnotationChecker]: L16-3 has no Hoare annotation [2022-04-27 11:45:53,911 WARN L170 areAnnotationChecker]: #Ultimate.meminitEXIT has no Hoare annotation [2022-04-27 11:45:53,911 WARN L170 areAnnotationChecker]: #Ultimate.meminitEXIT has no Hoare annotation [2022-04-27 11:45:53,911 WARN L170 areAnnotationChecker]: tree_inorderFINAL has no Hoare annotation [2022-04-27 11:45:53,911 WARN L170 areAnnotationChecker]: L70 has no Hoare annotation [2022-04-27 11:45:53,911 WARN L170 areAnnotationChecker]: L70 has no Hoare annotation [2022-04-27 11:45:53,912 WARN L170 areAnnotationChecker]: L31-1 has no Hoare annotation [2022-04-27 11:45:53,912 WARN L170 areAnnotationChecker]: L31 has no Hoare annotation [2022-04-27 11:45:53,912 WARN L170 areAnnotationChecker]: L31 has no Hoare annotation [2022-04-27 11:45:53,912 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-27 11:45:53,912 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2022-04-27 11:45:53,912 WARN L170 areAnnotationChecker]: tree_delFINAL has no Hoare annotation [2022-04-27 11:45:53,912 WARN L170 areAnnotationChecker]: L56-3 has no Hoare annotation [2022-04-27 11:45:53,912 WARN L170 areAnnotationChecker]: minEXIT has no Hoare annotation [2022-04-27 11:45:53,912 WARN L170 areAnnotationChecker]: minEXIT has no Hoare annotation [2022-04-27 11:45:53,912 WARN L170 areAnnotationChecker]: minEXIT has no Hoare annotation [2022-04-27 11:45:53,912 WARN L170 areAnnotationChecker]: L40-1 has no Hoare annotation [2022-04-27 11:45:53,912 WARN L170 areAnnotationChecker]: L86 has no Hoare annotation [2022-04-27 11:45:53,912 WARN L170 areAnnotationChecker]: L86 has no Hoare annotation [2022-04-27 11:45:53,912 WARN L170 areAnnotationChecker]: sizeEXIT has no Hoare annotation [2022-04-27 11:45:53,912 WARN L170 areAnnotationChecker]: sizeEXIT has no Hoare annotation [2022-04-27 11:45:53,912 WARN L170 areAnnotationChecker]: sizeEXIT has no Hoare annotation [2022-04-27 11:45:53,912 WARN L170 areAnnotationChecker]: sizeEXIT has no Hoare annotation [2022-04-27 11:45:53,912 WARN L170 areAnnotationChecker]: L79-1 has no Hoare annotation [2022-04-27 11:45:53,912 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 11:45:53,912 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 11:45:53,912 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 11:45:53,912 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 11:45:53,912 WARN L170 areAnnotationChecker]: L88-1 has no Hoare annotation [2022-04-27 11:45:53,912 WARN L170 areAnnotationChecker]: L95-1 has no Hoare annotation [2022-04-27 11:45:53,912 WARN L170 areAnnotationChecker]: tree_inorderEXIT has no Hoare annotation [2022-04-27 11:45:53,912 WARN L170 areAnnotationChecker]: tree_inorderEXIT has no Hoare annotation [2022-04-27 11:45:53,912 WARN L170 areAnnotationChecker]: tree_inorderEXIT has no Hoare annotation [2022-04-27 11:45:53,912 WARN L170 areAnnotationChecker]: tree_inorderEXIT has no Hoare annotation [2022-04-27 11:45:53,912 WARN L170 areAnnotationChecker]: L70-1 has no Hoare annotation [2022-04-27 11:45:53,912 WARN L170 areAnnotationChecker]: L87-1 has no Hoare annotation [2022-04-27 11:45:53,912 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-27 11:45:53,912 WARN L170 areAnnotationChecker]: tree_delEXIT has no Hoare annotation [2022-04-27 11:45:53,913 WARN L170 areAnnotationChecker]: L41-1 has no Hoare annotation [2022-04-27 11:45:53,913 WARN L170 areAnnotationChecker]: L41 has no Hoare annotation [2022-04-27 11:45:53,913 WARN L170 areAnnotationChecker]: L41 has no Hoare annotation [2022-04-27 11:45:53,913 WARN L170 areAnnotationChecker]: L86-1 has no Hoare annotation [2022-04-27 11:45:53,913 WARN L170 areAnnotationChecker]: L94-1 has no Hoare annotation [2022-04-27 11:45:53,913 WARN L170 areAnnotationChecker]: L79-3 has no Hoare annotation [2022-04-27 11:45:53,913 WARN L170 areAnnotationChecker]: L79-2 has no Hoare annotation [2022-04-27 11:45:53,913 WARN L170 areAnnotationChecker]: L79-2 has no Hoare annotation [2022-04-27 11:45:53,913 WARN L170 areAnnotationChecker]: L90-1 has no Hoare annotation [2022-04-27 11:45:53,913 WARN L170 areAnnotationChecker]: L93-1 has no Hoare annotation [2022-04-27 11:45:53,913 WARN L170 areAnnotationChecker]: L98-1 has no Hoare annotation [2022-04-27 11:45:53,913 WARN L170 areAnnotationChecker]: L101-1 has no Hoare annotation [2022-04-27 11:45:53,913 WARN L170 areAnnotationChecker]: L89 has no Hoare annotation [2022-04-27 11:45:53,913 WARN L170 areAnnotationChecker]: L89 has no Hoare annotation [2022-04-27 11:45:53,913 WARN L170 areAnnotationChecker]: L96 has no Hoare annotation [2022-04-27 11:45:53,913 WARN L170 areAnnotationChecker]: L96 has no Hoare annotation [2022-04-27 11:45:53,913 WARN L170 areAnnotationChecker]: L89-1 has no Hoare annotation [2022-04-27 11:45:53,913 WARN L170 areAnnotationChecker]: L96-1 has no Hoare annotation [2022-04-27 11:45:53,913 WARN L170 areAnnotationChecker]: L72-1 has no Hoare annotation [2022-04-27 11:45:53,913 WARN L170 areAnnotationChecker]: L72 has no Hoare annotation [2022-04-27 11:45:53,913 WARN L170 areAnnotationChecker]: L72 has no Hoare annotation [2022-04-27 11:45:53,913 WARN L170 areAnnotationChecker]: L88 has no Hoare annotation [2022-04-27 11:45:53,913 WARN L170 areAnnotationChecker]: L88 has no Hoare annotation [2022-04-27 11:45:53,913 WARN L170 areAnnotationChecker]: L92-1 has no Hoare annotation [2022-04-27 11:45:53,913 WARN L170 areAnnotationChecker]: L42 has no Hoare annotation [2022-04-27 11:45:53,914 WARN L170 areAnnotationChecker]: L42 has no Hoare annotation [2022-04-27 11:45:53,914 WARN L170 areAnnotationChecker]: L87 has no Hoare annotation [2022-04-27 11:45:53,914 WARN L170 areAnnotationChecker]: L87 has no Hoare annotation [2022-04-27 11:45:53,914 WARN L170 areAnnotationChecker]: L95 has no Hoare annotation [2022-04-27 11:45:53,914 WARN L170 areAnnotationChecker]: L95 has no Hoare annotation [2022-04-27 11:45:53,914 WARN L170 areAnnotationChecker]: L92 has no Hoare annotation [2022-04-27 11:45:53,914 WARN L170 areAnnotationChecker]: L92 has no Hoare annotation [2022-04-27 11:45:53,914 WARN L170 areAnnotationChecker]: L94 has no Hoare annotation [2022-04-27 11:45:53,914 WARN L170 areAnnotationChecker]: L94 has no Hoare annotation [2022-04-27 11:45:53,914 WARN L170 areAnnotationChecker]: L100-3 has no Hoare annotation [2022-04-27 11:45:53,914 WARN L170 areAnnotationChecker]: L100-3 has no Hoare annotation [2022-04-27 11:45:53,914 WARN L170 areAnnotationChecker]: L100-3 has no Hoare annotation [2022-04-27 11:45:53,914 WARN L170 areAnnotationChecker]: L100-2 has no Hoare annotation [2022-04-27 11:45:53,914 WARN L170 areAnnotationChecker]: L90 has no Hoare annotation [2022-04-27 11:45:53,914 WARN L170 areAnnotationChecker]: L90 has no Hoare annotation [2022-04-27 11:45:53,914 WARN L170 areAnnotationChecker]: L98 has no Hoare annotation [2022-04-27 11:45:53,914 WARN L170 areAnnotationChecker]: L98 has no Hoare annotation [2022-04-27 11:45:53,914 WARN L170 areAnnotationChecker]: L93 has no Hoare annotation [2022-04-27 11:45:53,914 WARN L170 areAnnotationChecker]: L93 has no Hoare annotation [2022-04-27 11:45:53,914 WARN L170 areAnnotationChecker]: L100-4 has no Hoare annotation [2022-04-27 11:45:53,914 WARN L170 areAnnotationChecker]: L101 has no Hoare annotation [2022-04-27 11:45:53,914 WARN L170 areAnnotationChecker]: L101 has no Hoare annotation [2022-04-27 11:45:53,914 WARN L170 areAnnotationChecker]: taskFINAL has no Hoare annotation [2022-04-27 11:45:53,914 WARN L170 areAnnotationChecker]: taskEXIT has no Hoare annotation [2022-04-27 11:45:53,914 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-27 11:45:53,916 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 27.04 11:45:53 BoogieIcfgContainer [2022-04-27 11:45:53,916 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-27 11:45:53,917 INFO L158 Benchmark]: Toolchain (without parser) took 12452.86ms. Allocated memory was 181.4MB in the beginning and 264.2MB in the end (delta: 82.8MB). Free memory was 132.5MB in the beginning and 221.2MB in the end (delta: -88.6MB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-27 11:45:53,918 INFO L158 Benchmark]: CDTParser took 0.28ms. Allocated memory is still 181.4MB. Free memory was 149.7MB in the beginning and 149.6MB in the end (delta: 70.7kB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-27 11:45:53,918 INFO L158 Benchmark]: CACSL2BoogieTranslator took 231.73ms. Allocated memory is still 181.4MB. Free memory was 132.3MB in the beginning and 155.4MB in the end (delta: -23.2MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-27 11:45:53,918 INFO L158 Benchmark]: Boogie Preprocessor took 54.72ms. Allocated memory is still 181.4MB. Free memory was 155.4MB in the beginning and 152.4MB in the end (delta: 3.0MB). Peak memory consumption was 3.1MB. Max. memory is 8.0GB. [2022-04-27 11:45:53,918 INFO L158 Benchmark]: RCFGBuilder took 440.51ms. Allocated memory is still 181.4MB. Free memory was 152.4MB in the beginning and 129.3MB in the end (delta: 23.1MB). Peak memory consumption was 23.1MB. Max. memory is 8.0GB. [2022-04-27 11:45:53,918 INFO L158 Benchmark]: TraceAbstraction took 11721.74ms. Allocated memory was 181.4MB in the beginning and 264.2MB in the end (delta: 82.8MB). Free memory was 129.0MB in the beginning and 221.2MB in the end (delta: -92.2MB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-27 11:45:53,919 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.28ms. Allocated memory is still 181.4MB. Free memory was 149.7MB in the beginning and 149.6MB in the end (delta: 70.7kB). There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 231.73ms. Allocated memory is still 181.4MB. Free memory was 132.3MB in the beginning and 155.4MB in the end (delta: -23.2MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * Boogie Preprocessor took 54.72ms. Allocated memory is still 181.4MB. Free memory was 155.4MB in the beginning and 152.4MB in the end (delta: 3.0MB). Peak memory consumption was 3.1MB. Max. memory is 8.0GB. * RCFGBuilder took 440.51ms. Allocated memory is still 181.4MB. Free memory was 152.4MB in the beginning and 129.3MB in the end (delta: 23.1MB). Peak memory consumption was 23.1MB. Max. memory is 8.0GB. * TraceAbstraction took 11721.74ms. Allocated memory was 181.4MB in the beginning and 264.2MB in the end (delta: 82.8MB). Free memory was 129.0MB in the beginning and 221.2MB in the end (delta: -92.2MB). There was no memory consumed. 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: 11.6s, OverallIterations: 6, TraceHistogramMax: 3, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 9.1s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 820 SdHoareTripleChecker+Valid, 3.7s 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.7s 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.2s SatisfiabilityAnalysisTime, 1.5s 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-27 11:45:53,943 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request...