/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/AutomizerCTransformed.xml -s ../../../trunk/examples/settings/loopacceleration/qvasr/qvasr_64.epf -i ../../../trunk/examples/svcomp/verifythis/tree_del_iter.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-27 22:36:48,880 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-27 22:36:48,881 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-27 22:36:48,930 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-27 22:36:48,930 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-27 22:36:48,931 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-27 22:36:48,935 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-27 22:36:48,938 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-27 22:36:48,940 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-27 22:36:48,941 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-27 22:36:48,942 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-27 22:36:48,942 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-27 22:36:48,943 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-27 22:36:48,943 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-27 22:36:48,944 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-27 22:36:48,944 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-27 22:36:48,945 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-27 22:36:48,945 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-27 22:36:48,946 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-27 22:36:48,947 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-27 22:36:48,948 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-27 22:36:48,951 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-27 22:36:48,952 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-27 22:36:48,953 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-27 22:36:48,954 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-27 22:36:48,963 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-27 22:36:48,963 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-27 22:36:48,963 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-27 22:36:48,965 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-27 22:36:48,965 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-27 22:36:48,966 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-27 22:36:48,966 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-27 22:36:48,968 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-27 22:36:48,968 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-27 22:36:48,968 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-27 22:36:48,969 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-27 22:36:48,969 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-27 22:36:48,969 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-27 22:36:48,969 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-27 22:36:48,970 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-27 22:36:48,970 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-27 22:36:48,972 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-27 22:36:48,972 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/loopacceleration/qvasr/qvasr_64.epf [2022-04-27 22:36:48,993 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-27 22:36:48,994 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-27 22:36:48,994 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-27 22:36:48,994 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-27 22:36:48,995 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-27 22:36:48,995 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-27 22:36:48,995 INFO L138 SettingsManager]: * Use SBE=true [2022-04-27 22:36:48,995 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-27 22:36:48,995 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-27 22:36:48,996 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-27 22:36:48,996 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-27 22:36:48,996 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-27 22:36:48,996 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-27 22:36:48,996 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-27 22:36:48,996 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-27 22:36:48,996 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-27 22:36:48,997 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-27 22:36:48,997 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-27 22:36:48,997 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-27 22:36:48,997 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 22:36:48,997 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-27 22:36:48,997 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-27 22:36:48,997 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-27 22:36:48,997 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-27 22:36:48,997 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-27 22:36:48,998 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-27 22:36:48,998 INFO L138 SettingsManager]: * Trace refinement exception blacklist=NONE [2022-04-27 22:36:48,998 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-04-27 22:36:48,998 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-27 22:36:48,998 INFO L138 SettingsManager]: * TransformationType=LOOP_ACCELERATION_QVASR 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 22:36:49,177 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-27 22:36:49,195 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-27 22:36:49,197 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-27 22:36:49,198 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-27 22:36:49,198 INFO L275 PluginConnector]: CDTParser initialized [2022-04-27 22:36:49,199 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/verifythis/tree_del_iter.c [2022-04-27 22:36:49,240 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/11bf0d2e8/676cfc79c4cc4d58b08de69e84eca812/FLAG264637875 [2022-04-27 22:36:49,567 INFO L306 CDTParser]: Found 1 translation units. [2022-04-27 22:36:49,567 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/verifythis/tree_del_iter.c [2022-04-27 22:36:49,573 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/11bf0d2e8/676cfc79c4cc4d58b08de69e84eca812/FLAG264637875 [2022-04-27 22:36:49,984 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/11bf0d2e8/676cfc79c4cc4d58b08de69e84eca812 [2022-04-27 22:36:49,985 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-27 22:36:49,986 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-27 22:36:49,987 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-27 22:36:49,987 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-27 22:36:49,989 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-27 22:36:49,990 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 10:36:49" (1/1) ... [2022-04-27 22:36:49,991 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1f769e98 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:36:49, skipping insertion in model container [2022-04-27 22:36:49,991 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 10:36:49" (1/1) ... [2022-04-27 22:36:49,995 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-27 22:36:50,020 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-27 22:36:50,147 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.c[586,599] [2022-04-27 22:36:50,172 WARN L1550 CHandler]: Possible shadowing of function min [2022-04-27 22:36:50,192 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 22:36:50,198 INFO L203 MainTranslator]: Completed pre-run [2022-04-27 22:36:50,215 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.c[586,599] [2022-04-27 22:36:50,235 WARN L1550 CHandler]: Possible shadowing of function min [2022-04-27 22:36:50,244 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 22:36:50,259 INFO L208 MainTranslator]: Completed translation [2022-04-27 22:36:50,259 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:36:50 WrapperNode [2022-04-27 22:36:50,259 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-27 22:36:50,260 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-27 22:36:50,260 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-27 22:36:50,260 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-27 22:36:50,267 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:36:50" (1/1) ... [2022-04-27 22:36:50,268 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:36:50" (1/1) ... [2022-04-27 22:36:50,285 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:36:50" (1/1) ... [2022-04-27 22:36:50,285 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:36:50" (1/1) ... [2022-04-27 22:36:50,304 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:36:50" (1/1) ... [2022-04-27 22:36:50,307 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:36:50" (1/1) ... [2022-04-27 22:36:50,309 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:36:50" (1/1) ... [2022-04-27 22:36:50,311 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-27 22:36:50,311 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-27 22:36:50,312 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-27 22:36:50,312 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-27 22:36:50,312 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:36:50" (1/1) ... [2022-04-27 22:36:50,317 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 22:36:50,325 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:36:50,334 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 22:36:50,358 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-27 22:36:50,358 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-27 22:36:50,358 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_cycle_if_not [2022-04-27 22:36:50,359 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-27 22:36:50,359 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-27 22:36:50,359 INFO L138 BoogieDeclarations]: Found implementation of procedure nondet_tree [2022-04-27 22:36:50,359 INFO L138 BoogieDeclarations]: Found implementation of procedure min [2022-04-27 22:36:50,359 INFO L138 BoogieDeclarations]: Found implementation of procedure tree_del [2022-04-27 22:36:50,359 INFO L138 BoogieDeclarations]: Found implementation of procedure tree_inorder [2022-04-27 22:36:50,359 INFO L138 BoogieDeclarations]: Found implementation of procedure size [2022-04-27 22:36:50,359 INFO L138 BoogieDeclarations]: Found implementation of procedure task [2022-04-27 22:36:50,359 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-27 22:36:50,359 INFO L138 BoogieDeclarations]: Found implementation of procedure #Ultimate.meminit [2022-04-27 22:36:50,359 INFO L130 BoogieDeclarations]: Found specification of procedure calloc [2022-04-27 22:36:50,359 INFO L130 BoogieDeclarations]: Found specification of procedure malloc [2022-04-27 22:36:50,359 INFO L130 BoogieDeclarations]: Found specification of procedure free [2022-04-27 22:36:50,360 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-27 22:36:50,360 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_bool [2022-04-27 22:36:50,360 INFO L130 BoogieDeclarations]: Found specification of procedure assume_cycle_if_not [2022-04-27 22:36:50,360 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-27 22:36:50,360 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-27 22:36:50,360 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-27 22:36:50,360 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-27 22:36:50,360 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-27 22:36:50,360 INFO L130 BoogieDeclarations]: Found specification of procedure nondet_tree [2022-04-27 22:36:50,360 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2022-04-27 22:36:50,360 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-27 22:36:50,357 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 22:36:50,362 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2022-04-27 22:36:50,363 INFO L130 BoogieDeclarations]: Found specification of procedure min [2022-04-27 22:36:50,363 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-27 22:36:50,363 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2022-04-27 22:36:50,363 INFO L130 BoogieDeclarations]: Found specification of procedure tree_del [2022-04-27 22:36:50,363 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-27 22:36:50,363 INFO L130 BoogieDeclarations]: Found specification of procedure tree_inorder [2022-04-27 22:36:50,363 INFO L130 BoogieDeclarations]: Found specification of procedure size [2022-04-27 22:36:50,363 INFO L130 BoogieDeclarations]: Found specification of procedure task [2022-04-27 22:36:50,363 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-04-27 22:36:50,363 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.meminit [2022-04-27 22:36:50,364 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-27 22:36:50,364 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-27 22:36:50,364 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-27 22:36:50,364 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-27 22:36:50,464 INFO L234 CfgBuilder]: Building ICFG [2022-04-27 22:36:50,465 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-27 22:36:50,813 INFO L275 CfgBuilder]: Performing block encoding [2022-04-27 22:36:50,818 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-27 22:36:50,818 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-04-27 22:36:50,819 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 10:36:50 BoogieIcfgContainer [2022-04-27 22:36:50,819 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-27 22:36:50,820 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-27 22:36:50,820 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-27 22:36:50,821 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-27 22:36:50,823 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 10:36:50" (1/1) ... [2022-04-27 22:36:50,824 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_QVASR [2022-04-27 22:36:50,880 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 27.04 10:36:50 BasicIcfg [2022-04-27 22:36:50,880 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-27 22:36:50,881 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-27 22:36:50,881 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-27 22:36:50,883 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-27 22:36:50,884 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 27.04 10:36:49" (1/4) ... [2022-04-27 22:36:50,886 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@781733b5 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 10:36:50, skipping insertion in model container [2022-04-27 22:36:50,886 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:36:50" (2/4) ... [2022-04-27 22:36:50,886 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@781733b5 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 10:36:50, skipping insertion in model container [2022-04-27 22:36:50,886 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 10:36:50" (3/4) ... [2022-04-27 22:36:50,887 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@781733b5 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 27.04 10:36:50, skipping insertion in model container [2022-04-27 22:36:50,887 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 27.04 10:36:50" (4/4) ... [2022-04-27 22:36:50,889 INFO L111 eAbstractionObserver]: Analyzing ICFG tree_del_iter.cqvasr [2022-04-27 22:36:50,900 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-27 22:36:50,901 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-27 22:36:50,944 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-27 22:36:50,948 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=FINITE_AUTOMATA, 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@5d243098, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@31628e28 [2022-04-27 22:36:50,948 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-27 22:36:50,962 INFO L276 IsEmpty]: Start isEmpty. Operand has 98 states, 60 states have (on average 1.2666666666666666) internal successors, (76), 61 states have internal predecessors, (76), 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 22:36:50,969 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-04-27 22:36:50,969 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:36:50,970 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 22:36:50,970 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:36:50,974 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:36:50,974 INFO L85 PathProgramCache]: Analyzing trace with hash 271192072, now seen corresponding path program 1 times [2022-04-27 22:36:50,982 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:36:50,982 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1901748459] [2022-04-27 22:36:50,983 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:36:50,983 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:36:51,109 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:51,182 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:36:51,187 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:51,203 INFO L290 TraceCheckUtils]: 0: Hoare triple {130#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [206] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_23| 1))) (and (< 0 |v_#StackHeapBarrier_2|) (= (select |v_#valid_15| 1) 1) (= (select |v_#valid_15| 2) 1) (= (select |v_#length_11| 2) 16) (= (select |v_#length_11| 3) 12) (= |v_#NULL.base_1| 0) (= (select |v_#valid_15| 0) 0) (= (select .cse0 0) 48) (= (select |v_#valid_15| 3) 1) (= (select .cse0 1) 0) (= 2 (select |v_#length_11| 1)) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_23|, #StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_11|, #valid=|v_#valid_15|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #valid=|v_#valid_15|, #memory_int=|v_#memory_int_23|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_11|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {101#true} is VALID [2022-04-27 22:36:51,203 INFO L290 TraceCheckUtils]: 1: Hoare triple {101#true} [209] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101#true} is VALID [2022-04-27 22:36:51,203 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {101#true} {101#true} [305] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101#true} is VALID [2022-04-27 22:36:51,219 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 5 [2022-04-27 22:36:51,224 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:51,229 INFO L290 TraceCheckUtils]: 0: Hoare triple {131#(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|))} [211] nondet_treeENTRY-->nondet_treeFINAL: Formula: (and (= 0 |v_nondet_tree_#res.base_1|) (= |v_nondet_tree_#res.offset_1| 0) (not (= (mod |v_nondet_tree_#t~nondet5_2| 256) 0))) InVars {nondet_tree_#t~nondet5=|v_nondet_tree_#t~nondet5_2|} OutVars{nondet_tree_#res.base=|v_nondet_tree_#res.base_1|, nondet_tree_#res.offset=|v_nondet_tree_#res.offset_1|} AuxVars[] AssignedVars[nondet_tree_#t~nondet5, nondet_tree_#res.base, nondet_tree_#res.offset] {101#true} is VALID [2022-04-27 22:36:51,230 INFO L290 TraceCheckUtils]: 1: Hoare triple {101#true} [215] nondet_treeFINAL-->nondet_treeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101#true} is VALID [2022-04-27 22:36:51,230 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {101#true} {101#true} [306] nondet_treeEXIT-->L110: AOR: Formula: (and (= |v_nondet_tree_#res.offsetOutParam_1| |v_main_#t~ret45.offset_4|) (= |v_nondet_tree_#res.baseOutParam_1| |v_main_#t~ret45.base_4|)) InVars {nondet_tree_#res.base=|v_nondet_tree_#res.baseOutParam_1|, nondet_tree_#res.offset=|v_nondet_tree_#res.offsetOutParam_1|} OutVars{main_#t~ret45.base=|v_main_#t~ret45.base_4|, main_#t~ret45.offset=|v_main_#t~ret45.offset_4|} AuxVars[] AssignedVars[main_#t~ret45.offset, main_#t~ret45.base, nondet_tree_#res.base, nondet_tree_#res.offset] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101#true} is VALID [2022-04-27 22:36:51,230 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-27 22:36:51,231 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:51,236 INFO L290 TraceCheckUtils]: 0: Hoare triple {101#true} [221] minENTRY-->L37: Formula: (and (= |v_min_#in~n.base_1| v_min_~n.base_3) (= v_min_~n.offset_3 |v_min_#in~n.offset_1|)) InVars {min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} OutVars{min_~n.offset=v_min_~n.offset_3, min_~n.base=v_min_~n.base_3, min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} AuxVars[] AssignedVars[min_~n.offset, min_~n.base] {101#true} is VALID [2022-04-27 22:36:51,236 INFO L290 TraceCheckUtils]: 1: Hoare triple {101#true} [225] L37-->minFINAL: Formula: (and (= 2147483647 |v_min_#res_4|) (= v_min_~n.base_4 0) (= v_min_~n.offset_4 0)) InVars {min_~n.offset=v_min_~n.offset_4, min_~n.base=v_min_~n.base_4} OutVars{min_~n.offset=v_min_~n.offset_4, min_~n.base=v_min_~n.base_4, min_#res=|v_min_#res_4|} AuxVars[] AssignedVars[min_#res] {101#true} is VALID [2022-04-27 22:36:51,236 INFO L290 TraceCheckUtils]: 2: Hoare triple {101#true} [229] minFINAL-->minEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101#true} is VALID [2022-04-27 22:36:51,237 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {101#true} {101#true} [312] minEXIT-->L86-1: AOR: Formula: (= |v_min_#resOutParam_3| |v_task_#t~ret32_4|) InVars {min_#res=|v_min_#resOutParam_3|} OutVars{task_#t~ret32=|v_task_#t~ret32_4|} AuxVars[] AssignedVars[task_#t~ret32, min_#res] LVA: Formula: (and (= v_task_~t.base_7 |v_min_#in~n.baseInParam_3|) (= |v_min_#in~n.offsetInParam_3| v_task_~t.offset_7)) InVars {task_~t.offset=v_task_~t.offset_7, task_~t.base=v_task_~t.base_7} OutVars{min_#in~n.base=|v_min_#in~n.baseInParam_3|, min_#in~n.offset=|v_min_#in~n.offsetInParam_3|} AuxVars[] AssignedVars[task_~t.offset, min_#in~n.offset, task_~t.base, min_#in~n.base] {101#true} is VALID [2022-04-27 22:36:51,237 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-27 22:36:51,239 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:51,251 INFO L290 TraceCheckUtils]: 0: Hoare triple {101#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {101#true} is VALID [2022-04-27 22:36:51,252 INFO L290 TraceCheckUtils]: 1: Hoare triple {101#true} [232] L81-->sizeFINAL: Formula: (and (= v_size_~t.base_2 0) (= |v_size_#res_1| 0) (= v_size_~t.offset_2 0)) InVars {size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2} OutVars{size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2, size_#res=|v_size_#res_1|} AuxVars[] AssignedVars[size_#res] {132#(= |size_#res| 0)} is VALID [2022-04-27 22:36:51,252 INFO L290 TraceCheckUtils]: 2: Hoare triple {132#(= |size_#res| 0)} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {132#(= |size_#res| 0)} is VALID [2022-04-27 22:36:51,253 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {132#(= |size_#res| 0)} {101#true} [313] sizeEXIT-->L89-1: AOR: Formula: (= |v_task_#t~ret33_4| |v_size_#resOutParam_1|) InVars {size_#res=|v_size_#resOutParam_1|} OutVars{task_#t~ret33=|v_task_#t~ret33_4|} AuxVars[] AssignedVars[task_#t~ret33, size_#res] LVA: Formula: (and (= v_task_~t.base_8 |v_size_#in~t.baseInParam_1|) (= |v_size_#in~t.offsetInParam_1| v_task_~t.offset_8)) InVars {task_~t.offset=v_task_~t.offset_8, task_~t.base=v_task_~t.base_8} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_1|, size_#in~t.base=|v_size_#in~t.baseInParam_1|} AuxVars[] AssignedVars[task_~t.offset, size_#in~t.offset, size_#in~t.base, task_~t.base] {117#(= |task_#t~ret33| 0)} is VALID [2022-04-27 22:36:51,254 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 23 [2022-04-27 22:36:51,256 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:51,278 INFO L290 TraceCheckUtils]: 0: Hoare triple {101#true} [236] assume_cycle_if_notENTRY-->L9: Formula: (= v_assume_cycle_if_not_~cond_3 |v_assume_cycle_if_not_#in~cond_1|) InVars {assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~cond_1|} OutVars{assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~cond_1|, assume_cycle_if_not_~cond=v_assume_cycle_if_not_~cond_3} AuxVars[] AssignedVars[assume_cycle_if_not_~cond] {133#(= assume_cycle_if_not_~cond |assume_cycle_if_not_#in~cond|)} is VALID [2022-04-27 22:36:51,278 INFO L290 TraceCheckUtils]: 1: Hoare triple {133#(= assume_cycle_if_not_~cond |assume_cycle_if_not_#in~cond|)} [243] L9-->L9-5: Formula: (not (= v_assume_cycle_if_not_~cond_1 0)) InVars {assume_cycle_if_not_~cond=v_assume_cycle_if_not_~cond_1} OutVars{assume_cycle_if_not_~cond=v_assume_cycle_if_not_~cond_1} AuxVars[] AssignedVars[] {134#(not (= |assume_cycle_if_not_#in~cond| 0))} is VALID [2022-04-27 22:36:51,279 INFO L290 TraceCheckUtils]: 2: Hoare triple {134#(not (= |assume_cycle_if_not_#in~cond| 0))} [252] L9-5-->assume_cycle_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {134#(not (= |assume_cycle_if_not_#in~cond| 0))} is VALID [2022-04-27 22:36:51,281 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {134#(not (= |assume_cycle_if_not_#in~cond| 0))} {118#(= task_~n~1 0)} [317] assume_cycle_if_notEXIT-->L90-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_cycle_if_not_#in~condInParam_1| (ite (not (= v_task_~n~1_9 0)) 1 0)) InVars {task_~n~1=v_task_~n~1_9} OutVars{assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[task_~n~1, assume_cycle_if_not_#in~cond] {102#false} is VALID [2022-04-27 22:36:51,290 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 29 [2022-04-27 22:36:51,297 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:51,305 INFO L290 TraceCheckUtils]: 0: Hoare triple {135#(= |#memory_int| |old(#memory_int)|)} [248] #Ultimate.meminitENTRY-->#Ultimate.meminitFINAL: Formula: (= (store |v_#memory_int_12| |v_#Ultimate.meminit_#ptr.base_1| ((as const (Array Int Int)) 0)) |v_#memory_int_11|) InVars {#memory_int=|v_#memory_int_12|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} OutVars{#memory_int=|v_#memory_int_11|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} AuxVars[] AssignedVars[#memory_int] {101#true} is VALID [2022-04-27 22:36:51,306 INFO L290 TraceCheckUtils]: 1: Hoare triple {101#true} [259] #Ultimate.meminitFINAL-->#Ultimate.meminitEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101#true} is VALID [2022-04-27 22:36:51,307 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {101#true} {102#false} [318] #Ultimate.meminitEXIT-->L91-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (and (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_task_#t~malloc34.offset_4|) (= v_task_~n~1_10 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_task_#t~malloc34.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= (* v_task_~n~1_10 4) |v_#Ultimate.meminit_#productInParam_1|)) InVars {task_#t~malloc34.base=|v_task_#t~malloc34.base_4|, task_~n~1=v_task_~n~1_10, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[task_~n~1, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, task_#t~malloc34.offset, task_#t~malloc34.base, #Ultimate.meminit_#product, #Ultimate.meminit_#ptr.base, #Ultimate.meminit_#ptr.offset] {102#false} is VALID [2022-04-27 22:36:51,320 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 34 [2022-04-27 22:36:51,325 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:51,331 INFO L290 TraceCheckUtils]: 0: Hoare triple {136#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} [262] tree_inorderENTRY-->L70: Formula: (and (= v_tree_inorder_~i_1 |v_tree_inorder_#in~i_1|) (= v_tree_inorder_~a.base_1 |v_tree_inorder_#in~a.base_1|) (= |v_tree_inorder_#in~t.offset_1| v_tree_inorder_~t.offset_1) (= |v_tree_inorder_#in~a.offset_1| v_tree_inorder_~a.offset_1) (= v_tree_inorder_~t.base_1 |v_tree_inorder_#in~t.base_1|)) InVars {tree_inorder_#in~i=|v_tree_inorder_#in~i_1|, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offset_1|, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.base_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offset_1|, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.base_1|} OutVars{tree_inorder_#in~i=|v_tree_inorder_#in~i_1|, tree_inorder_~a.base=v_tree_inorder_~a.base_1, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offset_1|, tree_inorder_~t.offset=v_tree_inorder_~t.offset_1, tree_inorder_~a.offset=v_tree_inorder_~a.offset_1, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.base_1|, tree_inorder_~t.base=v_tree_inorder_~t.base_1, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.base_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offset_1|, tree_inorder_~i=v_tree_inorder_~i_1} AuxVars[] AssignedVars[tree_inorder_~a.base, tree_inorder_~t.offset, tree_inorder_~a.offset, tree_inorder_~t.base, tree_inorder_~i] {101#true} is VALID [2022-04-27 22:36:51,331 INFO L290 TraceCheckUtils]: 1: Hoare triple {101#true} [265] L70-->tree_inorderFINAL: Formula: (and (= v_tree_inorder_~i_2 |v_tree_inorder_#res_1|) (= v_tree_inorder_~t.base_2 0) (= v_tree_inorder_~t.offset_2 0)) InVars {tree_inorder_~t.base=v_tree_inorder_~t.base_2, tree_inorder_~t.offset=v_tree_inorder_~t.offset_2, tree_inorder_~i=v_tree_inorder_~i_2} OutVars{tree_inorder_~t.base=v_tree_inorder_~t.base_2, tree_inorder_#res=|v_tree_inorder_#res_1|, tree_inorder_~t.offset=v_tree_inorder_~t.offset_2, tree_inorder_~i=v_tree_inorder_~i_2} AuxVars[] AssignedVars[tree_inorder_#res] {101#true} is VALID [2022-04-27 22:36:51,332 INFO L290 TraceCheckUtils]: 2: Hoare triple {101#true} [270] tree_inorderFINAL-->tree_inorderEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101#true} is VALID [2022-04-27 22:36:51,332 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {101#true} {102#false} [320] tree_inorderEXIT-->L92-1: AOR: Formula: (= |v_tree_inorder_#resOutParam_1| |v_task_#t~ret35_4|) InVars {tree_inorder_#res=|v_tree_inorder_#resOutParam_1|} OutVars{task_#t~ret35=|v_task_#t~ret35_4|} AuxVars[] AssignedVars[task_#t~ret35, tree_inorder_#res] LVA: Formula: (and (= v_task_~t.base_9 |v_tree_inorder_#in~t.baseInParam_1|) (= |v_tree_inorder_#in~a.baseInParam_1| v_task_~x~0.base_6) (= |v_tree_inorder_#in~t.offsetInParam_1| v_task_~t.offset_9) (= |v_tree_inorder_#in~a.offsetInParam_1| v_task_~x~0.offset_6) (= v_task_~n~1_11 |v_tree_inorder_#in~iInParam_1|)) InVars {task_~t.offset=v_task_~t.offset_9, task_~x~0.base=v_task_~x~0.base_6, task_~n~1=v_task_~n~1_11, task_~t.base=v_task_~t.base_9, task_~x~0.offset=v_task_~x~0.offset_6} OutVars{tree_inorder_#in~i=|v_tree_inorder_#in~iInParam_1|, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offsetInParam_1|, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.baseInParam_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offsetInParam_1|, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.baseInParam_1|} AuxVars[] AssignedVars[tree_inorder_#in~i, task_~t.offset, tree_inorder_#in~a.offset, task_~x~0.base, task_~n~1, tree_inorder_#in~a.base, tree_inorder_#in~t.base, tree_inorder_#in~t.offset, task_~t.base, task_~x~0.offset] {102#false} is VALID [2022-04-27 22:36:51,333 INFO L272 TraceCheckUtils]: 0: Hoare triple {101#true} [204] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {130#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:36:51,333 INFO L290 TraceCheckUtils]: 1: Hoare triple {130#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [206] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_23| 1))) (and (< 0 |v_#StackHeapBarrier_2|) (= (select |v_#valid_15| 1) 1) (= (select |v_#valid_15| 2) 1) (= (select |v_#length_11| 2) 16) (= (select |v_#length_11| 3) 12) (= |v_#NULL.base_1| 0) (= (select |v_#valid_15| 0) 0) (= (select .cse0 0) 48) (= (select |v_#valid_15| 3) 1) (= (select .cse0 1) 0) (= 2 (select |v_#length_11| 1)) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_23|, #StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_11|, #valid=|v_#valid_15|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #valid=|v_#valid_15|, #memory_int=|v_#memory_int_23|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_11|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {101#true} is VALID [2022-04-27 22:36:51,333 INFO L290 TraceCheckUtils]: 2: Hoare triple {101#true} [209] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101#true} is VALID [2022-04-27 22:36:51,333 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {101#true} {101#true} [305] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101#true} is VALID [2022-04-27 22:36:51,334 INFO L272 TraceCheckUtils]: 4: Hoare triple {101#true} [205] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101#true} is VALID [2022-04-27 22:36:51,334 INFO L272 TraceCheckUtils]: 5: Hoare triple {101#true} [208] mainENTRY-->nondet_treeENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {131#(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 22:36:51,335 INFO L290 TraceCheckUtils]: 6: Hoare triple {131#(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|))} [211] nondet_treeENTRY-->nondet_treeFINAL: Formula: (and (= 0 |v_nondet_tree_#res.base_1|) (= |v_nondet_tree_#res.offset_1| 0) (not (= (mod |v_nondet_tree_#t~nondet5_2| 256) 0))) InVars {nondet_tree_#t~nondet5=|v_nondet_tree_#t~nondet5_2|} OutVars{nondet_tree_#res.base=|v_nondet_tree_#res.base_1|, nondet_tree_#res.offset=|v_nondet_tree_#res.offset_1|} AuxVars[] AssignedVars[nondet_tree_#t~nondet5, nondet_tree_#res.base, nondet_tree_#res.offset] {101#true} is VALID [2022-04-27 22:36:51,336 INFO L290 TraceCheckUtils]: 7: Hoare triple {101#true} [215] nondet_treeFINAL-->nondet_treeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101#true} is VALID [2022-04-27 22:36:51,336 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {101#true} {101#true} [306] nondet_treeEXIT-->L110: AOR: Formula: (and (= |v_nondet_tree_#res.offsetOutParam_1| |v_main_#t~ret45.offset_4|) (= |v_nondet_tree_#res.baseOutParam_1| |v_main_#t~ret45.base_4|)) InVars {nondet_tree_#res.base=|v_nondet_tree_#res.baseOutParam_1|, nondet_tree_#res.offset=|v_nondet_tree_#res.offsetOutParam_1|} OutVars{main_#t~ret45.base=|v_main_#t~ret45.base_4|, main_#t~ret45.offset=|v_main_#t~ret45.offset_4|} AuxVars[] AssignedVars[main_#t~ret45.offset, main_#t~ret45.base, nondet_tree_#res.base, nondet_tree_#res.offset] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101#true} is VALID [2022-04-27 22:36:51,338 INFO L272 TraceCheckUtils]: 9: Hoare triple {101#true} [210] L110-->taskENTRY: Formula: (and (= |v_main_#t~ret45.base_5| |v_task_#in~t.baseInParam_1|) (= |v_main_#t~ret45.offset_5| |v_task_#in~t.offsetInParam_1|)) InVars {main_#t~ret45.base=|v_main_#t~ret45.base_5|, main_#t~ret45.offset=|v_main_#t~ret45.offset_5|} OutVars{task_#in~t.base=|v_task_#in~t.baseInParam_1|, task_#in~t.offset=|v_task_#in~t.offsetInParam_1|} AuxVars[] AssignedVars[task_#in~t.offset, main_#t~ret45.offset, main_#t~ret45.base, task_#in~t.base] {101#true} is VALID [2022-04-27 22:36:51,338 INFO L290 TraceCheckUtils]: 10: Hoare triple {101#true} [214] taskENTRY-->L86: Formula: (and (= v_task_~t.base_4 |v_task_#in~t.base_1|) (= |v_task_#in~t.offset_1| v_task_~t.offset_4)) InVars {task_#in~t.base=|v_task_#in~t.base_1|, task_#in~t.offset=|v_task_#in~t.offset_1|} OutVars{task_~t.offset=v_task_~t.offset_4, task_#in~t.base=|v_task_#in~t.base_1|, task_#in~t.offset=|v_task_#in~t.offset_1|, task_~t.base=v_task_~t.base_4} AuxVars[] AssignedVars[task_~t.offset, task_~t.base] {101#true} is VALID [2022-04-27 22:36:51,341 INFO L272 TraceCheckUtils]: 11: Hoare triple {101#true} [218] L86-->minENTRY: Formula: (and (= v_task_~t.base_7 |v_min_#in~n.baseInParam_3|) (= |v_min_#in~n.offsetInParam_3| v_task_~t.offset_7)) InVars {task_~t.offset=v_task_~t.offset_7, task_~t.base=v_task_~t.base_7} OutVars{min_#in~n.base=|v_min_#in~n.baseInParam_3|, min_#in~n.offset=|v_min_#in~n.offsetInParam_3|} AuxVars[] AssignedVars[task_~t.offset, min_#in~n.offset, task_~t.base, min_#in~n.base] {101#true} is VALID [2022-04-27 22:36:51,341 INFO L290 TraceCheckUtils]: 12: Hoare triple {101#true} [221] minENTRY-->L37: Formula: (and (= |v_min_#in~n.base_1| v_min_~n.base_3) (= v_min_~n.offset_3 |v_min_#in~n.offset_1|)) InVars {min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} OutVars{min_~n.offset=v_min_~n.offset_3, min_~n.base=v_min_~n.base_3, min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} AuxVars[] AssignedVars[min_~n.offset, min_~n.base] {101#true} is VALID [2022-04-27 22:36:51,342 INFO L290 TraceCheckUtils]: 13: Hoare triple {101#true} [225] L37-->minFINAL: Formula: (and (= 2147483647 |v_min_#res_4|) (= v_min_~n.base_4 0) (= v_min_~n.offset_4 0)) InVars {min_~n.offset=v_min_~n.offset_4, min_~n.base=v_min_~n.base_4} OutVars{min_~n.offset=v_min_~n.offset_4, min_~n.base=v_min_~n.base_4, min_#res=|v_min_#res_4|} AuxVars[] AssignedVars[min_#res] {101#true} is VALID [2022-04-27 22:36:51,342 INFO L290 TraceCheckUtils]: 14: Hoare triple {101#true} [229] minFINAL-->minEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101#true} is VALID [2022-04-27 22:36:51,342 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {101#true} {101#true} [312] minEXIT-->L86-1: AOR: Formula: (= |v_min_#resOutParam_3| |v_task_#t~ret32_4|) InVars {min_#res=|v_min_#resOutParam_3|} OutVars{task_#t~ret32=|v_task_#t~ret32_4|} AuxVars[] AssignedVars[task_#t~ret32, min_#res] LVA: Formula: (and (= v_task_~t.base_7 |v_min_#in~n.baseInParam_3|) (= |v_min_#in~n.offsetInParam_3| v_task_~t.offset_7)) InVars {task_~t.offset=v_task_~t.offset_7, task_~t.base=v_task_~t.base_7} OutVars{min_#in~n.base=|v_min_#in~n.baseInParam_3|, min_#in~n.offset=|v_min_#in~n.offsetInParam_3|} AuxVars[] AssignedVars[task_~t.offset, min_#in~n.offset, task_~t.base, min_#in~n.base] {101#true} is VALID [2022-04-27 22:36:51,342 INFO L290 TraceCheckUtils]: 16: Hoare triple {101#true} [220] L86-1-->L89: Formula: (and (< |v_#StackHeapBarrier_5| |v_task_~#b~1.base_5|) (= |v_#length_16| (store |v_#length_17| |v_task_~#b~1.base_5| 4)) (not (= |v_task_~#b~1.base_5| 0)) (<= |v_task_#t~ret32_3| 2147483647) (= |v_task_#t~ret32_3| v_task_~a~1_3) (= (select |v_#valid_27| |v_task_~#b~1.base_5|) 0) (<= 0 (+ |v_task_#t~ret32_3| 2147483648)) (= |v_task_~#b~1.offset_5| 0) (= (store |v_#valid_27| |v_task_~#b~1.base_5| 1) |v_#valid_26|)) InVars {task_#t~ret32=|v_task_#t~ret32_3|, #StackHeapBarrier=|v_#StackHeapBarrier_5|, #length=|v_#length_17|, #valid=|v_#valid_27|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_5|, task_~#b~1.offset=|v_task_~#b~1.offset_5|, #valid=|v_#valid_26|, task_~#b~1.base=|v_task_~#b~1.base_5|, #length=|v_#length_16|, task_~a~1=v_task_~a~1_3} AuxVars[] AssignedVars[task_#t~ret32, task_~#b~1.offset, #valid, task_~#b~1.base, #length, task_~a~1] {101#true} is VALID [2022-04-27 22:36:51,342 INFO L272 TraceCheckUtils]: 17: Hoare triple {101#true} [224] L89-->sizeENTRY: Formula: (and (= v_task_~t.base_8 |v_size_#in~t.baseInParam_1|) (= |v_size_#in~t.offsetInParam_1| v_task_~t.offset_8)) InVars {task_~t.offset=v_task_~t.offset_8, task_~t.base=v_task_~t.base_8} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_1|, size_#in~t.base=|v_size_#in~t.baseInParam_1|} AuxVars[] AssignedVars[task_~t.offset, size_#in~t.offset, size_#in~t.base, task_~t.base] {101#true} is VALID [2022-04-27 22:36:51,343 INFO L290 TraceCheckUtils]: 18: Hoare triple {101#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {101#true} is VALID [2022-04-27 22:36:51,344 INFO L290 TraceCheckUtils]: 19: Hoare triple {101#true} [232] L81-->sizeFINAL: Formula: (and (= v_size_~t.base_2 0) (= |v_size_#res_1| 0) (= v_size_~t.offset_2 0)) InVars {size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2} OutVars{size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2, size_#res=|v_size_#res_1|} AuxVars[] AssignedVars[size_#res] {132#(= |size_#res| 0)} is VALID [2022-04-27 22:36:51,344 INFO L290 TraceCheckUtils]: 20: Hoare triple {132#(= |size_#res| 0)} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {132#(= |size_#res| 0)} is VALID [2022-04-27 22:36:51,345 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {132#(= |size_#res| 0)} {101#true} [313] sizeEXIT-->L89-1: AOR: Formula: (= |v_task_#t~ret33_4| |v_size_#resOutParam_1|) InVars {size_#res=|v_size_#resOutParam_1|} OutVars{task_#t~ret33=|v_task_#t~ret33_4|} AuxVars[] AssignedVars[task_#t~ret33, size_#res] LVA: Formula: (and (= v_task_~t.base_8 |v_size_#in~t.baseInParam_1|) (= |v_size_#in~t.offsetInParam_1| v_task_~t.offset_8)) InVars {task_~t.offset=v_task_~t.offset_8, task_~t.base=v_task_~t.base_8} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_1|, size_#in~t.base=|v_size_#in~t.baseInParam_1|} AuxVars[] AssignedVars[task_~t.offset, size_#in~t.offset, size_#in~t.base, task_~t.base] {117#(= |task_#t~ret33| 0)} is VALID [2022-04-27 22:36:51,349 INFO L290 TraceCheckUtils]: 22: Hoare triple {117#(= |task_#t~ret33| 0)} [227] L89-1-->L90: Formula: (and (<= |v_task_#t~ret33_3| 2147483647) (<= 0 (+ |v_task_#t~ret33_3| 2147483648)) (= |v_task_#t~ret33_3| v_task_~n~1_8)) InVars {task_#t~ret33=|v_task_#t~ret33_3|} OutVars{task_~n~1=v_task_~n~1_8} AuxVars[] AssignedVars[task_#t~ret33, task_~n~1] {118#(= task_~n~1 0)} is VALID [2022-04-27 22:36:51,349 INFO L272 TraceCheckUtils]: 23: Hoare triple {118#(= task_~n~1 0)} [231] L90-->assume_cycle_if_notENTRY: Formula: (= |v_assume_cycle_if_not_#in~condInParam_1| (ite (not (= v_task_~n~1_9 0)) 1 0)) InVars {task_~n~1=v_task_~n~1_9} OutVars{assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[task_~n~1, assume_cycle_if_not_#in~cond] {101#true} is VALID [2022-04-27 22:36:51,350 INFO L290 TraceCheckUtils]: 24: Hoare triple {101#true} [236] assume_cycle_if_notENTRY-->L9: Formula: (= v_assume_cycle_if_not_~cond_3 |v_assume_cycle_if_not_#in~cond_1|) InVars {assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~cond_1|} OutVars{assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~cond_1|, assume_cycle_if_not_~cond=v_assume_cycle_if_not_~cond_3} AuxVars[] AssignedVars[assume_cycle_if_not_~cond] {133#(= assume_cycle_if_not_~cond |assume_cycle_if_not_#in~cond|)} is VALID [2022-04-27 22:36:51,350 INFO L290 TraceCheckUtils]: 25: Hoare triple {133#(= assume_cycle_if_not_~cond |assume_cycle_if_not_#in~cond|)} [243] L9-->L9-5: Formula: (not (= v_assume_cycle_if_not_~cond_1 0)) InVars {assume_cycle_if_not_~cond=v_assume_cycle_if_not_~cond_1} OutVars{assume_cycle_if_not_~cond=v_assume_cycle_if_not_~cond_1} AuxVars[] AssignedVars[] {134#(not (= |assume_cycle_if_not_#in~cond| 0))} is VALID [2022-04-27 22:36:51,351 INFO L290 TraceCheckUtils]: 26: Hoare triple {134#(not (= |assume_cycle_if_not_#in~cond| 0))} [252] L9-5-->assume_cycle_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {134#(not (= |assume_cycle_if_not_#in~cond| 0))} is VALID [2022-04-27 22:36:51,352 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {134#(not (= |assume_cycle_if_not_#in~cond| 0))} {118#(= task_~n~1 0)} [317] assume_cycle_if_notEXIT-->L90-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_cycle_if_not_#in~condInParam_1| (ite (not (= v_task_~n~1_9 0)) 1 0)) InVars {task_~n~1=v_task_~n~1_9} OutVars{assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[task_~n~1, assume_cycle_if_not_#in~cond] {102#false} is VALID [2022-04-27 22:36:51,352 INFO L290 TraceCheckUtils]: 28: Hoare triple {102#false} [235] L90-1-->L91: Formula: (and (= (store |v_#length_13| |v_task_#t~malloc34.base_1| (* 4 v_task_~n~1_2)) |v_#length_12|) (< |v_task_#t~malloc34.base_1| |v_#StackHeapBarrier_3|) (= 0 |v_task_#t~malloc34.offset_1|) (= |v_#valid_16| (store |v_#valid_17| |v_task_#t~malloc34.base_1| 1)) (not (= |v_task_#t~malloc34.base_1| 0)) (= (select |v_#valid_17| |v_task_#t~malloc34.base_1|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_3|, #length=|v_#length_13|, task_~n~1=v_task_~n~1_2, #valid=|v_#valid_17|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_3|, task_~n~1=v_task_~n~1_2, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_1|, #valid=|v_#valid_16|, task_#t~malloc34.base=|v_task_#t~malloc34.base_1|, #length=|v_#length_12|} AuxVars[] AssignedVars[task_#t~malloc34.offset, #valid, task_#t~malloc34.base, #length] {102#false} is VALID [2022-04-27 22:36:51,352 INFO L272 TraceCheckUtils]: 29: Hoare triple {102#false} [241] L91-->#Ultimate.meminitENTRY: Formula: (and (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_task_#t~malloc34.offset_4|) (= v_task_~n~1_10 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_task_#t~malloc34.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= (* v_task_~n~1_10 4) |v_#Ultimate.meminit_#productInParam_1|)) InVars {task_#t~malloc34.base=|v_task_#t~malloc34.base_4|, task_~n~1=v_task_~n~1_10, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[task_~n~1, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, task_#t~malloc34.offset, task_#t~malloc34.base, #Ultimate.meminit_#product, #Ultimate.meminit_#ptr.base, #Ultimate.meminit_#ptr.offset] {135#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-04-27 22:36:51,352 INFO L290 TraceCheckUtils]: 30: Hoare triple {135#(= |#memory_int| |old(#memory_int)|)} [248] #Ultimate.meminitENTRY-->#Ultimate.meminitFINAL: Formula: (= (store |v_#memory_int_12| |v_#Ultimate.meminit_#ptr.base_1| ((as const (Array Int Int)) 0)) |v_#memory_int_11|) InVars {#memory_int=|v_#memory_int_12|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} OutVars{#memory_int=|v_#memory_int_11|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} AuxVars[] AssignedVars[#memory_int] {101#true} is VALID [2022-04-27 22:36:51,354 INFO L290 TraceCheckUtils]: 31: Hoare triple {101#true} [259] #Ultimate.meminitFINAL-->#Ultimate.meminitEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101#true} is VALID [2022-04-27 22:36:51,354 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {101#true} {102#false} [318] #Ultimate.meminitEXIT-->L91-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (and (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_task_#t~malloc34.offset_4|) (= v_task_~n~1_10 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_task_#t~malloc34.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= (* v_task_~n~1_10 4) |v_#Ultimate.meminit_#productInParam_1|)) InVars {task_#t~malloc34.base=|v_task_#t~malloc34.base_4|, task_~n~1=v_task_~n~1_10, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[task_~n~1, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, task_#t~malloc34.offset, task_#t~malloc34.base, #Ultimate.meminit_#product, #Ultimate.meminit_#ptr.base, #Ultimate.meminit_#ptr.offset] {102#false} is VALID [2022-04-27 22:36:51,354 INFO L290 TraceCheckUtils]: 33: Hoare triple {102#false} [247] L91-1-->L92: Formula: (and (= v_task_~x~0.offset_1 |v_task_#t~malloc34.offset_3|) (= |v_task_#t~malloc34.base_3| v_task_~x~0.base_1)) InVars {task_#t~malloc34.base=|v_task_#t~malloc34.base_3|, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_3|} OutVars{task_#t~malloc34.base=|v_task_#t~malloc34.base_3|, task_~x~0.base=v_task_~x~0.base_1, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_3|, task_~x~0.offset=v_task_~x~0.offset_1} AuxVars[] AssignedVars[task_~x~0.base, task_~x~0.offset] {102#false} is VALID [2022-04-27 22:36:51,354 INFO L272 TraceCheckUtils]: 34: Hoare triple {102#false} [258] L92-->tree_inorderENTRY: Formula: (and (= v_task_~t.base_9 |v_tree_inorder_#in~t.baseInParam_1|) (= |v_tree_inorder_#in~a.baseInParam_1| v_task_~x~0.base_6) (= |v_tree_inorder_#in~t.offsetInParam_1| v_task_~t.offset_9) (= |v_tree_inorder_#in~a.offsetInParam_1| v_task_~x~0.offset_6) (= v_task_~n~1_11 |v_tree_inorder_#in~iInParam_1|)) InVars {task_~t.offset=v_task_~t.offset_9, task_~x~0.base=v_task_~x~0.base_6, task_~n~1=v_task_~n~1_11, task_~t.base=v_task_~t.base_9, task_~x~0.offset=v_task_~x~0.offset_6} OutVars{tree_inorder_#in~i=|v_tree_inorder_#in~iInParam_1|, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offsetInParam_1|, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.baseInParam_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offsetInParam_1|, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.baseInParam_1|} AuxVars[] AssignedVars[tree_inorder_#in~i, task_~t.offset, tree_inorder_#in~a.offset, task_~x~0.base, task_~n~1, tree_inorder_#in~a.base, tree_inorder_#in~t.base, tree_inorder_#in~t.offset, task_~t.base, task_~x~0.offset] {136#(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 22:36:51,355 INFO L290 TraceCheckUtils]: 35: Hoare triple {136#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} [262] tree_inorderENTRY-->L70: Formula: (and (= v_tree_inorder_~i_1 |v_tree_inorder_#in~i_1|) (= v_tree_inorder_~a.base_1 |v_tree_inorder_#in~a.base_1|) (= |v_tree_inorder_#in~t.offset_1| v_tree_inorder_~t.offset_1) (= |v_tree_inorder_#in~a.offset_1| v_tree_inorder_~a.offset_1) (= v_tree_inorder_~t.base_1 |v_tree_inorder_#in~t.base_1|)) InVars {tree_inorder_#in~i=|v_tree_inorder_#in~i_1|, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offset_1|, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.base_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offset_1|, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.base_1|} OutVars{tree_inorder_#in~i=|v_tree_inorder_#in~i_1|, tree_inorder_~a.base=v_tree_inorder_~a.base_1, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offset_1|, tree_inorder_~t.offset=v_tree_inorder_~t.offset_1, tree_inorder_~a.offset=v_tree_inorder_~a.offset_1, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.base_1|, tree_inorder_~t.base=v_tree_inorder_~t.base_1, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.base_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offset_1|, tree_inorder_~i=v_tree_inorder_~i_1} AuxVars[] AssignedVars[tree_inorder_~a.base, tree_inorder_~t.offset, tree_inorder_~a.offset, tree_inorder_~t.base, tree_inorder_~i] {101#true} is VALID [2022-04-27 22:36:51,355 INFO L290 TraceCheckUtils]: 36: Hoare triple {101#true} [265] L70-->tree_inorderFINAL: Formula: (and (= v_tree_inorder_~i_2 |v_tree_inorder_#res_1|) (= v_tree_inorder_~t.base_2 0) (= v_tree_inorder_~t.offset_2 0)) InVars {tree_inorder_~t.base=v_tree_inorder_~t.base_2, tree_inorder_~t.offset=v_tree_inorder_~t.offset_2, tree_inorder_~i=v_tree_inorder_~i_2} OutVars{tree_inorder_~t.base=v_tree_inorder_~t.base_2, tree_inorder_#res=|v_tree_inorder_#res_1|, tree_inorder_~t.offset=v_tree_inorder_~t.offset_2, tree_inorder_~i=v_tree_inorder_~i_2} AuxVars[] AssignedVars[tree_inorder_#res] {101#true} is VALID [2022-04-27 22:36:51,355 INFO L290 TraceCheckUtils]: 37: Hoare triple {101#true} [270] tree_inorderFINAL-->tree_inorderEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101#true} is VALID [2022-04-27 22:36:51,355 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {101#true} {102#false} [320] tree_inorderEXIT-->L92-1: AOR: Formula: (= |v_tree_inorder_#resOutParam_1| |v_task_#t~ret35_4|) InVars {tree_inorder_#res=|v_tree_inorder_#resOutParam_1|} OutVars{task_#t~ret35=|v_task_#t~ret35_4|} AuxVars[] AssignedVars[task_#t~ret35, tree_inorder_#res] LVA: Formula: (and (= v_task_~t.base_9 |v_tree_inorder_#in~t.baseInParam_1|) (= |v_tree_inorder_#in~a.baseInParam_1| v_task_~x~0.base_6) (= |v_tree_inorder_#in~t.offsetInParam_1| v_task_~t.offset_9) (= |v_tree_inorder_#in~a.offsetInParam_1| v_task_~x~0.offset_6) (= v_task_~n~1_11 |v_tree_inorder_#in~iInParam_1|)) InVars {task_~t.offset=v_task_~t.offset_9, task_~x~0.base=v_task_~x~0.base_6, task_~n~1=v_task_~n~1_11, task_~t.base=v_task_~t.base_9, task_~x~0.offset=v_task_~x~0.offset_6} OutVars{tree_inorder_#in~i=|v_tree_inorder_#in~iInParam_1|, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offsetInParam_1|, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.baseInParam_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offsetInParam_1|, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.baseInParam_1|} AuxVars[] AssignedVars[tree_inorder_#in~i, task_~t.offset, tree_inorder_#in~a.offset, task_~x~0.base, task_~n~1, tree_inorder_#in~a.base, tree_inorder_#in~t.base, tree_inorder_#in~t.offset, task_~t.base, task_~x~0.offset] {102#false} is VALID [2022-04-27 22:36:51,355 INFO L290 TraceCheckUtils]: 39: Hoare triple {102#false} [261] L92-1-->L93: Formula: (and (<= 0 (+ |v_task_#t~ret35_3| 2147483648)) (= |v_task_#t~mem36_1| (select (select |v_#memory_int_28| v_task_~x~0.base_3) v_task_~x~0.offset_3)) (<= |v_task_#t~ret35_3| 2147483647)) InVars {#memory_int=|v_#memory_int_28|, task_~x~0.base=v_task_~x~0.base_3, task_#t~ret35=|v_task_#t~ret35_3|, task_~x~0.offset=v_task_~x~0.offset_3} OutVars{#memory_int=|v_#memory_int_28|, task_#t~mem36=|v_task_#t~mem36_1|, task_~x~0.base=v_task_~x~0.base_3, task_~x~0.offset=v_task_~x~0.offset_3} AuxVars[] AssignedVars[task_#t~ret35, task_#t~mem36] {102#false} is VALID [2022-04-27 22:36:51,356 INFO L272 TraceCheckUtils]: 40: Hoare triple {102#false} [264] L93-->__VERIFIER_assertENTRY: Formula: (= (ite (= |v_task_#t~mem36_4| v_task_~a~1_4) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {task_#t~mem36=|v_task_#t~mem36_4|, task_~a~1=v_task_~a~1_4} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, task_#t~mem36, task_~a~1] {102#false} is VALID [2022-04-27 22:36:51,356 INFO L290 TraceCheckUtils]: 41: Hoare triple {102#false} [269] __VERIFIER_assertENTRY-->L16: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {102#false} is VALID [2022-04-27 22:36:51,356 INFO L290 TraceCheckUtils]: 42: Hoare triple {102#false} [274] L16-->L16-1: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {102#false} is VALID [2022-04-27 22:36:51,356 INFO L290 TraceCheckUtils]: 43: Hoare triple {102#false} [280] L16-1-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {102#false} is VALID [2022-04-27 22:36:51,357 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 22:36:51,357 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:36:51,357 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1901748459] [2022-04-27 22:36:51,358 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1901748459] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 22:36:51,358 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 22:36:51,358 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-27 22:36:51,359 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1172950542] [2022-04-27 22:36:51,359 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 22:36:51,363 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 22:36:51,364 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:36:51,367 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 22:36:51,414 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 22:36:51,414 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-27 22:36:51,414 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:36:51,432 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-27 22:36:51,433 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=88, Unknown=0, NotChecked=0, Total=110 [2022-04-27 22:36:51,437 INFO L87 Difference]: Start difference. First operand has 98 states, 60 states have (on average 1.2666666666666666) internal successors, (76), 61 states have internal predecessors, (76), 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 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 22:36:53,401 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:36:53,402 INFO L93 Difference]: Finished difference Result 174 states and 235 transitions. [2022-04-27 22:36:53,402 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-27 22:36:53,402 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 22:36:53,402 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:36:53,403 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 22:36:53,415 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 235 transitions. [2022-04-27 22:36:53,415 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 22:36:53,422 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 235 transitions. [2022-04-27 22:36:53,422 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 235 transitions. [2022-04-27 22:36:53,616 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 235 edges. 235 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:36:53,635 INFO L225 Difference]: With dead ends: 174 [2022-04-27 22:36:53,635 INFO L226 Difference]: Without dead ends: 98 [2022-04-27 22:36:53,638 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 22:36:53,640 INFO L413 NwaCegarLoop]: 79 mSDtfsCounter, 150 mSDsluCounter, 18 mSDsCounter, 0 mSdLazyCounter, 736 mSolverCounterSat, 129 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 169 SdHoareTripleChecker+Valid, 97 SdHoareTripleChecker+Invalid, 865 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 129 IncrementalHoareTripleChecker+Valid, 736 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-27 22:36:53,641 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [169 Valid, 97 Invalid, 865 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [129 Valid, 736 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-27 22:36:53,652 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 98 states. [2022-04-27 22:36:53,666 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 98 to 91. [2022-04-27 22:36:53,667 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:36:53,668 INFO L82 GeneralOperation]: Start isEquivalent. First operand 98 states. Second operand has 91 states, 55 states have (on average 1.1636363636363636) internal successors, (64), 56 states have internal predecessors, (64), 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 22:36:53,668 INFO L74 IsIncluded]: Start isIncluded. First operand 98 states. Second operand has 91 states, 55 states have (on average 1.1636363636363636) internal successors, (64), 56 states have internal predecessors, (64), 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 22:36:53,669 INFO L87 Difference]: Start difference. First operand 98 states. Second operand has 91 states, 55 states have (on average 1.1636363636363636) internal successors, (64), 56 states have internal predecessors, (64), 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 22:36:53,675 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:36:53,675 INFO L93 Difference]: Finished difference Result 98 states and 127 transitions. [2022-04-27 22:36:53,675 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 127 transitions. [2022-04-27 22:36:53,677 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:36:53,677 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:36:53,678 INFO L74 IsIncluded]: Start isIncluded. First operand has 91 states, 55 states have (on average 1.1636363636363636) internal successors, (64), 56 states have internal predecessors, (64), 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 98 states. [2022-04-27 22:36:53,678 INFO L87 Difference]: Start difference. First operand has 91 states, 55 states have (on average 1.1636363636363636) internal successors, (64), 56 states have internal predecessors, (64), 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 98 states. [2022-04-27 22:36:53,683 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:36:53,683 INFO L93 Difference]: Finished difference Result 98 states and 127 transitions. [2022-04-27 22:36:53,683 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 127 transitions. [2022-04-27 22:36:53,685 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:36:53,685 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:36:53,685 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:36:53,685 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:36:53,686 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 91 states, 55 states have (on average 1.1636363636363636) internal successors, (64), 56 states have internal predecessors, (64), 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 22:36:53,689 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 91 states to 91 states and 115 transitions. [2022-04-27 22:36:53,691 INFO L78 Accepts]: Start accepts. Automaton has 91 states and 115 transitions. Word has length 44 [2022-04-27 22:36:53,691 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:36:53,691 INFO L495 AbstractCegarLoop]: Abstraction has 91 states and 115 transitions. [2022-04-27 22:36:53,691 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 22:36:53,691 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 115 transitions. [2022-04-27 22:36:53,693 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 57 [2022-04-27 22:36:53,693 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:36:53,693 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 22:36:53,693 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-27 22:36:53,693 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:36:53,694 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:36:53,694 INFO L85 PathProgramCache]: Analyzing trace with hash 444305129, now seen corresponding path program 1 times [2022-04-27 22:36:53,694 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:36:53,694 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1182771984] [2022-04-27 22:36:53,694 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:36:53,694 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:36:53,714 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:53,773 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:36:53,774 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:53,779 INFO L290 TraceCheckUtils]: 0: Hoare triple {756#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [206] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_23| 1))) (and (< 0 |v_#StackHeapBarrier_2|) (= (select |v_#valid_15| 1) 1) (= (select |v_#valid_15| 2) 1) (= (select |v_#length_11| 2) 16) (= (select |v_#length_11| 3) 12) (= |v_#NULL.base_1| 0) (= (select |v_#valid_15| 0) 0) (= (select .cse0 0) 48) (= (select |v_#valid_15| 3) 1) (= (select .cse0 1) 0) (= 2 (select |v_#length_11| 1)) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_23|, #StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_11|, #valid=|v_#valid_15|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #valid=|v_#valid_15|, #memory_int=|v_#memory_int_23|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_11|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {714#true} is VALID [2022-04-27 22:36:53,779 INFO L290 TraceCheckUtils]: 1: Hoare triple {714#true} [209] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:53,779 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {714#true} {714#true} [305] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:53,787 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 5 [2022-04-27 22:36:53,794 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:53,823 INFO L290 TraceCheckUtils]: 0: Hoare triple {757#(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|))} [211] nondet_treeENTRY-->nondet_treeFINAL: Formula: (and (= 0 |v_nondet_tree_#res.base_1|) (= |v_nondet_tree_#res.offset_1| 0) (not (= (mod |v_nondet_tree_#t~nondet5_2| 256) 0))) InVars {nondet_tree_#t~nondet5=|v_nondet_tree_#t~nondet5_2|} OutVars{nondet_tree_#res.base=|v_nondet_tree_#res.base_1|, nondet_tree_#res.offset=|v_nondet_tree_#res.offset_1|} AuxVars[] AssignedVars[nondet_tree_#t~nondet5, nondet_tree_#res.base, nondet_tree_#res.offset] {758#(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 22:36:53,823 INFO L290 TraceCheckUtils]: 1: Hoare triple {758#(and (<= |nondet_tree_#res.offset| 0) (<= 0 |nondet_tree_#res.offset|) (<= |nondet_tree_#res.base| 0) (<= 0 |nondet_tree_#res.base|))} [215] nondet_treeFINAL-->nondet_treeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {758#(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 22:36:53,824 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {758#(and (<= |nondet_tree_#res.offset| 0) (<= 0 |nondet_tree_#res.offset|) (<= |nondet_tree_#res.base| 0) (<= 0 |nondet_tree_#res.base|))} {714#true} [306] nondet_treeEXIT-->L110: AOR: Formula: (and (= |v_nondet_tree_#res.offsetOutParam_1| |v_main_#t~ret45.offset_4|) (= |v_nondet_tree_#res.baseOutParam_1| |v_main_#t~ret45.base_4|)) InVars {nondet_tree_#res.base=|v_nondet_tree_#res.baseOutParam_1|, nondet_tree_#res.offset=|v_nondet_tree_#res.offsetOutParam_1|} OutVars{main_#t~ret45.base=|v_main_#t~ret45.base_4|, main_#t~ret45.offset=|v_main_#t~ret45.offset_4|} AuxVars[] AssignedVars[main_#t~ret45.offset, main_#t~ret45.base, nondet_tree_#res.base, nondet_tree_#res.offset] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {722#(and (= |main_#t~ret45.offset| 0) (= |main_#t~ret45.base| 0))} is VALID [2022-04-27 22:36:53,824 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-27 22:36:53,835 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:53,841 INFO L290 TraceCheckUtils]: 0: Hoare triple {714#true} [221] minENTRY-->L37: Formula: (and (= |v_min_#in~n.base_1| v_min_~n.base_3) (= v_min_~n.offset_3 |v_min_#in~n.offset_1|)) InVars {min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} OutVars{min_~n.offset=v_min_~n.offset_3, min_~n.base=v_min_~n.base_3, min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} AuxVars[] AssignedVars[min_~n.offset, min_~n.base] {714#true} is VALID [2022-04-27 22:36:53,842 INFO L290 TraceCheckUtils]: 1: Hoare triple {714#true} [225] L37-->minFINAL: Formula: (and (= 2147483647 |v_min_#res_4|) (= v_min_~n.base_4 0) (= v_min_~n.offset_4 0)) InVars {min_~n.offset=v_min_~n.offset_4, min_~n.base=v_min_~n.base_4} OutVars{min_~n.offset=v_min_~n.offset_4, min_~n.base=v_min_~n.base_4, min_#res=|v_min_#res_4|} AuxVars[] AssignedVars[min_#res] {714#true} is VALID [2022-04-27 22:36:53,842 INFO L290 TraceCheckUtils]: 2: Hoare triple {714#true} [229] minFINAL-->minEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:53,842 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {714#true} {724#(and (= task_~t.offset 0) (= task_~t.base 0))} [312] minEXIT-->L86-1: AOR: Formula: (= |v_min_#resOutParam_3| |v_task_#t~ret32_4|) InVars {min_#res=|v_min_#resOutParam_3|} OutVars{task_#t~ret32=|v_task_#t~ret32_4|} AuxVars[] AssignedVars[task_#t~ret32, min_#res] LVA: Formula: (and (= v_task_~t.base_7 |v_min_#in~n.baseInParam_3|) (= |v_min_#in~n.offsetInParam_3| v_task_~t.offset_7)) InVars {task_~t.offset=v_task_~t.offset_7, task_~t.base=v_task_~t.base_7} OutVars{min_#in~n.base=|v_min_#in~n.baseInParam_3|, min_#in~n.offset=|v_min_#in~n.offsetInParam_3|} AuxVars[] AssignedVars[task_~t.offset, min_#in~n.offset, task_~t.base, min_#in~n.base] {724#(and (= task_~t.offset 0) (= task_~t.base 0))} is VALID [2022-04-27 22:36:53,843 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-27 22:36:53,856 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:53,926 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-04-27 22:36:53,928 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:53,932 INFO L290 TraceCheckUtils]: 0: Hoare triple {714#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {714#true} is VALID [2022-04-27 22:36:53,933 INFO L290 TraceCheckUtils]: 1: Hoare triple {714#true} [232] L81-->sizeFINAL: Formula: (and (= v_size_~t.base_2 0) (= |v_size_#res_1| 0) (= v_size_~t.offset_2 0)) InVars {size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2} OutVars{size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2, size_#res=|v_size_#res_1|} AuxVars[] AssignedVars[size_#res] {714#true} is VALID [2022-04-27 22:36:53,933 INFO L290 TraceCheckUtils]: 2: Hoare triple {714#true} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:53,935 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {714#true} {760#(or (not (= |size_#in~t.base| 0)) (and (not (= size_~t.offset 0)) (= |size_#in~t.offset| size_~t.offset)))} [315] sizeEXIT-->L82-1: AOR: Formula: (= |v_size_#t~ret29_5| |v_size_#resOutParam_3|) InVars {size_#res=|v_size_#resOutParam_3|} OutVars{size_#t~ret29=|v_size_#t~ret29_5|} AuxVars[] AssignedVars[size_#t~ret29, size_#res] LVA: Formula: (and (= |v_size_#in~t.offsetInParam_3| |v_size_#t~mem28.offset_4|) (= |v_size_#in~t.baseInParam_3| |v_size_#t~mem28.base_4|)) InVars {size_#t~mem28.offset=|v_size_#t~mem28.offset_4|, size_#t~mem28.base=|v_size_#t~mem28.base_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_3|, size_#in~t.base=|v_size_#in~t.baseInParam_3|} AuxVars[] AssignedVars[size_#in~t.offset, size_#in~t.base, size_#t~mem28.base, size_#t~mem28.offset] {760#(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 22:36:53,935 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 8 [2022-04-27 22:36:53,939 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:53,949 INFO L290 TraceCheckUtils]: 0: Hoare triple {714#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {714#true} is VALID [2022-04-27 22:36:53,949 INFO L290 TraceCheckUtils]: 1: Hoare triple {714#true} [232] L81-->sizeFINAL: Formula: (and (= v_size_~t.base_2 0) (= |v_size_#res_1| 0) (= v_size_~t.offset_2 0)) InVars {size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2} OutVars{size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2, size_#res=|v_size_#res_1|} AuxVars[] AssignedVars[size_#res] {714#true} is VALID [2022-04-27 22:36:53,949 INFO L290 TraceCheckUtils]: 2: Hoare triple {714#true} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:53,950 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {714#true} {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} [316] sizeEXIT-->L82-3: AOR: Formula: (= |v_size_#t~ret31_4| |v_size_#resOutParam_4|) InVars {size_#res=|v_size_#resOutParam_4|} OutVars{size_#t~ret31=|v_size_#t~ret31_4|} AuxVars[] AssignedVars[size_#res, size_#t~ret31] LVA: Formula: (and (= |v_size_#in~t.offsetInParam_4| |v_size_#t~mem30.offset_4|) (= |v_size_#t~mem30.base_4| |v_size_#in~t.baseInParam_4|)) InVars {size_#t~mem30.base=|v_size_#t~mem30.base_4|, size_#t~mem30.offset=|v_size_#t~mem30.offset_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_4|, size_#in~t.base=|v_size_#in~t.baseInParam_4|} AuxVars[] AssignedVars[size_#in~t.offset, size_#t~mem30.base, size_#in~t.base, size_#t~mem30.offset] {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-27 22:36:53,951 INFO L290 TraceCheckUtils]: 0: Hoare triple {714#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {759#(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 22:36:53,951 INFO L290 TraceCheckUtils]: 1: Hoare triple {759#(and (or (= size_~t.offset 0) (= |size_#in~t.offset| size_~t.offset)) (= |size_#in~t.base| size_~t.base))} [233] L81-->L82: Formula: (let ((.cse0 (+ v_size_~t.offset_3 4))) (and (= (select (select |v_#memory_$Pointer$.base_31| v_size_~t.base_3) .cse0) |v_size_#t~mem28.base_1|) (or (not (= v_size_~t.base_3 0)) (not (= v_size_~t.offset_3 0))) (= |v_size_#t~mem28.offset_1| (select (select |v_#memory_$Pointer$.offset_31| v_size_~t.base_3) .cse0)))) InVars {size_~t.base=v_size_~t.base_3, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_31|, size_~t.offset=v_size_~t.offset_3, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_31|} OutVars{size_~t.base=v_size_~t.base_3, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_31|, size_#t~mem28.base=|v_size_#t~mem28.base_1|, size_~t.offset=v_size_~t.offset_3, size_#t~mem28.offset=|v_size_#t~mem28.offset_1|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_31|} AuxVars[] AssignedVars[size_#t~mem28.base, size_#t~mem28.offset] {760#(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 22:36:53,951 INFO L272 TraceCheckUtils]: 2: Hoare triple {760#(or (not (= |size_#in~t.base| 0)) (and (not (= size_~t.offset 0)) (= |size_#in~t.offset| size_~t.offset)))} [238] L82-->sizeENTRY: Formula: (and (= |v_size_#in~t.offsetInParam_3| |v_size_#t~mem28.offset_4|) (= |v_size_#in~t.baseInParam_3| |v_size_#t~mem28.base_4|)) InVars {size_#t~mem28.offset=|v_size_#t~mem28.offset_4|, size_#t~mem28.base=|v_size_#t~mem28.base_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_3|, size_#in~t.base=|v_size_#in~t.baseInParam_3|} AuxVars[] AssignedVars[size_#in~t.offset, size_#in~t.base, size_#t~mem28.base, size_#t~mem28.offset] {714#true} is VALID [2022-04-27 22:36:53,952 INFO L290 TraceCheckUtils]: 3: Hoare triple {714#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {714#true} is VALID [2022-04-27 22:36:53,952 INFO L290 TraceCheckUtils]: 4: Hoare triple {714#true} [232] L81-->sizeFINAL: Formula: (and (= v_size_~t.base_2 0) (= |v_size_#res_1| 0) (= v_size_~t.offset_2 0)) InVars {size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2} OutVars{size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2, size_#res=|v_size_#res_1|} AuxVars[] AssignedVars[size_#res] {714#true} is VALID [2022-04-27 22:36:53,952 INFO L290 TraceCheckUtils]: 5: Hoare triple {714#true} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:53,953 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {714#true} {760#(or (not (= |size_#in~t.base| 0)) (and (not (= size_~t.offset 0)) (= |size_#in~t.offset| size_~t.offset)))} [315] sizeEXIT-->L82-1: AOR: Formula: (= |v_size_#t~ret29_5| |v_size_#resOutParam_3|) InVars {size_#res=|v_size_#resOutParam_3|} OutVars{size_#t~ret29=|v_size_#t~ret29_5|} AuxVars[] AssignedVars[size_#t~ret29, size_#res] LVA: Formula: (and (= |v_size_#in~t.offsetInParam_3| |v_size_#t~mem28.offset_4|) (= |v_size_#in~t.baseInParam_3| |v_size_#t~mem28.base_4|)) InVars {size_#t~mem28.offset=|v_size_#t~mem28.offset_4|, size_#t~mem28.base=|v_size_#t~mem28.base_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_3|, size_#in~t.base=|v_size_#in~t.baseInParam_3|} AuxVars[] AssignedVars[size_#in~t.offset, size_#in~t.base, size_#t~mem28.base, size_#t~mem28.offset] {760#(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 22:36:53,953 INFO L290 TraceCheckUtils]: 7: Hoare triple {760#(or (not (= |size_#in~t.base| 0)) (and (not (= size_~t.offset 0)) (= |size_#in~t.offset| size_~t.offset)))} [244] L82-1-->L82-2: Formula: (let ((.cse0 (+ v_size_~t.offset_4 12))) (and (= |v_size_#t~mem30.offset_1| (select (select |v_#memory_$Pointer$.offset_32| v_size_~t.base_4) .cse0)) (<= 0 (+ |v_size_#t~ret29_2| 2147483648)) (<= |v_size_#t~ret29_2| 2147483647) (= |v_size_#t~mem30.base_1| (select (select |v_#memory_$Pointer$.base_32| v_size_~t.base_4) .cse0)))) InVars {size_~t.base=v_size_~t.base_4, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_32|, size_~t.offset=v_size_~t.offset_4, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_32|, size_#t~ret29=|v_size_#t~ret29_2|} OutVars{size_~t.base=v_size_~t.base_4, size_#t~mem30.base=|v_size_#t~mem30.base_1|, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_32|, size_#t~ret29=|v_size_#t~ret29_2|, size_#t~mem30.offset=|v_size_#t~mem30.offset_1|, size_~t.offset=v_size_~t.offset_4, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_32|} AuxVars[] AssignedVars[size_#t~mem30.base, size_#t~mem30.offset] {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-27 22:36:53,954 INFO L272 TraceCheckUtils]: 8: Hoare triple {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} [255] L82-2-->sizeENTRY: Formula: (and (= |v_size_#in~t.offsetInParam_4| |v_size_#t~mem30.offset_4|) (= |v_size_#t~mem30.base_4| |v_size_#in~t.baseInParam_4|)) InVars {size_#t~mem30.base=|v_size_#t~mem30.base_4|, size_#t~mem30.offset=|v_size_#t~mem30.offset_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_4|, size_#in~t.base=|v_size_#in~t.baseInParam_4|} AuxVars[] AssignedVars[size_#in~t.offset, size_#t~mem30.base, size_#in~t.base, size_#t~mem30.offset] {714#true} is VALID [2022-04-27 22:36:53,954 INFO L290 TraceCheckUtils]: 9: Hoare triple {714#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {714#true} is VALID [2022-04-27 22:36:53,954 INFO L290 TraceCheckUtils]: 10: Hoare triple {714#true} [232] L81-->sizeFINAL: Formula: (and (= v_size_~t.base_2 0) (= |v_size_#res_1| 0) (= v_size_~t.offset_2 0)) InVars {size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2} OutVars{size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2, size_#res=|v_size_#res_1|} AuxVars[] AssignedVars[size_#res] {714#true} is VALID [2022-04-27 22:36:53,954 INFO L290 TraceCheckUtils]: 11: Hoare triple {714#true} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:53,955 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {714#true} {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} [316] sizeEXIT-->L82-3: AOR: Formula: (= |v_size_#t~ret31_4| |v_size_#resOutParam_4|) InVars {size_#res=|v_size_#resOutParam_4|} OutVars{size_#t~ret31=|v_size_#t~ret31_4|} AuxVars[] AssignedVars[size_#res, size_#t~ret31] LVA: Formula: (and (= |v_size_#in~t.offsetInParam_4| |v_size_#t~mem30.offset_4|) (= |v_size_#t~mem30.base_4| |v_size_#in~t.baseInParam_4|)) InVars {size_#t~mem30.base=|v_size_#t~mem30.base_4|, size_#t~mem30.offset=|v_size_#t~mem30.offset_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_4|, size_#in~t.base=|v_size_#in~t.baseInParam_4|} AuxVars[] AssignedVars[size_#in~t.offset, size_#t~mem30.base, size_#in~t.base, size_#t~mem30.offset] {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-27 22:36:53,956 INFO L290 TraceCheckUtils]: 13: Hoare triple {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} [254] L82-3-->sizeFINAL: Formula: (and (<= |v_size_#t~ret31_3| 2147483647) (<= 0 (+ |v_size_#t~ret31_3| 2147483648)) (= (+ |v_size_#t~ret31_3| |v_size_#t~ret29_4| 1) |v_size_#res_2|)) InVars {size_#t~ret29=|v_size_#t~ret29_4|, size_#t~ret31=|v_size_#t~ret31_3|} OutVars{size_#t~mem30.base=|v_size_#t~mem30.base_3|, size_#t~mem30.offset=|v_size_#t~mem30.offset_3|, size_#t~mem28.offset=|v_size_#t~mem28.offset_3|, size_#res=|v_size_#res_2|, size_#t~mem28.base=|v_size_#t~mem28.base_3|} AuxVars[] AssignedVars[size_#t~mem30.base, size_#t~mem28.base, size_#t~ret29, size_#t~mem30.offset, size_#t~mem28.offset, size_#res, size_#t~ret31] {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-27 22:36:53,957 INFO L290 TraceCheckUtils]: 14: Hoare triple {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-27 22:36:53,957 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} {724#(and (= task_~t.offset 0) (= task_~t.base 0))} [313] sizeEXIT-->L89-1: AOR: Formula: (= |v_task_#t~ret33_4| |v_size_#resOutParam_1|) InVars {size_#res=|v_size_#resOutParam_1|} OutVars{task_#t~ret33=|v_task_#t~ret33_4|} AuxVars[] AssignedVars[task_#t~ret33, size_#res] LVA: Formula: (and (= v_task_~t.base_8 |v_size_#in~t.baseInParam_1|) (= |v_size_#in~t.offsetInParam_1| v_task_~t.offset_8)) InVars {task_~t.offset=v_task_~t.offset_8, task_~t.base=v_task_~t.base_8} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_1|, size_#in~t.base=|v_size_#in~t.baseInParam_1|} AuxVars[] AssignedVars[task_~t.offset, size_#in~t.offset, size_#in~t.base, task_~t.base] {715#false} is VALID [2022-04-27 22:36:53,958 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 35 [2022-04-27 22:36:53,959 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:53,961 INFO L290 TraceCheckUtils]: 0: Hoare triple {714#true} [236] assume_cycle_if_notENTRY-->L9: Formula: (= v_assume_cycle_if_not_~cond_3 |v_assume_cycle_if_not_#in~cond_1|) InVars {assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~cond_1|} OutVars{assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~cond_1|, assume_cycle_if_not_~cond=v_assume_cycle_if_not_~cond_3} AuxVars[] AssignedVars[assume_cycle_if_not_~cond] {714#true} is VALID [2022-04-27 22:36:53,961 INFO L290 TraceCheckUtils]: 1: Hoare triple {714#true} [243] L9-->L9-5: Formula: (not (= v_assume_cycle_if_not_~cond_1 0)) InVars {assume_cycle_if_not_~cond=v_assume_cycle_if_not_~cond_1} OutVars{assume_cycle_if_not_~cond=v_assume_cycle_if_not_~cond_1} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:53,962 INFO L290 TraceCheckUtils]: 2: Hoare triple {714#true} [252] L9-5-->assume_cycle_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:53,962 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {714#true} {715#false} [317] assume_cycle_if_notEXIT-->L90-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_cycle_if_not_#in~condInParam_1| (ite (not (= v_task_~n~1_9 0)) 1 0)) InVars {task_~n~1=v_task_~n~1_9} OutVars{assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[task_~n~1, assume_cycle_if_not_#in~cond] {715#false} is VALID [2022-04-27 22:36:53,968 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 41 [2022-04-27 22:36:53,970 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:53,972 INFO L290 TraceCheckUtils]: 0: Hoare triple {770#(= |#memory_int| |old(#memory_int)|)} [248] #Ultimate.meminitENTRY-->#Ultimate.meminitFINAL: Formula: (= (store |v_#memory_int_12| |v_#Ultimate.meminit_#ptr.base_1| ((as const (Array Int Int)) 0)) |v_#memory_int_11|) InVars {#memory_int=|v_#memory_int_12|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} OutVars{#memory_int=|v_#memory_int_11|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} AuxVars[] AssignedVars[#memory_int] {714#true} is VALID [2022-04-27 22:36:53,972 INFO L290 TraceCheckUtils]: 1: Hoare triple {714#true} [259] #Ultimate.meminitFINAL-->#Ultimate.meminitEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:53,972 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {714#true} {715#false} [318] #Ultimate.meminitEXIT-->L91-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (and (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_task_#t~malloc34.offset_4|) (= v_task_~n~1_10 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_task_#t~malloc34.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= (* v_task_~n~1_10 4) |v_#Ultimate.meminit_#productInParam_1|)) InVars {task_#t~malloc34.base=|v_task_#t~malloc34.base_4|, task_~n~1=v_task_~n~1_10, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[task_~n~1, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, task_#t~malloc34.offset, task_#t~malloc34.base, #Ultimate.meminit_#product, #Ultimate.meminit_#ptr.base, #Ultimate.meminit_#ptr.offset] {715#false} is VALID [2022-04-27 22:36:53,982 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 46 [2022-04-27 22:36:53,983 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:53,985 INFO L290 TraceCheckUtils]: 0: Hoare triple {771#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} [262] tree_inorderENTRY-->L70: Formula: (and (= v_tree_inorder_~i_1 |v_tree_inorder_#in~i_1|) (= v_tree_inorder_~a.base_1 |v_tree_inorder_#in~a.base_1|) (= |v_tree_inorder_#in~t.offset_1| v_tree_inorder_~t.offset_1) (= |v_tree_inorder_#in~a.offset_1| v_tree_inorder_~a.offset_1) (= v_tree_inorder_~t.base_1 |v_tree_inorder_#in~t.base_1|)) InVars {tree_inorder_#in~i=|v_tree_inorder_#in~i_1|, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offset_1|, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.base_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offset_1|, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.base_1|} OutVars{tree_inorder_#in~i=|v_tree_inorder_#in~i_1|, tree_inorder_~a.base=v_tree_inorder_~a.base_1, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offset_1|, tree_inorder_~t.offset=v_tree_inorder_~t.offset_1, tree_inorder_~a.offset=v_tree_inorder_~a.offset_1, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.base_1|, tree_inorder_~t.base=v_tree_inorder_~t.base_1, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.base_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offset_1|, tree_inorder_~i=v_tree_inorder_~i_1} AuxVars[] AssignedVars[tree_inorder_~a.base, tree_inorder_~t.offset, tree_inorder_~a.offset, tree_inorder_~t.base, tree_inorder_~i] {714#true} is VALID [2022-04-27 22:36:53,986 INFO L290 TraceCheckUtils]: 1: Hoare triple {714#true} [265] L70-->tree_inorderFINAL: Formula: (and (= v_tree_inorder_~i_2 |v_tree_inorder_#res_1|) (= v_tree_inorder_~t.base_2 0) (= v_tree_inorder_~t.offset_2 0)) InVars {tree_inorder_~t.base=v_tree_inorder_~t.base_2, tree_inorder_~t.offset=v_tree_inorder_~t.offset_2, tree_inorder_~i=v_tree_inorder_~i_2} OutVars{tree_inorder_~t.base=v_tree_inorder_~t.base_2, tree_inorder_#res=|v_tree_inorder_#res_1|, tree_inorder_~t.offset=v_tree_inorder_~t.offset_2, tree_inorder_~i=v_tree_inorder_~i_2} AuxVars[] AssignedVars[tree_inorder_#res] {714#true} is VALID [2022-04-27 22:36:53,986 INFO L290 TraceCheckUtils]: 2: Hoare triple {714#true} [270] tree_inorderFINAL-->tree_inorderEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:53,986 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {714#true} {715#false} [320] tree_inorderEXIT-->L92-1: AOR: Formula: (= |v_tree_inorder_#resOutParam_1| |v_task_#t~ret35_4|) InVars {tree_inorder_#res=|v_tree_inorder_#resOutParam_1|} OutVars{task_#t~ret35=|v_task_#t~ret35_4|} AuxVars[] AssignedVars[task_#t~ret35, tree_inorder_#res] LVA: Formula: (and (= v_task_~t.base_9 |v_tree_inorder_#in~t.baseInParam_1|) (= |v_tree_inorder_#in~a.baseInParam_1| v_task_~x~0.base_6) (= |v_tree_inorder_#in~t.offsetInParam_1| v_task_~t.offset_9) (= |v_tree_inorder_#in~a.offsetInParam_1| v_task_~x~0.offset_6) (= v_task_~n~1_11 |v_tree_inorder_#in~iInParam_1|)) InVars {task_~t.offset=v_task_~t.offset_9, task_~x~0.base=v_task_~x~0.base_6, task_~n~1=v_task_~n~1_11, task_~t.base=v_task_~t.base_9, task_~x~0.offset=v_task_~x~0.offset_6} OutVars{tree_inorder_#in~i=|v_tree_inorder_#in~iInParam_1|, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offsetInParam_1|, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.baseInParam_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offsetInParam_1|, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.baseInParam_1|} AuxVars[] AssignedVars[tree_inorder_#in~i, task_~t.offset, tree_inorder_#in~a.offset, task_~x~0.base, task_~n~1, tree_inorder_#in~a.base, tree_inorder_#in~t.base, tree_inorder_#in~t.offset, task_~t.base, task_~x~0.offset] {715#false} is VALID [2022-04-27 22:36:53,987 INFO L272 TraceCheckUtils]: 0: Hoare triple {714#true} [204] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {756#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:36:53,987 INFO L290 TraceCheckUtils]: 1: Hoare triple {756#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [206] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_23| 1))) (and (< 0 |v_#StackHeapBarrier_2|) (= (select |v_#valid_15| 1) 1) (= (select |v_#valid_15| 2) 1) (= (select |v_#length_11| 2) 16) (= (select |v_#length_11| 3) 12) (= |v_#NULL.base_1| 0) (= (select |v_#valid_15| 0) 0) (= (select .cse0 0) 48) (= (select |v_#valid_15| 3) 1) (= (select .cse0 1) 0) (= 2 (select |v_#length_11| 1)) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_23|, #StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_11|, #valid=|v_#valid_15|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #valid=|v_#valid_15|, #memory_int=|v_#memory_int_23|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_11|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {714#true} is VALID [2022-04-27 22:36:53,987 INFO L290 TraceCheckUtils]: 2: Hoare triple {714#true} [209] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:53,987 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {714#true} {714#true} [305] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:53,987 INFO L272 TraceCheckUtils]: 4: Hoare triple {714#true} [205] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:53,989 INFO L272 TraceCheckUtils]: 5: Hoare triple {714#true} [208] mainENTRY-->nondet_treeENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {757#(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 22:36:53,999 INFO L290 TraceCheckUtils]: 6: Hoare triple {757#(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|))} [211] nondet_treeENTRY-->nondet_treeFINAL: Formula: (and (= 0 |v_nondet_tree_#res.base_1|) (= |v_nondet_tree_#res.offset_1| 0) (not (= (mod |v_nondet_tree_#t~nondet5_2| 256) 0))) InVars {nondet_tree_#t~nondet5=|v_nondet_tree_#t~nondet5_2|} OutVars{nondet_tree_#res.base=|v_nondet_tree_#res.base_1|, nondet_tree_#res.offset=|v_nondet_tree_#res.offset_1|} AuxVars[] AssignedVars[nondet_tree_#t~nondet5, nondet_tree_#res.base, nondet_tree_#res.offset] {758#(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 22:36:54,000 INFO L290 TraceCheckUtils]: 7: Hoare triple {758#(and (<= |nondet_tree_#res.offset| 0) (<= 0 |nondet_tree_#res.offset|) (<= |nondet_tree_#res.base| 0) (<= 0 |nondet_tree_#res.base|))} [215] nondet_treeFINAL-->nondet_treeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {758#(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 22:36:54,001 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {758#(and (<= |nondet_tree_#res.offset| 0) (<= 0 |nondet_tree_#res.offset|) (<= |nondet_tree_#res.base| 0) (<= 0 |nondet_tree_#res.base|))} {714#true} [306] nondet_treeEXIT-->L110: AOR: Formula: (and (= |v_nondet_tree_#res.offsetOutParam_1| |v_main_#t~ret45.offset_4|) (= |v_nondet_tree_#res.baseOutParam_1| |v_main_#t~ret45.base_4|)) InVars {nondet_tree_#res.base=|v_nondet_tree_#res.baseOutParam_1|, nondet_tree_#res.offset=|v_nondet_tree_#res.offsetOutParam_1|} OutVars{main_#t~ret45.base=|v_main_#t~ret45.base_4|, main_#t~ret45.offset=|v_main_#t~ret45.offset_4|} AuxVars[] AssignedVars[main_#t~ret45.offset, main_#t~ret45.base, nondet_tree_#res.base, nondet_tree_#res.offset] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {722#(and (= |main_#t~ret45.offset| 0) (= |main_#t~ret45.base| 0))} is VALID [2022-04-27 22:36:54,001 INFO L272 TraceCheckUtils]: 9: Hoare triple {722#(and (= |main_#t~ret45.offset| 0) (= |main_#t~ret45.base| 0))} [210] L110-->taskENTRY: Formula: (and (= |v_main_#t~ret45.base_5| |v_task_#in~t.baseInParam_1|) (= |v_main_#t~ret45.offset_5| |v_task_#in~t.offsetInParam_1|)) InVars {main_#t~ret45.base=|v_main_#t~ret45.base_5|, main_#t~ret45.offset=|v_main_#t~ret45.offset_5|} OutVars{task_#in~t.base=|v_task_#in~t.baseInParam_1|, task_#in~t.offset=|v_task_#in~t.offsetInParam_1|} AuxVars[] AssignedVars[task_#in~t.offset, main_#t~ret45.offset, main_#t~ret45.base, task_#in~t.base] {723#(and (= |task_#in~t.base| 0) (= |task_#in~t.offset| 0))} is VALID [2022-04-27 22:36:54,002 INFO L290 TraceCheckUtils]: 10: Hoare triple {723#(and (= |task_#in~t.base| 0) (= |task_#in~t.offset| 0))} [214] taskENTRY-->L86: Formula: (and (= v_task_~t.base_4 |v_task_#in~t.base_1|) (= |v_task_#in~t.offset_1| v_task_~t.offset_4)) InVars {task_#in~t.base=|v_task_#in~t.base_1|, task_#in~t.offset=|v_task_#in~t.offset_1|} OutVars{task_~t.offset=v_task_~t.offset_4, task_#in~t.base=|v_task_#in~t.base_1|, task_#in~t.offset=|v_task_#in~t.offset_1|, task_~t.base=v_task_~t.base_4} AuxVars[] AssignedVars[task_~t.offset, task_~t.base] {724#(and (= task_~t.offset 0) (= task_~t.base 0))} is VALID [2022-04-27 22:36:54,002 INFO L272 TraceCheckUtils]: 11: Hoare triple {724#(and (= task_~t.offset 0) (= task_~t.base 0))} [218] L86-->minENTRY: Formula: (and (= v_task_~t.base_7 |v_min_#in~n.baseInParam_3|) (= |v_min_#in~n.offsetInParam_3| v_task_~t.offset_7)) InVars {task_~t.offset=v_task_~t.offset_7, task_~t.base=v_task_~t.base_7} OutVars{min_#in~n.base=|v_min_#in~n.baseInParam_3|, min_#in~n.offset=|v_min_#in~n.offsetInParam_3|} AuxVars[] AssignedVars[task_~t.offset, min_#in~n.offset, task_~t.base, min_#in~n.base] {714#true} is VALID [2022-04-27 22:36:54,002 INFO L290 TraceCheckUtils]: 12: Hoare triple {714#true} [221] minENTRY-->L37: Formula: (and (= |v_min_#in~n.base_1| v_min_~n.base_3) (= v_min_~n.offset_3 |v_min_#in~n.offset_1|)) InVars {min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} OutVars{min_~n.offset=v_min_~n.offset_3, min_~n.base=v_min_~n.base_3, min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} AuxVars[] AssignedVars[min_~n.offset, min_~n.base] {714#true} is VALID [2022-04-27 22:36:54,002 INFO L290 TraceCheckUtils]: 13: Hoare triple {714#true} [225] L37-->minFINAL: Formula: (and (= 2147483647 |v_min_#res_4|) (= v_min_~n.base_4 0) (= v_min_~n.offset_4 0)) InVars {min_~n.offset=v_min_~n.offset_4, min_~n.base=v_min_~n.base_4} OutVars{min_~n.offset=v_min_~n.offset_4, min_~n.base=v_min_~n.base_4, min_#res=|v_min_#res_4|} AuxVars[] AssignedVars[min_#res] {714#true} is VALID [2022-04-27 22:36:54,002 INFO L290 TraceCheckUtils]: 14: Hoare triple {714#true} [229] minFINAL-->minEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:54,003 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {714#true} {724#(and (= task_~t.offset 0) (= task_~t.base 0))} [312] minEXIT-->L86-1: AOR: Formula: (= |v_min_#resOutParam_3| |v_task_#t~ret32_4|) InVars {min_#res=|v_min_#resOutParam_3|} OutVars{task_#t~ret32=|v_task_#t~ret32_4|} AuxVars[] AssignedVars[task_#t~ret32, min_#res] LVA: Formula: (and (= v_task_~t.base_7 |v_min_#in~n.baseInParam_3|) (= |v_min_#in~n.offsetInParam_3| v_task_~t.offset_7)) InVars {task_~t.offset=v_task_~t.offset_7, task_~t.base=v_task_~t.base_7} OutVars{min_#in~n.base=|v_min_#in~n.baseInParam_3|, min_#in~n.offset=|v_min_#in~n.offsetInParam_3|} AuxVars[] AssignedVars[task_~t.offset, min_#in~n.offset, task_~t.base, min_#in~n.base] {724#(and (= task_~t.offset 0) (= task_~t.base 0))} is VALID [2022-04-27 22:36:54,003 INFO L290 TraceCheckUtils]: 16: Hoare triple {724#(and (= task_~t.offset 0) (= task_~t.base 0))} [220] L86-1-->L89: Formula: (and (< |v_#StackHeapBarrier_5| |v_task_~#b~1.base_5|) (= |v_#length_16| (store |v_#length_17| |v_task_~#b~1.base_5| 4)) (not (= |v_task_~#b~1.base_5| 0)) (<= |v_task_#t~ret32_3| 2147483647) (= |v_task_#t~ret32_3| v_task_~a~1_3) (= (select |v_#valid_27| |v_task_~#b~1.base_5|) 0) (<= 0 (+ |v_task_#t~ret32_3| 2147483648)) (= |v_task_~#b~1.offset_5| 0) (= (store |v_#valid_27| |v_task_~#b~1.base_5| 1) |v_#valid_26|)) InVars {task_#t~ret32=|v_task_#t~ret32_3|, #StackHeapBarrier=|v_#StackHeapBarrier_5|, #length=|v_#length_17|, #valid=|v_#valid_27|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_5|, task_~#b~1.offset=|v_task_~#b~1.offset_5|, #valid=|v_#valid_26|, task_~#b~1.base=|v_task_~#b~1.base_5|, #length=|v_#length_16|, task_~a~1=v_task_~a~1_3} AuxVars[] AssignedVars[task_#t~ret32, task_~#b~1.offset, #valid, task_~#b~1.base, #length, task_~a~1] {724#(and (= task_~t.offset 0) (= task_~t.base 0))} is VALID [2022-04-27 22:36:54,004 INFO L272 TraceCheckUtils]: 17: Hoare triple {724#(and (= task_~t.offset 0) (= task_~t.base 0))} [224] L89-->sizeENTRY: Formula: (and (= v_task_~t.base_8 |v_size_#in~t.baseInParam_1|) (= |v_size_#in~t.offsetInParam_1| v_task_~t.offset_8)) InVars {task_~t.offset=v_task_~t.offset_8, task_~t.base=v_task_~t.base_8} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_1|, size_#in~t.base=|v_size_#in~t.baseInParam_1|} AuxVars[] AssignedVars[task_~t.offset, size_#in~t.offset, size_#in~t.base, task_~t.base] {714#true} is VALID [2022-04-27 22:36:54,004 INFO L290 TraceCheckUtils]: 18: Hoare triple {714#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {759#(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 22:36:54,004 INFO L290 TraceCheckUtils]: 19: Hoare triple {759#(and (or (= size_~t.offset 0) (= |size_#in~t.offset| size_~t.offset)) (= |size_#in~t.base| size_~t.base))} [233] L81-->L82: Formula: (let ((.cse0 (+ v_size_~t.offset_3 4))) (and (= (select (select |v_#memory_$Pointer$.base_31| v_size_~t.base_3) .cse0) |v_size_#t~mem28.base_1|) (or (not (= v_size_~t.base_3 0)) (not (= v_size_~t.offset_3 0))) (= |v_size_#t~mem28.offset_1| (select (select |v_#memory_$Pointer$.offset_31| v_size_~t.base_3) .cse0)))) InVars {size_~t.base=v_size_~t.base_3, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_31|, size_~t.offset=v_size_~t.offset_3, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_31|} OutVars{size_~t.base=v_size_~t.base_3, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_31|, size_#t~mem28.base=|v_size_#t~mem28.base_1|, size_~t.offset=v_size_~t.offset_3, size_#t~mem28.offset=|v_size_#t~mem28.offset_1|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_31|} AuxVars[] AssignedVars[size_#t~mem28.base, size_#t~mem28.offset] {760#(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 22:36:54,005 INFO L272 TraceCheckUtils]: 20: Hoare triple {760#(or (not (= |size_#in~t.base| 0)) (and (not (= size_~t.offset 0)) (= |size_#in~t.offset| size_~t.offset)))} [238] L82-->sizeENTRY: Formula: (and (= |v_size_#in~t.offsetInParam_3| |v_size_#t~mem28.offset_4|) (= |v_size_#in~t.baseInParam_3| |v_size_#t~mem28.base_4|)) InVars {size_#t~mem28.offset=|v_size_#t~mem28.offset_4|, size_#t~mem28.base=|v_size_#t~mem28.base_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_3|, size_#in~t.base=|v_size_#in~t.baseInParam_3|} AuxVars[] AssignedVars[size_#in~t.offset, size_#in~t.base, size_#t~mem28.base, size_#t~mem28.offset] {714#true} is VALID [2022-04-27 22:36:54,005 INFO L290 TraceCheckUtils]: 21: Hoare triple {714#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {714#true} is VALID [2022-04-27 22:36:54,005 INFO L290 TraceCheckUtils]: 22: Hoare triple {714#true} [232] L81-->sizeFINAL: Formula: (and (= v_size_~t.base_2 0) (= |v_size_#res_1| 0) (= v_size_~t.offset_2 0)) InVars {size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2} OutVars{size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2, size_#res=|v_size_#res_1|} AuxVars[] AssignedVars[size_#res] {714#true} is VALID [2022-04-27 22:36:54,005 INFO L290 TraceCheckUtils]: 23: Hoare triple {714#true} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:54,006 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {714#true} {760#(or (not (= |size_#in~t.base| 0)) (and (not (= size_~t.offset 0)) (= |size_#in~t.offset| size_~t.offset)))} [315] sizeEXIT-->L82-1: AOR: Formula: (= |v_size_#t~ret29_5| |v_size_#resOutParam_3|) InVars {size_#res=|v_size_#resOutParam_3|} OutVars{size_#t~ret29=|v_size_#t~ret29_5|} AuxVars[] AssignedVars[size_#t~ret29, size_#res] LVA: Formula: (and (= |v_size_#in~t.offsetInParam_3| |v_size_#t~mem28.offset_4|) (= |v_size_#in~t.baseInParam_3| |v_size_#t~mem28.base_4|)) InVars {size_#t~mem28.offset=|v_size_#t~mem28.offset_4|, size_#t~mem28.base=|v_size_#t~mem28.base_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_3|, size_#in~t.base=|v_size_#in~t.baseInParam_3|} AuxVars[] AssignedVars[size_#in~t.offset, size_#in~t.base, size_#t~mem28.base, size_#t~mem28.offset] {760#(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 22:36:54,006 INFO L290 TraceCheckUtils]: 25: Hoare triple {760#(or (not (= |size_#in~t.base| 0)) (and (not (= size_~t.offset 0)) (= |size_#in~t.offset| size_~t.offset)))} [244] L82-1-->L82-2: Formula: (let ((.cse0 (+ v_size_~t.offset_4 12))) (and (= |v_size_#t~mem30.offset_1| (select (select |v_#memory_$Pointer$.offset_32| v_size_~t.base_4) .cse0)) (<= 0 (+ |v_size_#t~ret29_2| 2147483648)) (<= |v_size_#t~ret29_2| 2147483647) (= |v_size_#t~mem30.base_1| (select (select |v_#memory_$Pointer$.base_32| v_size_~t.base_4) .cse0)))) InVars {size_~t.base=v_size_~t.base_4, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_32|, size_~t.offset=v_size_~t.offset_4, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_32|, size_#t~ret29=|v_size_#t~ret29_2|} OutVars{size_~t.base=v_size_~t.base_4, size_#t~mem30.base=|v_size_#t~mem30.base_1|, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_32|, size_#t~ret29=|v_size_#t~ret29_2|, size_#t~mem30.offset=|v_size_#t~mem30.offset_1|, size_~t.offset=v_size_~t.offset_4, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_32|} AuxVars[] AssignedVars[size_#t~mem30.base, size_#t~mem30.offset] {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-27 22:36:54,006 INFO L272 TraceCheckUtils]: 26: Hoare triple {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} [255] L82-2-->sizeENTRY: Formula: (and (= |v_size_#in~t.offsetInParam_4| |v_size_#t~mem30.offset_4|) (= |v_size_#t~mem30.base_4| |v_size_#in~t.baseInParam_4|)) InVars {size_#t~mem30.base=|v_size_#t~mem30.base_4|, size_#t~mem30.offset=|v_size_#t~mem30.offset_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_4|, size_#in~t.base=|v_size_#in~t.baseInParam_4|} AuxVars[] AssignedVars[size_#in~t.offset, size_#t~mem30.base, size_#in~t.base, size_#t~mem30.offset] {714#true} is VALID [2022-04-27 22:36:54,006 INFO L290 TraceCheckUtils]: 27: Hoare triple {714#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {714#true} is VALID [2022-04-27 22:36:54,006 INFO L290 TraceCheckUtils]: 28: Hoare triple {714#true} [232] L81-->sizeFINAL: Formula: (and (= v_size_~t.base_2 0) (= |v_size_#res_1| 0) (= v_size_~t.offset_2 0)) InVars {size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2} OutVars{size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2, size_#res=|v_size_#res_1|} AuxVars[] AssignedVars[size_#res] {714#true} is VALID [2022-04-27 22:36:54,007 INFO L290 TraceCheckUtils]: 29: Hoare triple {714#true} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:54,007 INFO L284 TraceCheckUtils]: 30: Hoare quadruple {714#true} {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} [316] sizeEXIT-->L82-3: AOR: Formula: (= |v_size_#t~ret31_4| |v_size_#resOutParam_4|) InVars {size_#res=|v_size_#resOutParam_4|} OutVars{size_#t~ret31=|v_size_#t~ret31_4|} AuxVars[] AssignedVars[size_#res, size_#t~ret31] LVA: Formula: (and (= |v_size_#in~t.offsetInParam_4| |v_size_#t~mem30.offset_4|) (= |v_size_#t~mem30.base_4| |v_size_#in~t.baseInParam_4|)) InVars {size_#t~mem30.base=|v_size_#t~mem30.base_4|, size_#t~mem30.offset=|v_size_#t~mem30.offset_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_4|, size_#in~t.base=|v_size_#in~t.baseInParam_4|} AuxVars[] AssignedVars[size_#in~t.offset, size_#t~mem30.base, size_#in~t.base, size_#t~mem30.offset] {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-27 22:36:54,007 INFO L290 TraceCheckUtils]: 31: Hoare triple {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} [254] L82-3-->sizeFINAL: Formula: (and (<= |v_size_#t~ret31_3| 2147483647) (<= 0 (+ |v_size_#t~ret31_3| 2147483648)) (= (+ |v_size_#t~ret31_3| |v_size_#t~ret29_4| 1) |v_size_#res_2|)) InVars {size_#t~ret29=|v_size_#t~ret29_4|, size_#t~ret31=|v_size_#t~ret31_3|} OutVars{size_#t~mem30.base=|v_size_#t~mem30.base_3|, size_#t~mem30.offset=|v_size_#t~mem30.offset_3|, size_#t~mem28.offset=|v_size_#t~mem28.offset_3|, size_#res=|v_size_#res_2|, size_#t~mem28.base=|v_size_#t~mem28.base_3|} AuxVars[] AssignedVars[size_#t~mem30.base, size_#t~mem28.base, size_#t~ret29, size_#t~mem30.offset, size_#t~mem28.offset, size_#res, size_#t~ret31] {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-27 22:36:54,008 INFO L290 TraceCheckUtils]: 32: Hoare triple {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-27 22:36:54,008 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} {724#(and (= task_~t.offset 0) (= task_~t.base 0))} [313] sizeEXIT-->L89-1: AOR: Formula: (= |v_task_#t~ret33_4| |v_size_#resOutParam_1|) InVars {size_#res=|v_size_#resOutParam_1|} OutVars{task_#t~ret33=|v_task_#t~ret33_4|} AuxVars[] AssignedVars[task_#t~ret33, size_#res] LVA: Formula: (and (= v_task_~t.base_8 |v_size_#in~t.baseInParam_1|) (= |v_size_#in~t.offsetInParam_1| v_task_~t.offset_8)) InVars {task_~t.offset=v_task_~t.offset_8, task_~t.base=v_task_~t.base_8} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_1|, size_#in~t.base=|v_size_#in~t.baseInParam_1|} AuxVars[] AssignedVars[task_~t.offset, size_#in~t.offset, size_#in~t.base, task_~t.base] {715#false} is VALID [2022-04-27 22:36:54,008 INFO L290 TraceCheckUtils]: 34: Hoare triple {715#false} [227] L89-1-->L90: Formula: (and (<= |v_task_#t~ret33_3| 2147483647) (<= 0 (+ |v_task_#t~ret33_3| 2147483648)) (= |v_task_#t~ret33_3| v_task_~n~1_8)) InVars {task_#t~ret33=|v_task_#t~ret33_3|} OutVars{task_~n~1=v_task_~n~1_8} AuxVars[] AssignedVars[task_#t~ret33, task_~n~1] {715#false} is VALID [2022-04-27 22:36:54,009 INFO L272 TraceCheckUtils]: 35: Hoare triple {715#false} [231] L90-->assume_cycle_if_notENTRY: Formula: (= |v_assume_cycle_if_not_#in~condInParam_1| (ite (not (= v_task_~n~1_9 0)) 1 0)) InVars {task_~n~1=v_task_~n~1_9} OutVars{assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[task_~n~1, assume_cycle_if_not_#in~cond] {714#true} is VALID [2022-04-27 22:36:54,009 INFO L290 TraceCheckUtils]: 36: Hoare triple {714#true} [236] assume_cycle_if_notENTRY-->L9: Formula: (= v_assume_cycle_if_not_~cond_3 |v_assume_cycle_if_not_#in~cond_1|) InVars {assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~cond_1|} OutVars{assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~cond_1|, assume_cycle_if_not_~cond=v_assume_cycle_if_not_~cond_3} AuxVars[] AssignedVars[assume_cycle_if_not_~cond] {714#true} is VALID [2022-04-27 22:36:54,009 INFO L290 TraceCheckUtils]: 37: Hoare triple {714#true} [243] L9-->L9-5: Formula: (not (= v_assume_cycle_if_not_~cond_1 0)) InVars {assume_cycle_if_not_~cond=v_assume_cycle_if_not_~cond_1} OutVars{assume_cycle_if_not_~cond=v_assume_cycle_if_not_~cond_1} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:54,009 INFO L290 TraceCheckUtils]: 38: Hoare triple {714#true} [252] L9-5-->assume_cycle_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:54,009 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {714#true} {715#false} [317] assume_cycle_if_notEXIT-->L90-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_cycle_if_not_#in~condInParam_1| (ite (not (= v_task_~n~1_9 0)) 1 0)) InVars {task_~n~1=v_task_~n~1_9} OutVars{assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[task_~n~1, assume_cycle_if_not_#in~cond] {715#false} is VALID [2022-04-27 22:36:54,009 INFO L290 TraceCheckUtils]: 40: Hoare triple {715#false} [235] L90-1-->L91: Formula: (and (= (store |v_#length_13| |v_task_#t~malloc34.base_1| (* 4 v_task_~n~1_2)) |v_#length_12|) (< |v_task_#t~malloc34.base_1| |v_#StackHeapBarrier_3|) (= 0 |v_task_#t~malloc34.offset_1|) (= |v_#valid_16| (store |v_#valid_17| |v_task_#t~malloc34.base_1| 1)) (not (= |v_task_#t~malloc34.base_1| 0)) (= (select |v_#valid_17| |v_task_#t~malloc34.base_1|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_3|, #length=|v_#length_13|, task_~n~1=v_task_~n~1_2, #valid=|v_#valid_17|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_3|, task_~n~1=v_task_~n~1_2, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_1|, #valid=|v_#valid_16|, task_#t~malloc34.base=|v_task_#t~malloc34.base_1|, #length=|v_#length_12|} AuxVars[] AssignedVars[task_#t~malloc34.offset, #valid, task_#t~malloc34.base, #length] {715#false} is VALID [2022-04-27 22:36:54,009 INFO L272 TraceCheckUtils]: 41: Hoare triple {715#false} [241] L91-->#Ultimate.meminitENTRY: Formula: (and (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_task_#t~malloc34.offset_4|) (= v_task_~n~1_10 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_task_#t~malloc34.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= (* v_task_~n~1_10 4) |v_#Ultimate.meminit_#productInParam_1|)) InVars {task_#t~malloc34.base=|v_task_#t~malloc34.base_4|, task_~n~1=v_task_~n~1_10, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[task_~n~1, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, task_#t~malloc34.offset, task_#t~malloc34.base, #Ultimate.meminit_#product, #Ultimate.meminit_#ptr.base, #Ultimate.meminit_#ptr.offset] {770#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-04-27 22:36:54,009 INFO L290 TraceCheckUtils]: 42: Hoare triple {770#(= |#memory_int| |old(#memory_int)|)} [248] #Ultimate.meminitENTRY-->#Ultimate.meminitFINAL: Formula: (= (store |v_#memory_int_12| |v_#Ultimate.meminit_#ptr.base_1| ((as const (Array Int Int)) 0)) |v_#memory_int_11|) InVars {#memory_int=|v_#memory_int_12|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} OutVars{#memory_int=|v_#memory_int_11|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} AuxVars[] AssignedVars[#memory_int] {714#true} is VALID [2022-04-27 22:36:54,009 INFO L290 TraceCheckUtils]: 43: Hoare triple {714#true} [259] #Ultimate.meminitFINAL-->#Ultimate.meminitEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:54,010 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {714#true} {715#false} [318] #Ultimate.meminitEXIT-->L91-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (and (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_task_#t~malloc34.offset_4|) (= v_task_~n~1_10 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_task_#t~malloc34.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= (* v_task_~n~1_10 4) |v_#Ultimate.meminit_#productInParam_1|)) InVars {task_#t~malloc34.base=|v_task_#t~malloc34.base_4|, task_~n~1=v_task_~n~1_10, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[task_~n~1, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, task_#t~malloc34.offset, task_#t~malloc34.base, #Ultimate.meminit_#product, #Ultimate.meminit_#ptr.base, #Ultimate.meminit_#ptr.offset] {715#false} is VALID [2022-04-27 22:36:54,010 INFO L290 TraceCheckUtils]: 45: Hoare triple {715#false} [247] L91-1-->L92: Formula: (and (= v_task_~x~0.offset_1 |v_task_#t~malloc34.offset_3|) (= |v_task_#t~malloc34.base_3| v_task_~x~0.base_1)) InVars {task_#t~malloc34.base=|v_task_#t~malloc34.base_3|, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_3|} OutVars{task_#t~malloc34.base=|v_task_#t~malloc34.base_3|, task_~x~0.base=v_task_~x~0.base_1, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_3|, task_~x~0.offset=v_task_~x~0.offset_1} AuxVars[] AssignedVars[task_~x~0.base, task_~x~0.offset] {715#false} is VALID [2022-04-27 22:36:54,010 INFO L272 TraceCheckUtils]: 46: Hoare triple {715#false} [258] L92-->tree_inorderENTRY: Formula: (and (= v_task_~t.base_9 |v_tree_inorder_#in~t.baseInParam_1|) (= |v_tree_inorder_#in~a.baseInParam_1| v_task_~x~0.base_6) (= |v_tree_inorder_#in~t.offsetInParam_1| v_task_~t.offset_9) (= |v_tree_inorder_#in~a.offsetInParam_1| v_task_~x~0.offset_6) (= v_task_~n~1_11 |v_tree_inorder_#in~iInParam_1|)) InVars {task_~t.offset=v_task_~t.offset_9, task_~x~0.base=v_task_~x~0.base_6, task_~n~1=v_task_~n~1_11, task_~t.base=v_task_~t.base_9, task_~x~0.offset=v_task_~x~0.offset_6} OutVars{tree_inorder_#in~i=|v_tree_inorder_#in~iInParam_1|, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offsetInParam_1|, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.baseInParam_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offsetInParam_1|, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.baseInParam_1|} AuxVars[] AssignedVars[tree_inorder_#in~i, task_~t.offset, tree_inorder_#in~a.offset, task_~x~0.base, task_~n~1, tree_inorder_#in~a.base, tree_inorder_#in~t.base, tree_inorder_#in~t.offset, task_~t.base, task_~x~0.offset] {771#(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 22:36:54,010 INFO L290 TraceCheckUtils]: 47: Hoare triple {771#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} [262] tree_inorderENTRY-->L70: Formula: (and (= v_tree_inorder_~i_1 |v_tree_inorder_#in~i_1|) (= v_tree_inorder_~a.base_1 |v_tree_inorder_#in~a.base_1|) (= |v_tree_inorder_#in~t.offset_1| v_tree_inorder_~t.offset_1) (= |v_tree_inorder_#in~a.offset_1| v_tree_inorder_~a.offset_1) (= v_tree_inorder_~t.base_1 |v_tree_inorder_#in~t.base_1|)) InVars {tree_inorder_#in~i=|v_tree_inorder_#in~i_1|, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offset_1|, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.base_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offset_1|, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.base_1|} OutVars{tree_inorder_#in~i=|v_tree_inorder_#in~i_1|, tree_inorder_~a.base=v_tree_inorder_~a.base_1, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offset_1|, tree_inorder_~t.offset=v_tree_inorder_~t.offset_1, tree_inorder_~a.offset=v_tree_inorder_~a.offset_1, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.base_1|, tree_inorder_~t.base=v_tree_inorder_~t.base_1, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.base_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offset_1|, tree_inorder_~i=v_tree_inorder_~i_1} AuxVars[] AssignedVars[tree_inorder_~a.base, tree_inorder_~t.offset, tree_inorder_~a.offset, tree_inorder_~t.base, tree_inorder_~i] {714#true} is VALID [2022-04-27 22:36:54,010 INFO L290 TraceCheckUtils]: 48: Hoare triple {714#true} [265] L70-->tree_inorderFINAL: Formula: (and (= v_tree_inorder_~i_2 |v_tree_inorder_#res_1|) (= v_tree_inorder_~t.base_2 0) (= v_tree_inorder_~t.offset_2 0)) InVars {tree_inorder_~t.base=v_tree_inorder_~t.base_2, tree_inorder_~t.offset=v_tree_inorder_~t.offset_2, tree_inorder_~i=v_tree_inorder_~i_2} OutVars{tree_inorder_~t.base=v_tree_inorder_~t.base_2, tree_inorder_#res=|v_tree_inorder_#res_1|, tree_inorder_~t.offset=v_tree_inorder_~t.offset_2, tree_inorder_~i=v_tree_inorder_~i_2} AuxVars[] AssignedVars[tree_inorder_#res] {714#true} is VALID [2022-04-27 22:36:54,010 INFO L290 TraceCheckUtils]: 49: Hoare triple {714#true} [270] tree_inorderFINAL-->tree_inorderEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:54,010 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {714#true} {715#false} [320] tree_inorderEXIT-->L92-1: AOR: Formula: (= |v_tree_inorder_#resOutParam_1| |v_task_#t~ret35_4|) InVars {tree_inorder_#res=|v_tree_inorder_#resOutParam_1|} OutVars{task_#t~ret35=|v_task_#t~ret35_4|} AuxVars[] AssignedVars[task_#t~ret35, tree_inorder_#res] LVA: Formula: (and (= v_task_~t.base_9 |v_tree_inorder_#in~t.baseInParam_1|) (= |v_tree_inorder_#in~a.baseInParam_1| v_task_~x~0.base_6) (= |v_tree_inorder_#in~t.offsetInParam_1| v_task_~t.offset_9) (= |v_tree_inorder_#in~a.offsetInParam_1| v_task_~x~0.offset_6) (= v_task_~n~1_11 |v_tree_inorder_#in~iInParam_1|)) InVars {task_~t.offset=v_task_~t.offset_9, task_~x~0.base=v_task_~x~0.base_6, task_~n~1=v_task_~n~1_11, task_~t.base=v_task_~t.base_9, task_~x~0.offset=v_task_~x~0.offset_6} OutVars{tree_inorder_#in~i=|v_tree_inorder_#in~iInParam_1|, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offsetInParam_1|, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.baseInParam_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offsetInParam_1|, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.baseInParam_1|} AuxVars[] AssignedVars[tree_inorder_#in~i, task_~t.offset, tree_inorder_#in~a.offset, task_~x~0.base, task_~n~1, tree_inorder_#in~a.base, tree_inorder_#in~t.base, tree_inorder_#in~t.offset, task_~t.base, task_~x~0.offset] {715#false} is VALID [2022-04-27 22:36:54,010 INFO L290 TraceCheckUtils]: 51: Hoare triple {715#false} [261] L92-1-->L93: Formula: (and (<= 0 (+ |v_task_#t~ret35_3| 2147483648)) (= |v_task_#t~mem36_1| (select (select |v_#memory_int_28| v_task_~x~0.base_3) v_task_~x~0.offset_3)) (<= |v_task_#t~ret35_3| 2147483647)) InVars {#memory_int=|v_#memory_int_28|, task_~x~0.base=v_task_~x~0.base_3, task_#t~ret35=|v_task_#t~ret35_3|, task_~x~0.offset=v_task_~x~0.offset_3} OutVars{#memory_int=|v_#memory_int_28|, task_#t~mem36=|v_task_#t~mem36_1|, task_~x~0.base=v_task_~x~0.base_3, task_~x~0.offset=v_task_~x~0.offset_3} AuxVars[] AssignedVars[task_#t~ret35, task_#t~mem36] {715#false} is VALID [2022-04-27 22:36:54,010 INFO L272 TraceCheckUtils]: 52: Hoare triple {715#false} [264] L93-->__VERIFIER_assertENTRY: Formula: (= (ite (= |v_task_#t~mem36_4| v_task_~a~1_4) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {task_#t~mem36=|v_task_#t~mem36_4|, task_~a~1=v_task_~a~1_4} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, task_#t~mem36, task_~a~1] {715#false} is VALID [2022-04-27 22:36:54,011 INFO L290 TraceCheckUtils]: 53: Hoare triple {715#false} [269] __VERIFIER_assertENTRY-->L16: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {715#false} is VALID [2022-04-27 22:36:54,011 INFO L290 TraceCheckUtils]: 54: Hoare triple {715#false} [274] L16-->L16-1: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {715#false} is VALID [2022-04-27 22:36:54,011 INFO L290 TraceCheckUtils]: 55: Hoare triple {715#false} [280] L16-1-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {715#false} is VALID [2022-04-27 22:36:54,011 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 22:36:54,011 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:36:54,012 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1182771984] [2022-04-27 22:36:54,012 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1182771984] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:36:54,012 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1993269164] [2022-04-27 22:36:54,012 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:36:54,012 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:36:54,012 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:36:54,013 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 22:36:54,014 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 22:36:54,096 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:54,098 INFO L263 TraceCheckSpWp]: Trace formula consists of 280 conjuncts, 25 conjunts are in the unsatisfiable core [2022-04-27 22:36:54,117 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:54,122 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:36:54,485 INFO L272 TraceCheckUtils]: 0: Hoare triple {714#true} [204] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:54,485 INFO L290 TraceCheckUtils]: 1: Hoare triple {714#true} [206] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_23| 1))) (and (< 0 |v_#StackHeapBarrier_2|) (= (select |v_#valid_15| 1) 1) (= (select |v_#valid_15| 2) 1) (= (select |v_#length_11| 2) 16) (= (select |v_#length_11| 3) 12) (= |v_#NULL.base_1| 0) (= (select |v_#valid_15| 0) 0) (= (select .cse0 0) 48) (= (select |v_#valid_15| 3) 1) (= (select .cse0 1) 0) (= 2 (select |v_#length_11| 1)) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_23|, #StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_11|, #valid=|v_#valid_15|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #valid=|v_#valid_15|, #memory_int=|v_#memory_int_23|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_11|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {714#true} is VALID [2022-04-27 22:36:54,485 INFO L290 TraceCheckUtils]: 2: Hoare triple {714#true} [209] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:54,486 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {714#true} {714#true} [305] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:54,486 INFO L272 TraceCheckUtils]: 4: Hoare triple {714#true} [205] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:54,486 INFO L272 TraceCheckUtils]: 5: Hoare triple {714#true} [208] mainENTRY-->nondet_treeENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:54,486 INFO L290 TraceCheckUtils]: 6: Hoare triple {714#true} [211] nondet_treeENTRY-->nondet_treeFINAL: Formula: (and (= 0 |v_nondet_tree_#res.base_1|) (= |v_nondet_tree_#res.offset_1| 0) (not (= (mod |v_nondet_tree_#t~nondet5_2| 256) 0))) InVars {nondet_tree_#t~nondet5=|v_nondet_tree_#t~nondet5_2|} OutVars{nondet_tree_#res.base=|v_nondet_tree_#res.base_1|, nondet_tree_#res.offset=|v_nondet_tree_#res.offset_1|} AuxVars[] AssignedVars[nondet_tree_#t~nondet5, nondet_tree_#res.base, nondet_tree_#res.offset] {758#(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 22:36:54,487 INFO L290 TraceCheckUtils]: 7: Hoare triple {758#(and (<= |nondet_tree_#res.offset| 0) (<= 0 |nondet_tree_#res.offset|) (<= |nondet_tree_#res.base| 0) (<= 0 |nondet_tree_#res.base|))} [215] nondet_treeFINAL-->nondet_treeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {758#(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 22:36:54,487 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {758#(and (<= |nondet_tree_#res.offset| 0) (<= 0 |nondet_tree_#res.offset|) (<= |nondet_tree_#res.base| 0) (<= 0 |nondet_tree_#res.base|))} {714#true} [306] nondet_treeEXIT-->L110: AOR: Formula: (and (= |v_nondet_tree_#res.offsetOutParam_1| |v_main_#t~ret45.offset_4|) (= |v_nondet_tree_#res.baseOutParam_1| |v_main_#t~ret45.base_4|)) InVars {nondet_tree_#res.base=|v_nondet_tree_#res.baseOutParam_1|, nondet_tree_#res.offset=|v_nondet_tree_#res.offsetOutParam_1|} OutVars{main_#t~ret45.base=|v_main_#t~ret45.base_4|, main_#t~ret45.offset=|v_main_#t~ret45.offset_4|} AuxVars[] AssignedVars[main_#t~ret45.offset, main_#t~ret45.base, nondet_tree_#res.base, nondet_tree_#res.offset] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {722#(and (= |main_#t~ret45.offset| 0) (= |main_#t~ret45.base| 0))} is VALID [2022-04-27 22:36:54,488 INFO L272 TraceCheckUtils]: 9: Hoare triple {722#(and (= |main_#t~ret45.offset| 0) (= |main_#t~ret45.base| 0))} [210] L110-->taskENTRY: Formula: (and (= |v_main_#t~ret45.base_5| |v_task_#in~t.baseInParam_1|) (= |v_main_#t~ret45.offset_5| |v_task_#in~t.offsetInParam_1|)) InVars {main_#t~ret45.base=|v_main_#t~ret45.base_5|, main_#t~ret45.offset=|v_main_#t~ret45.offset_5|} OutVars{task_#in~t.base=|v_task_#in~t.baseInParam_1|, task_#in~t.offset=|v_task_#in~t.offsetInParam_1|} AuxVars[] AssignedVars[task_#in~t.offset, main_#t~ret45.offset, main_#t~ret45.base, task_#in~t.base] {723#(and (= |task_#in~t.base| 0) (= |task_#in~t.offset| 0))} is VALID [2022-04-27 22:36:54,488 INFO L290 TraceCheckUtils]: 10: Hoare triple {723#(and (= |task_#in~t.base| 0) (= |task_#in~t.offset| 0))} [214] taskENTRY-->L86: Formula: (and (= v_task_~t.base_4 |v_task_#in~t.base_1|) (= |v_task_#in~t.offset_1| v_task_~t.offset_4)) InVars {task_#in~t.base=|v_task_#in~t.base_1|, task_#in~t.offset=|v_task_#in~t.offset_1|} OutVars{task_~t.offset=v_task_~t.offset_4, task_#in~t.base=|v_task_#in~t.base_1|, task_#in~t.offset=|v_task_#in~t.offset_1|, task_~t.base=v_task_~t.base_4} AuxVars[] AssignedVars[task_~t.offset, task_~t.base] {724#(and (= task_~t.offset 0) (= task_~t.base 0))} is VALID [2022-04-27 22:36:54,488 INFO L272 TraceCheckUtils]: 11: Hoare triple {724#(and (= task_~t.offset 0) (= task_~t.base 0))} [218] L86-->minENTRY: Formula: (and (= v_task_~t.base_7 |v_min_#in~n.baseInParam_3|) (= |v_min_#in~n.offsetInParam_3| v_task_~t.offset_7)) InVars {task_~t.offset=v_task_~t.offset_7, task_~t.base=v_task_~t.base_7} OutVars{min_#in~n.base=|v_min_#in~n.baseInParam_3|, min_#in~n.offset=|v_min_#in~n.offsetInParam_3|} AuxVars[] AssignedVars[task_~t.offset, min_#in~n.offset, task_~t.base, min_#in~n.base] {714#true} is VALID [2022-04-27 22:36:54,488 INFO L290 TraceCheckUtils]: 12: Hoare triple {714#true} [221] minENTRY-->L37: Formula: (and (= |v_min_#in~n.base_1| v_min_~n.base_3) (= v_min_~n.offset_3 |v_min_#in~n.offset_1|)) InVars {min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} OutVars{min_~n.offset=v_min_~n.offset_3, min_~n.base=v_min_~n.base_3, min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} AuxVars[] AssignedVars[min_~n.offset, min_~n.base] {714#true} is VALID [2022-04-27 22:36:54,488 INFO L290 TraceCheckUtils]: 13: Hoare triple {714#true} [225] L37-->minFINAL: Formula: (and (= 2147483647 |v_min_#res_4|) (= v_min_~n.base_4 0) (= v_min_~n.offset_4 0)) InVars {min_~n.offset=v_min_~n.offset_4, min_~n.base=v_min_~n.base_4} OutVars{min_~n.offset=v_min_~n.offset_4, min_~n.base=v_min_~n.base_4, min_#res=|v_min_#res_4|} AuxVars[] AssignedVars[min_#res] {714#true} is VALID [2022-04-27 22:36:54,489 INFO L290 TraceCheckUtils]: 14: Hoare triple {714#true} [229] minFINAL-->minEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:54,489 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {714#true} {724#(and (= task_~t.offset 0) (= task_~t.base 0))} [312] minEXIT-->L86-1: AOR: Formula: (= |v_min_#resOutParam_3| |v_task_#t~ret32_4|) InVars {min_#res=|v_min_#resOutParam_3|} OutVars{task_#t~ret32=|v_task_#t~ret32_4|} AuxVars[] AssignedVars[task_#t~ret32, min_#res] LVA: Formula: (and (= v_task_~t.base_7 |v_min_#in~n.baseInParam_3|) (= |v_min_#in~n.offsetInParam_3| v_task_~t.offset_7)) InVars {task_~t.offset=v_task_~t.offset_7, task_~t.base=v_task_~t.base_7} OutVars{min_#in~n.base=|v_min_#in~n.baseInParam_3|, min_#in~n.offset=|v_min_#in~n.offsetInParam_3|} AuxVars[] AssignedVars[task_~t.offset, min_#in~n.offset, task_~t.base, min_#in~n.base] {724#(and (= task_~t.offset 0) (= task_~t.base 0))} is VALID [2022-04-27 22:36:54,489 INFO L290 TraceCheckUtils]: 16: Hoare triple {724#(and (= task_~t.offset 0) (= task_~t.base 0))} [220] L86-1-->L89: Formula: (and (< |v_#StackHeapBarrier_5| |v_task_~#b~1.base_5|) (= |v_#length_16| (store |v_#length_17| |v_task_~#b~1.base_5| 4)) (not (= |v_task_~#b~1.base_5| 0)) (<= |v_task_#t~ret32_3| 2147483647) (= |v_task_#t~ret32_3| v_task_~a~1_3) (= (select |v_#valid_27| |v_task_~#b~1.base_5|) 0) (<= 0 (+ |v_task_#t~ret32_3| 2147483648)) (= |v_task_~#b~1.offset_5| 0) (= (store |v_#valid_27| |v_task_~#b~1.base_5| 1) |v_#valid_26|)) InVars {task_#t~ret32=|v_task_#t~ret32_3|, #StackHeapBarrier=|v_#StackHeapBarrier_5|, #length=|v_#length_17|, #valid=|v_#valid_27|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_5|, task_~#b~1.offset=|v_task_~#b~1.offset_5|, #valid=|v_#valid_26|, task_~#b~1.base=|v_task_~#b~1.base_5|, #length=|v_#length_16|, task_~a~1=v_task_~a~1_3} AuxVars[] AssignedVars[task_#t~ret32, task_~#b~1.offset, #valid, task_~#b~1.base, #length, task_~a~1] {724#(and (= task_~t.offset 0) (= task_~t.base 0))} is VALID [2022-04-27 22:36:54,490 INFO L272 TraceCheckUtils]: 17: Hoare triple {724#(and (= task_~t.offset 0) (= task_~t.base 0))} [224] L89-->sizeENTRY: Formula: (and (= v_task_~t.base_8 |v_size_#in~t.baseInParam_1|) (= |v_size_#in~t.offsetInParam_1| v_task_~t.offset_8)) InVars {task_~t.offset=v_task_~t.offset_8, task_~t.base=v_task_~t.base_8} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_1|, size_#in~t.base=|v_size_#in~t.baseInParam_1|} AuxVars[] AssignedVars[task_~t.offset, size_#in~t.offset, size_#in~t.base, task_~t.base] {714#true} is VALID [2022-04-27 22:36:54,490 INFO L290 TraceCheckUtils]: 18: Hoare triple {714#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {829#(and (= |size_#in~t.offset| size_~t.offset) (= |size_#in~t.base| size_~t.base))} is VALID [2022-04-27 22:36:54,490 INFO L290 TraceCheckUtils]: 19: Hoare triple {829#(and (= |size_#in~t.offset| size_~t.offset) (= |size_#in~t.base| size_~t.base))} [233] L81-->L82: Formula: (let ((.cse0 (+ v_size_~t.offset_3 4))) (and (= (select (select |v_#memory_$Pointer$.base_31| v_size_~t.base_3) .cse0) |v_size_#t~mem28.base_1|) (or (not (= v_size_~t.base_3 0)) (not (= v_size_~t.offset_3 0))) (= |v_size_#t~mem28.offset_1| (select (select |v_#memory_$Pointer$.offset_31| v_size_~t.base_3) .cse0)))) InVars {size_~t.base=v_size_~t.base_3, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_31|, size_~t.offset=v_size_~t.offset_3, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_31|} OutVars{size_~t.base=v_size_~t.base_3, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_31|, size_#t~mem28.base=|v_size_#t~mem28.base_1|, size_~t.offset=v_size_~t.offset_3, size_#t~mem28.offset=|v_size_#t~mem28.offset_1|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_31|} AuxVars[] AssignedVars[size_#t~mem28.base, size_#t~mem28.offset] {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-27 22:36:54,490 INFO L272 TraceCheckUtils]: 20: Hoare triple {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} [238] L82-->sizeENTRY: Formula: (and (= |v_size_#in~t.offsetInParam_3| |v_size_#t~mem28.offset_4|) (= |v_size_#in~t.baseInParam_3| |v_size_#t~mem28.base_4|)) InVars {size_#t~mem28.offset=|v_size_#t~mem28.offset_4|, size_#t~mem28.base=|v_size_#t~mem28.base_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_3|, size_#in~t.base=|v_size_#in~t.baseInParam_3|} AuxVars[] AssignedVars[size_#in~t.offset, size_#in~t.base, size_#t~mem28.base, size_#t~mem28.offset] {714#true} is VALID [2022-04-27 22:36:54,491 INFO L290 TraceCheckUtils]: 21: Hoare triple {714#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {714#true} is VALID [2022-04-27 22:36:54,491 INFO L290 TraceCheckUtils]: 22: Hoare triple {714#true} [232] L81-->sizeFINAL: Formula: (and (= v_size_~t.base_2 0) (= |v_size_#res_1| 0) (= v_size_~t.offset_2 0)) InVars {size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2} OutVars{size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2, size_#res=|v_size_#res_1|} AuxVars[] AssignedVars[size_#res] {714#true} is VALID [2022-04-27 22:36:54,491 INFO L290 TraceCheckUtils]: 23: Hoare triple {714#true} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:54,491 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {714#true} {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} [315] sizeEXIT-->L82-1: AOR: Formula: (= |v_size_#t~ret29_5| |v_size_#resOutParam_3|) InVars {size_#res=|v_size_#resOutParam_3|} OutVars{size_#t~ret29=|v_size_#t~ret29_5|} AuxVars[] AssignedVars[size_#t~ret29, size_#res] LVA: Formula: (and (= |v_size_#in~t.offsetInParam_3| |v_size_#t~mem28.offset_4|) (= |v_size_#in~t.baseInParam_3| |v_size_#t~mem28.base_4|)) InVars {size_#t~mem28.offset=|v_size_#t~mem28.offset_4|, size_#t~mem28.base=|v_size_#t~mem28.base_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_3|, size_#in~t.base=|v_size_#in~t.baseInParam_3|} AuxVars[] AssignedVars[size_#in~t.offset, size_#in~t.base, size_#t~mem28.base, size_#t~mem28.offset] {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-27 22:36:54,492 INFO L290 TraceCheckUtils]: 25: Hoare triple {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} [244] L82-1-->L82-2: Formula: (let ((.cse0 (+ v_size_~t.offset_4 12))) (and (= |v_size_#t~mem30.offset_1| (select (select |v_#memory_$Pointer$.offset_32| v_size_~t.base_4) .cse0)) (<= 0 (+ |v_size_#t~ret29_2| 2147483648)) (<= |v_size_#t~ret29_2| 2147483647) (= |v_size_#t~mem30.base_1| (select (select |v_#memory_$Pointer$.base_32| v_size_~t.base_4) .cse0)))) InVars {size_~t.base=v_size_~t.base_4, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_32|, size_~t.offset=v_size_~t.offset_4, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_32|, size_#t~ret29=|v_size_#t~ret29_2|} OutVars{size_~t.base=v_size_~t.base_4, size_#t~mem30.base=|v_size_#t~mem30.base_1|, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_32|, size_#t~ret29=|v_size_#t~ret29_2|, size_#t~mem30.offset=|v_size_#t~mem30.offset_1|, size_~t.offset=v_size_~t.offset_4, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_32|} AuxVars[] AssignedVars[size_#t~mem30.base, size_#t~mem30.offset] {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-27 22:36:54,492 INFO L272 TraceCheckUtils]: 26: Hoare triple {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} [255] L82-2-->sizeENTRY: Formula: (and (= |v_size_#in~t.offsetInParam_4| |v_size_#t~mem30.offset_4|) (= |v_size_#t~mem30.base_4| |v_size_#in~t.baseInParam_4|)) InVars {size_#t~mem30.base=|v_size_#t~mem30.base_4|, size_#t~mem30.offset=|v_size_#t~mem30.offset_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_4|, size_#in~t.base=|v_size_#in~t.baseInParam_4|} AuxVars[] AssignedVars[size_#in~t.offset, size_#t~mem30.base, size_#in~t.base, size_#t~mem30.offset] {714#true} is VALID [2022-04-27 22:36:54,492 INFO L290 TraceCheckUtils]: 27: Hoare triple {714#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {714#true} is VALID [2022-04-27 22:36:54,492 INFO L290 TraceCheckUtils]: 28: Hoare triple {714#true} [232] L81-->sizeFINAL: Formula: (and (= v_size_~t.base_2 0) (= |v_size_#res_1| 0) (= v_size_~t.offset_2 0)) InVars {size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2} OutVars{size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2, size_#res=|v_size_#res_1|} AuxVars[] AssignedVars[size_#res] {714#true} is VALID [2022-04-27 22:36:54,492 INFO L290 TraceCheckUtils]: 29: Hoare triple {714#true} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:54,493 INFO L284 TraceCheckUtils]: 30: Hoare quadruple {714#true} {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} [316] sizeEXIT-->L82-3: AOR: Formula: (= |v_size_#t~ret31_4| |v_size_#resOutParam_4|) InVars {size_#res=|v_size_#resOutParam_4|} OutVars{size_#t~ret31=|v_size_#t~ret31_4|} AuxVars[] AssignedVars[size_#res, size_#t~ret31] LVA: Formula: (and (= |v_size_#in~t.offsetInParam_4| |v_size_#t~mem30.offset_4|) (= |v_size_#t~mem30.base_4| |v_size_#in~t.baseInParam_4|)) InVars {size_#t~mem30.base=|v_size_#t~mem30.base_4|, size_#t~mem30.offset=|v_size_#t~mem30.offset_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_4|, size_#in~t.base=|v_size_#in~t.baseInParam_4|} AuxVars[] AssignedVars[size_#in~t.offset, size_#t~mem30.base, size_#in~t.base, size_#t~mem30.offset] {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-27 22:36:54,493 INFO L290 TraceCheckUtils]: 31: Hoare triple {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} [254] L82-3-->sizeFINAL: Formula: (and (<= |v_size_#t~ret31_3| 2147483647) (<= 0 (+ |v_size_#t~ret31_3| 2147483648)) (= (+ |v_size_#t~ret31_3| |v_size_#t~ret29_4| 1) |v_size_#res_2|)) InVars {size_#t~ret29=|v_size_#t~ret29_4|, size_#t~ret31=|v_size_#t~ret31_3|} OutVars{size_#t~mem30.base=|v_size_#t~mem30.base_3|, size_#t~mem30.offset=|v_size_#t~mem30.offset_3|, size_#t~mem28.offset=|v_size_#t~mem28.offset_3|, size_#res=|v_size_#res_2|, size_#t~mem28.base=|v_size_#t~mem28.base_3|} AuxVars[] AssignedVars[size_#t~mem30.base, size_#t~mem28.base, size_#t~ret29, size_#t~mem30.offset, size_#t~mem28.offset, size_#res, size_#t~ret31] {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-27 22:36:54,493 INFO L290 TraceCheckUtils]: 32: Hoare triple {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-27 22:36:54,494 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} {724#(and (= task_~t.offset 0) (= task_~t.base 0))} [313] sizeEXIT-->L89-1: AOR: Formula: (= |v_task_#t~ret33_4| |v_size_#resOutParam_1|) InVars {size_#res=|v_size_#resOutParam_1|} OutVars{task_#t~ret33=|v_task_#t~ret33_4|} AuxVars[] AssignedVars[task_#t~ret33, size_#res] LVA: Formula: (and (= v_task_~t.base_8 |v_size_#in~t.baseInParam_1|) (= |v_size_#in~t.offsetInParam_1| v_task_~t.offset_8)) InVars {task_~t.offset=v_task_~t.offset_8, task_~t.base=v_task_~t.base_8} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_1|, size_#in~t.base=|v_size_#in~t.baseInParam_1|} AuxVars[] AssignedVars[task_~t.offset, size_#in~t.offset, size_#in~t.base, task_~t.base] {715#false} is VALID [2022-04-27 22:36:54,494 INFO L290 TraceCheckUtils]: 34: Hoare triple {715#false} [227] L89-1-->L90: Formula: (and (<= |v_task_#t~ret33_3| 2147483647) (<= 0 (+ |v_task_#t~ret33_3| 2147483648)) (= |v_task_#t~ret33_3| v_task_~n~1_8)) InVars {task_#t~ret33=|v_task_#t~ret33_3|} OutVars{task_~n~1=v_task_~n~1_8} AuxVars[] AssignedVars[task_#t~ret33, task_~n~1] {715#false} is VALID [2022-04-27 22:36:54,494 INFO L272 TraceCheckUtils]: 35: Hoare triple {715#false} [231] L90-->assume_cycle_if_notENTRY: Formula: (= |v_assume_cycle_if_not_#in~condInParam_1| (ite (not (= v_task_~n~1_9 0)) 1 0)) InVars {task_~n~1=v_task_~n~1_9} OutVars{assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[task_~n~1, assume_cycle_if_not_#in~cond] {715#false} is VALID [2022-04-27 22:36:54,494 INFO L290 TraceCheckUtils]: 36: Hoare triple {715#false} [236] assume_cycle_if_notENTRY-->L9: Formula: (= v_assume_cycle_if_not_~cond_3 |v_assume_cycle_if_not_#in~cond_1|) InVars {assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~cond_1|} OutVars{assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~cond_1|, assume_cycle_if_not_~cond=v_assume_cycle_if_not_~cond_3} AuxVars[] AssignedVars[assume_cycle_if_not_~cond] {715#false} is VALID [2022-04-27 22:36:54,494 INFO L290 TraceCheckUtils]: 37: Hoare triple {715#false} [243] L9-->L9-5: Formula: (not (= v_assume_cycle_if_not_~cond_1 0)) InVars {assume_cycle_if_not_~cond=v_assume_cycle_if_not_~cond_1} OutVars{assume_cycle_if_not_~cond=v_assume_cycle_if_not_~cond_1} AuxVars[] AssignedVars[] {715#false} is VALID [2022-04-27 22:36:54,494 INFO L290 TraceCheckUtils]: 38: Hoare triple {715#false} [252] L9-5-->assume_cycle_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {715#false} is VALID [2022-04-27 22:36:54,494 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {715#false} {715#false} [317] assume_cycle_if_notEXIT-->L90-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_cycle_if_not_#in~condInParam_1| (ite (not (= v_task_~n~1_9 0)) 1 0)) InVars {task_~n~1=v_task_~n~1_9} OutVars{assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[task_~n~1, assume_cycle_if_not_#in~cond] {715#false} is VALID [2022-04-27 22:36:54,494 INFO L290 TraceCheckUtils]: 40: Hoare triple {715#false} [235] L90-1-->L91: Formula: (and (= (store |v_#length_13| |v_task_#t~malloc34.base_1| (* 4 v_task_~n~1_2)) |v_#length_12|) (< |v_task_#t~malloc34.base_1| |v_#StackHeapBarrier_3|) (= 0 |v_task_#t~malloc34.offset_1|) (= |v_#valid_16| (store |v_#valid_17| |v_task_#t~malloc34.base_1| 1)) (not (= |v_task_#t~malloc34.base_1| 0)) (= (select |v_#valid_17| |v_task_#t~malloc34.base_1|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_3|, #length=|v_#length_13|, task_~n~1=v_task_~n~1_2, #valid=|v_#valid_17|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_3|, task_~n~1=v_task_~n~1_2, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_1|, #valid=|v_#valid_16|, task_#t~malloc34.base=|v_task_#t~malloc34.base_1|, #length=|v_#length_12|} AuxVars[] AssignedVars[task_#t~malloc34.offset, #valid, task_#t~malloc34.base, #length] {715#false} is VALID [2022-04-27 22:36:54,495 INFO L272 TraceCheckUtils]: 41: Hoare triple {715#false} [241] L91-->#Ultimate.meminitENTRY: Formula: (and (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_task_#t~malloc34.offset_4|) (= v_task_~n~1_10 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_task_#t~malloc34.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= (* v_task_~n~1_10 4) |v_#Ultimate.meminit_#productInParam_1|)) InVars {task_#t~malloc34.base=|v_task_#t~malloc34.base_4|, task_~n~1=v_task_~n~1_10, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[task_~n~1, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, task_#t~malloc34.offset, task_#t~malloc34.base, #Ultimate.meminit_#product, #Ultimate.meminit_#ptr.base, #Ultimate.meminit_#ptr.offset] {715#false} is VALID [2022-04-27 22:36:54,495 INFO L290 TraceCheckUtils]: 42: Hoare triple {715#false} [248] #Ultimate.meminitENTRY-->#Ultimate.meminitFINAL: Formula: (= (store |v_#memory_int_12| |v_#Ultimate.meminit_#ptr.base_1| ((as const (Array Int Int)) 0)) |v_#memory_int_11|) InVars {#memory_int=|v_#memory_int_12|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} OutVars{#memory_int=|v_#memory_int_11|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} AuxVars[] AssignedVars[#memory_int] {715#false} is VALID [2022-04-27 22:36:54,495 INFO L290 TraceCheckUtils]: 43: Hoare triple {715#false} [259] #Ultimate.meminitFINAL-->#Ultimate.meminitEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {715#false} is VALID [2022-04-27 22:36:54,495 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {715#false} {715#false} [318] #Ultimate.meminitEXIT-->L91-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (and (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_task_#t~malloc34.offset_4|) (= v_task_~n~1_10 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_task_#t~malloc34.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= (* v_task_~n~1_10 4) |v_#Ultimate.meminit_#productInParam_1|)) InVars {task_#t~malloc34.base=|v_task_#t~malloc34.base_4|, task_~n~1=v_task_~n~1_10, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[task_~n~1, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, task_#t~malloc34.offset, task_#t~malloc34.base, #Ultimate.meminit_#product, #Ultimate.meminit_#ptr.base, #Ultimate.meminit_#ptr.offset] {715#false} is VALID [2022-04-27 22:36:54,495 INFO L290 TraceCheckUtils]: 45: Hoare triple {715#false} [247] L91-1-->L92: Formula: (and (= v_task_~x~0.offset_1 |v_task_#t~malloc34.offset_3|) (= |v_task_#t~malloc34.base_3| v_task_~x~0.base_1)) InVars {task_#t~malloc34.base=|v_task_#t~malloc34.base_3|, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_3|} OutVars{task_#t~malloc34.base=|v_task_#t~malloc34.base_3|, task_~x~0.base=v_task_~x~0.base_1, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_3|, task_~x~0.offset=v_task_~x~0.offset_1} AuxVars[] AssignedVars[task_~x~0.base, task_~x~0.offset] {715#false} is VALID [2022-04-27 22:36:54,495 INFO L272 TraceCheckUtils]: 46: Hoare triple {715#false} [258] L92-->tree_inorderENTRY: Formula: (and (= v_task_~t.base_9 |v_tree_inorder_#in~t.baseInParam_1|) (= |v_tree_inorder_#in~a.baseInParam_1| v_task_~x~0.base_6) (= |v_tree_inorder_#in~t.offsetInParam_1| v_task_~t.offset_9) (= |v_tree_inorder_#in~a.offsetInParam_1| v_task_~x~0.offset_6) (= v_task_~n~1_11 |v_tree_inorder_#in~iInParam_1|)) InVars {task_~t.offset=v_task_~t.offset_9, task_~x~0.base=v_task_~x~0.base_6, task_~n~1=v_task_~n~1_11, task_~t.base=v_task_~t.base_9, task_~x~0.offset=v_task_~x~0.offset_6} OutVars{tree_inorder_#in~i=|v_tree_inorder_#in~iInParam_1|, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offsetInParam_1|, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.baseInParam_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offsetInParam_1|, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.baseInParam_1|} AuxVars[] AssignedVars[tree_inorder_#in~i, task_~t.offset, tree_inorder_#in~a.offset, task_~x~0.base, task_~n~1, tree_inorder_#in~a.base, tree_inorder_#in~t.base, tree_inorder_#in~t.offset, task_~t.base, task_~x~0.offset] {715#false} is VALID [2022-04-27 22:36:54,495 INFO L290 TraceCheckUtils]: 47: Hoare triple {715#false} [262] tree_inorderENTRY-->L70: Formula: (and (= v_tree_inorder_~i_1 |v_tree_inorder_#in~i_1|) (= v_tree_inorder_~a.base_1 |v_tree_inorder_#in~a.base_1|) (= |v_tree_inorder_#in~t.offset_1| v_tree_inorder_~t.offset_1) (= |v_tree_inorder_#in~a.offset_1| v_tree_inorder_~a.offset_1) (= v_tree_inorder_~t.base_1 |v_tree_inorder_#in~t.base_1|)) InVars {tree_inorder_#in~i=|v_tree_inorder_#in~i_1|, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offset_1|, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.base_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offset_1|, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.base_1|} OutVars{tree_inorder_#in~i=|v_tree_inorder_#in~i_1|, tree_inorder_~a.base=v_tree_inorder_~a.base_1, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offset_1|, tree_inorder_~t.offset=v_tree_inorder_~t.offset_1, tree_inorder_~a.offset=v_tree_inorder_~a.offset_1, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.base_1|, tree_inorder_~t.base=v_tree_inorder_~t.base_1, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.base_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offset_1|, tree_inorder_~i=v_tree_inorder_~i_1} AuxVars[] AssignedVars[tree_inorder_~a.base, tree_inorder_~t.offset, tree_inorder_~a.offset, tree_inorder_~t.base, tree_inorder_~i] {715#false} is VALID [2022-04-27 22:36:54,495 INFO L290 TraceCheckUtils]: 48: Hoare triple {715#false} [265] L70-->tree_inorderFINAL: Formula: (and (= v_tree_inorder_~i_2 |v_tree_inorder_#res_1|) (= v_tree_inorder_~t.base_2 0) (= v_tree_inorder_~t.offset_2 0)) InVars {tree_inorder_~t.base=v_tree_inorder_~t.base_2, tree_inorder_~t.offset=v_tree_inorder_~t.offset_2, tree_inorder_~i=v_tree_inorder_~i_2} OutVars{tree_inorder_~t.base=v_tree_inorder_~t.base_2, tree_inorder_#res=|v_tree_inorder_#res_1|, tree_inorder_~t.offset=v_tree_inorder_~t.offset_2, tree_inorder_~i=v_tree_inorder_~i_2} AuxVars[] AssignedVars[tree_inorder_#res] {715#false} is VALID [2022-04-27 22:36:54,496 INFO L290 TraceCheckUtils]: 49: Hoare triple {715#false} [270] tree_inorderFINAL-->tree_inorderEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {715#false} is VALID [2022-04-27 22:36:54,496 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {715#false} {715#false} [320] tree_inorderEXIT-->L92-1: AOR: Formula: (= |v_tree_inorder_#resOutParam_1| |v_task_#t~ret35_4|) InVars {tree_inorder_#res=|v_tree_inorder_#resOutParam_1|} OutVars{task_#t~ret35=|v_task_#t~ret35_4|} AuxVars[] AssignedVars[task_#t~ret35, tree_inorder_#res] LVA: Formula: (and (= v_task_~t.base_9 |v_tree_inorder_#in~t.baseInParam_1|) (= |v_tree_inorder_#in~a.baseInParam_1| v_task_~x~0.base_6) (= |v_tree_inorder_#in~t.offsetInParam_1| v_task_~t.offset_9) (= |v_tree_inorder_#in~a.offsetInParam_1| v_task_~x~0.offset_6) (= v_task_~n~1_11 |v_tree_inorder_#in~iInParam_1|)) InVars {task_~t.offset=v_task_~t.offset_9, task_~x~0.base=v_task_~x~0.base_6, task_~n~1=v_task_~n~1_11, task_~t.base=v_task_~t.base_9, task_~x~0.offset=v_task_~x~0.offset_6} OutVars{tree_inorder_#in~i=|v_tree_inorder_#in~iInParam_1|, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offsetInParam_1|, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.baseInParam_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offsetInParam_1|, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.baseInParam_1|} AuxVars[] AssignedVars[tree_inorder_#in~i, task_~t.offset, tree_inorder_#in~a.offset, task_~x~0.base, task_~n~1, tree_inorder_#in~a.base, tree_inorder_#in~t.base, tree_inorder_#in~t.offset, task_~t.base, task_~x~0.offset] {715#false} is VALID [2022-04-27 22:36:54,496 INFO L290 TraceCheckUtils]: 51: Hoare triple {715#false} [261] L92-1-->L93: Formula: (and (<= 0 (+ |v_task_#t~ret35_3| 2147483648)) (= |v_task_#t~mem36_1| (select (select |v_#memory_int_28| v_task_~x~0.base_3) v_task_~x~0.offset_3)) (<= |v_task_#t~ret35_3| 2147483647)) InVars {#memory_int=|v_#memory_int_28|, task_~x~0.base=v_task_~x~0.base_3, task_#t~ret35=|v_task_#t~ret35_3|, task_~x~0.offset=v_task_~x~0.offset_3} OutVars{#memory_int=|v_#memory_int_28|, task_#t~mem36=|v_task_#t~mem36_1|, task_~x~0.base=v_task_~x~0.base_3, task_~x~0.offset=v_task_~x~0.offset_3} AuxVars[] AssignedVars[task_#t~ret35, task_#t~mem36] {715#false} is VALID [2022-04-27 22:36:54,496 INFO L272 TraceCheckUtils]: 52: Hoare triple {715#false} [264] L93-->__VERIFIER_assertENTRY: Formula: (= (ite (= |v_task_#t~mem36_4| v_task_~a~1_4) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {task_#t~mem36=|v_task_#t~mem36_4|, task_~a~1=v_task_~a~1_4} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, task_#t~mem36, task_~a~1] {715#false} is VALID [2022-04-27 22:36:54,496 INFO L290 TraceCheckUtils]: 53: Hoare triple {715#false} [269] __VERIFIER_assertENTRY-->L16: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {715#false} is VALID [2022-04-27 22:36:54,496 INFO L290 TraceCheckUtils]: 54: Hoare triple {715#false} [274] L16-->L16-1: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {715#false} is VALID [2022-04-27 22:36:54,496 INFO L290 TraceCheckUtils]: 55: Hoare triple {715#false} [280] L16-1-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {715#false} is VALID [2022-04-27 22:36:54,497 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 22:36:54,497 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:36:54,851 INFO L290 TraceCheckUtils]: 55: Hoare triple {715#false} [280] L16-1-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {715#false} is VALID [2022-04-27 22:36:54,851 INFO L290 TraceCheckUtils]: 54: Hoare triple {715#false} [274] L16-->L16-1: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {715#false} is VALID [2022-04-27 22:36:54,851 INFO L290 TraceCheckUtils]: 53: Hoare triple {715#false} [269] __VERIFIER_assertENTRY-->L16: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {715#false} is VALID [2022-04-27 22:36:54,852 INFO L272 TraceCheckUtils]: 52: Hoare triple {715#false} [264] L93-->__VERIFIER_assertENTRY: Formula: (= (ite (= |v_task_#t~mem36_4| v_task_~a~1_4) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {task_#t~mem36=|v_task_#t~mem36_4|, task_~a~1=v_task_~a~1_4} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, task_#t~mem36, task_~a~1] {715#false} is VALID [2022-04-27 22:36:54,852 INFO L290 TraceCheckUtils]: 51: Hoare triple {715#false} [261] L92-1-->L93: Formula: (and (<= 0 (+ |v_task_#t~ret35_3| 2147483648)) (= |v_task_#t~mem36_1| (select (select |v_#memory_int_28| v_task_~x~0.base_3) v_task_~x~0.offset_3)) (<= |v_task_#t~ret35_3| 2147483647)) InVars {#memory_int=|v_#memory_int_28|, task_~x~0.base=v_task_~x~0.base_3, task_#t~ret35=|v_task_#t~ret35_3|, task_~x~0.offset=v_task_~x~0.offset_3} OutVars{#memory_int=|v_#memory_int_28|, task_#t~mem36=|v_task_#t~mem36_1|, task_~x~0.base=v_task_~x~0.base_3, task_~x~0.offset=v_task_~x~0.offset_3} AuxVars[] AssignedVars[task_#t~ret35, task_#t~mem36] {715#false} is VALID [2022-04-27 22:36:54,852 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {714#true} {715#false} [320] tree_inorderEXIT-->L92-1: AOR: Formula: (= |v_tree_inorder_#resOutParam_1| |v_task_#t~ret35_4|) InVars {tree_inorder_#res=|v_tree_inorder_#resOutParam_1|} OutVars{task_#t~ret35=|v_task_#t~ret35_4|} AuxVars[] AssignedVars[task_#t~ret35, tree_inorder_#res] LVA: Formula: (and (= v_task_~t.base_9 |v_tree_inorder_#in~t.baseInParam_1|) (= |v_tree_inorder_#in~a.baseInParam_1| v_task_~x~0.base_6) (= |v_tree_inorder_#in~t.offsetInParam_1| v_task_~t.offset_9) (= |v_tree_inorder_#in~a.offsetInParam_1| v_task_~x~0.offset_6) (= v_task_~n~1_11 |v_tree_inorder_#in~iInParam_1|)) InVars {task_~t.offset=v_task_~t.offset_9, task_~x~0.base=v_task_~x~0.base_6, task_~n~1=v_task_~n~1_11, task_~t.base=v_task_~t.base_9, task_~x~0.offset=v_task_~x~0.offset_6} OutVars{tree_inorder_#in~i=|v_tree_inorder_#in~iInParam_1|, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offsetInParam_1|, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.baseInParam_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offsetInParam_1|, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.baseInParam_1|} AuxVars[] AssignedVars[tree_inorder_#in~i, task_~t.offset, tree_inorder_#in~a.offset, task_~x~0.base, task_~n~1, tree_inorder_#in~a.base, tree_inorder_#in~t.base, tree_inorder_#in~t.offset, task_~t.base, task_~x~0.offset] {715#false} is VALID [2022-04-27 22:36:54,852 INFO L290 TraceCheckUtils]: 49: Hoare triple {714#true} [270] tree_inorderFINAL-->tree_inorderEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:54,852 INFO L290 TraceCheckUtils]: 48: Hoare triple {714#true} [265] L70-->tree_inorderFINAL: Formula: (and (= v_tree_inorder_~i_2 |v_tree_inorder_#res_1|) (= v_tree_inorder_~t.base_2 0) (= v_tree_inorder_~t.offset_2 0)) InVars {tree_inorder_~t.base=v_tree_inorder_~t.base_2, tree_inorder_~t.offset=v_tree_inorder_~t.offset_2, tree_inorder_~i=v_tree_inorder_~i_2} OutVars{tree_inorder_~t.base=v_tree_inorder_~t.base_2, tree_inorder_#res=|v_tree_inorder_#res_1|, tree_inorder_~t.offset=v_tree_inorder_~t.offset_2, tree_inorder_~i=v_tree_inorder_~i_2} AuxVars[] AssignedVars[tree_inorder_#res] {714#true} is VALID [2022-04-27 22:36:54,852 INFO L290 TraceCheckUtils]: 47: Hoare triple {714#true} [262] tree_inorderENTRY-->L70: Formula: (and (= v_tree_inorder_~i_1 |v_tree_inorder_#in~i_1|) (= v_tree_inorder_~a.base_1 |v_tree_inorder_#in~a.base_1|) (= |v_tree_inorder_#in~t.offset_1| v_tree_inorder_~t.offset_1) (= |v_tree_inorder_#in~a.offset_1| v_tree_inorder_~a.offset_1) (= v_tree_inorder_~t.base_1 |v_tree_inorder_#in~t.base_1|)) InVars {tree_inorder_#in~i=|v_tree_inorder_#in~i_1|, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offset_1|, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.base_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offset_1|, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.base_1|} OutVars{tree_inorder_#in~i=|v_tree_inorder_#in~i_1|, tree_inorder_~a.base=v_tree_inorder_~a.base_1, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offset_1|, tree_inorder_~t.offset=v_tree_inorder_~t.offset_1, tree_inorder_~a.offset=v_tree_inorder_~a.offset_1, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.base_1|, tree_inorder_~t.base=v_tree_inorder_~t.base_1, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.base_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offset_1|, tree_inorder_~i=v_tree_inorder_~i_1} AuxVars[] AssignedVars[tree_inorder_~a.base, tree_inorder_~t.offset, tree_inorder_~a.offset, tree_inorder_~t.base, tree_inorder_~i] {714#true} is VALID [2022-04-27 22:36:54,852 INFO L272 TraceCheckUtils]: 46: Hoare triple {715#false} [258] L92-->tree_inorderENTRY: Formula: (and (= v_task_~t.base_9 |v_tree_inorder_#in~t.baseInParam_1|) (= |v_tree_inorder_#in~a.baseInParam_1| v_task_~x~0.base_6) (= |v_tree_inorder_#in~t.offsetInParam_1| v_task_~t.offset_9) (= |v_tree_inorder_#in~a.offsetInParam_1| v_task_~x~0.offset_6) (= v_task_~n~1_11 |v_tree_inorder_#in~iInParam_1|)) InVars {task_~t.offset=v_task_~t.offset_9, task_~x~0.base=v_task_~x~0.base_6, task_~n~1=v_task_~n~1_11, task_~t.base=v_task_~t.base_9, task_~x~0.offset=v_task_~x~0.offset_6} OutVars{tree_inorder_#in~i=|v_tree_inorder_#in~iInParam_1|, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offsetInParam_1|, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.baseInParam_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offsetInParam_1|, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.baseInParam_1|} AuxVars[] AssignedVars[tree_inorder_#in~i, task_~t.offset, tree_inorder_#in~a.offset, task_~x~0.base, task_~n~1, tree_inorder_#in~a.base, tree_inorder_#in~t.base, tree_inorder_#in~t.offset, task_~t.base, task_~x~0.offset] {714#true} is VALID [2022-04-27 22:36:54,852 INFO L290 TraceCheckUtils]: 45: Hoare triple {715#false} [247] L91-1-->L92: Formula: (and (= v_task_~x~0.offset_1 |v_task_#t~malloc34.offset_3|) (= |v_task_#t~malloc34.base_3| v_task_~x~0.base_1)) InVars {task_#t~malloc34.base=|v_task_#t~malloc34.base_3|, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_3|} OutVars{task_#t~malloc34.base=|v_task_#t~malloc34.base_3|, task_~x~0.base=v_task_~x~0.base_1, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_3|, task_~x~0.offset=v_task_~x~0.offset_1} AuxVars[] AssignedVars[task_~x~0.base, task_~x~0.offset] {715#false} is VALID [2022-04-27 22:36:54,852 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {714#true} {715#false} [318] #Ultimate.meminitEXIT-->L91-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (and (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_task_#t~malloc34.offset_4|) (= v_task_~n~1_10 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_task_#t~malloc34.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= (* v_task_~n~1_10 4) |v_#Ultimate.meminit_#productInParam_1|)) InVars {task_#t~malloc34.base=|v_task_#t~malloc34.base_4|, task_~n~1=v_task_~n~1_10, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[task_~n~1, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, task_#t~malloc34.offset, task_#t~malloc34.base, #Ultimate.meminit_#product, #Ultimate.meminit_#ptr.base, #Ultimate.meminit_#ptr.offset] {715#false} is VALID [2022-04-27 22:36:54,853 INFO L290 TraceCheckUtils]: 43: Hoare triple {714#true} [259] #Ultimate.meminitFINAL-->#Ultimate.meminitEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:54,853 INFO L290 TraceCheckUtils]: 42: Hoare triple {714#true} [248] #Ultimate.meminitENTRY-->#Ultimate.meminitFINAL: Formula: (= (store |v_#memory_int_12| |v_#Ultimate.meminit_#ptr.base_1| ((as const (Array Int Int)) 0)) |v_#memory_int_11|) InVars {#memory_int=|v_#memory_int_12|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} OutVars{#memory_int=|v_#memory_int_11|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} AuxVars[] AssignedVars[#memory_int] {714#true} is VALID [2022-04-27 22:36:54,853 INFO L272 TraceCheckUtils]: 41: Hoare triple {715#false} [241] L91-->#Ultimate.meminitENTRY: Formula: (and (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_task_#t~malloc34.offset_4|) (= v_task_~n~1_10 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_task_#t~malloc34.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= (* v_task_~n~1_10 4) |v_#Ultimate.meminit_#productInParam_1|)) InVars {task_#t~malloc34.base=|v_task_#t~malloc34.base_4|, task_~n~1=v_task_~n~1_10, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[task_~n~1, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, task_#t~malloc34.offset, task_#t~malloc34.base, #Ultimate.meminit_#product, #Ultimate.meminit_#ptr.base, #Ultimate.meminit_#ptr.offset] {714#true} is VALID [2022-04-27 22:36:54,853 INFO L290 TraceCheckUtils]: 40: Hoare triple {715#false} [235] L90-1-->L91: Formula: (and (= (store |v_#length_13| |v_task_#t~malloc34.base_1| (* 4 v_task_~n~1_2)) |v_#length_12|) (< |v_task_#t~malloc34.base_1| |v_#StackHeapBarrier_3|) (= 0 |v_task_#t~malloc34.offset_1|) (= |v_#valid_16| (store |v_#valid_17| |v_task_#t~malloc34.base_1| 1)) (not (= |v_task_#t~malloc34.base_1| 0)) (= (select |v_#valid_17| |v_task_#t~malloc34.base_1|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_3|, #length=|v_#length_13|, task_~n~1=v_task_~n~1_2, #valid=|v_#valid_17|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_3|, task_~n~1=v_task_~n~1_2, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_1|, #valid=|v_#valid_16|, task_#t~malloc34.base=|v_task_#t~malloc34.base_1|, #length=|v_#length_12|} AuxVars[] AssignedVars[task_#t~malloc34.offset, #valid, task_#t~malloc34.base, #length] {715#false} is VALID [2022-04-27 22:36:54,853 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {714#true} {715#false} [317] assume_cycle_if_notEXIT-->L90-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_cycle_if_not_#in~condInParam_1| (ite (not (= v_task_~n~1_9 0)) 1 0)) InVars {task_~n~1=v_task_~n~1_9} OutVars{assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[task_~n~1, assume_cycle_if_not_#in~cond] {715#false} is VALID [2022-04-27 22:36:54,853 INFO L290 TraceCheckUtils]: 38: Hoare triple {714#true} [252] L9-5-->assume_cycle_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:54,853 INFO L290 TraceCheckUtils]: 37: Hoare triple {714#true} [243] L9-->L9-5: Formula: (not (= v_assume_cycle_if_not_~cond_1 0)) InVars {assume_cycle_if_not_~cond=v_assume_cycle_if_not_~cond_1} OutVars{assume_cycle_if_not_~cond=v_assume_cycle_if_not_~cond_1} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:54,853 INFO L290 TraceCheckUtils]: 36: Hoare triple {714#true} [236] assume_cycle_if_notENTRY-->L9: Formula: (= v_assume_cycle_if_not_~cond_3 |v_assume_cycle_if_not_#in~cond_1|) InVars {assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~cond_1|} OutVars{assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~cond_1|, assume_cycle_if_not_~cond=v_assume_cycle_if_not_~cond_3} AuxVars[] AssignedVars[assume_cycle_if_not_~cond] {714#true} is VALID [2022-04-27 22:36:54,853 INFO L272 TraceCheckUtils]: 35: Hoare triple {715#false} [231] L90-->assume_cycle_if_notENTRY: Formula: (= |v_assume_cycle_if_not_#in~condInParam_1| (ite (not (= v_task_~n~1_9 0)) 1 0)) InVars {task_~n~1=v_task_~n~1_9} OutVars{assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[task_~n~1, assume_cycle_if_not_#in~cond] {714#true} is VALID [2022-04-27 22:36:54,854 INFO L290 TraceCheckUtils]: 34: Hoare triple {715#false} [227] L89-1-->L90: Formula: (and (<= |v_task_#t~ret33_3| 2147483647) (<= 0 (+ |v_task_#t~ret33_3| 2147483648)) (= |v_task_#t~ret33_3| v_task_~n~1_8)) InVars {task_#t~ret33=|v_task_#t~ret33_3|} OutVars{task_~n~1=v_task_~n~1_8} AuxVars[] AssignedVars[task_#t~ret33, task_~n~1] {715#false} is VALID [2022-04-27 22:36:54,861 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} {724#(and (= task_~t.offset 0) (= task_~t.base 0))} [313] sizeEXIT-->L89-1: AOR: Formula: (= |v_task_#t~ret33_4| |v_size_#resOutParam_1|) InVars {size_#res=|v_size_#resOutParam_1|} OutVars{task_#t~ret33=|v_task_#t~ret33_4|} AuxVars[] AssignedVars[task_#t~ret33, size_#res] LVA: Formula: (and (= v_task_~t.base_8 |v_size_#in~t.baseInParam_1|) (= |v_size_#in~t.offsetInParam_1| v_task_~t.offset_8)) InVars {task_~t.offset=v_task_~t.offset_8, task_~t.base=v_task_~t.base_8} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_1|, size_#in~t.base=|v_size_#in~t.baseInParam_1|} AuxVars[] AssignedVars[task_~t.offset, size_#in~t.offset, size_#in~t.base, task_~t.base] {715#false} is VALID [2022-04-27 22:36:54,862 INFO L290 TraceCheckUtils]: 32: Hoare triple {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-27 22:36:54,864 INFO L290 TraceCheckUtils]: 31: Hoare triple {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} [254] L82-3-->sizeFINAL: Formula: (and (<= |v_size_#t~ret31_3| 2147483647) (<= 0 (+ |v_size_#t~ret31_3| 2147483648)) (= (+ |v_size_#t~ret31_3| |v_size_#t~ret29_4| 1) |v_size_#res_2|)) InVars {size_#t~ret29=|v_size_#t~ret29_4|, size_#t~ret31=|v_size_#t~ret31_3|} OutVars{size_#t~mem30.base=|v_size_#t~mem30.base_3|, size_#t~mem30.offset=|v_size_#t~mem30.offset_3|, size_#t~mem28.offset=|v_size_#t~mem28.offset_3|, size_#res=|v_size_#res_2|, size_#t~mem28.base=|v_size_#t~mem28.base_3|} AuxVars[] AssignedVars[size_#t~mem30.base, size_#t~mem28.base, size_#t~ret29, size_#t~mem30.offset, size_#t~mem28.offset, size_#res, size_#t~ret31] {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-27 22:36:54,864 INFO L284 TraceCheckUtils]: 30: Hoare quadruple {714#true} {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} [316] sizeEXIT-->L82-3: AOR: Formula: (= |v_size_#t~ret31_4| |v_size_#resOutParam_4|) InVars {size_#res=|v_size_#resOutParam_4|} OutVars{size_#t~ret31=|v_size_#t~ret31_4|} AuxVars[] AssignedVars[size_#res, size_#t~ret31] LVA: Formula: (and (= |v_size_#in~t.offsetInParam_4| |v_size_#t~mem30.offset_4|) (= |v_size_#t~mem30.base_4| |v_size_#in~t.baseInParam_4|)) InVars {size_#t~mem30.base=|v_size_#t~mem30.base_4|, size_#t~mem30.offset=|v_size_#t~mem30.offset_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_4|, size_#in~t.base=|v_size_#in~t.baseInParam_4|} AuxVars[] AssignedVars[size_#in~t.offset, size_#t~mem30.base, size_#in~t.base, size_#t~mem30.offset] {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-27 22:36:54,864 INFO L290 TraceCheckUtils]: 29: Hoare triple {714#true} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:54,868 INFO L290 TraceCheckUtils]: 28: Hoare triple {714#true} [232] L81-->sizeFINAL: Formula: (and (= v_size_~t.base_2 0) (= |v_size_#res_1| 0) (= v_size_~t.offset_2 0)) InVars {size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2} OutVars{size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2, size_#res=|v_size_#res_1|} AuxVars[] AssignedVars[size_#res] {714#true} is VALID [2022-04-27 22:36:54,868 INFO L290 TraceCheckUtils]: 27: Hoare triple {714#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {714#true} is VALID [2022-04-27 22:36:54,868 INFO L272 TraceCheckUtils]: 26: Hoare triple {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} [255] L82-2-->sizeENTRY: Formula: (and (= |v_size_#in~t.offsetInParam_4| |v_size_#t~mem30.offset_4|) (= |v_size_#t~mem30.base_4| |v_size_#in~t.baseInParam_4|)) InVars {size_#t~mem30.base=|v_size_#t~mem30.base_4|, size_#t~mem30.offset=|v_size_#t~mem30.offset_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_4|, size_#in~t.base=|v_size_#in~t.baseInParam_4|} AuxVars[] AssignedVars[size_#in~t.offset, size_#t~mem30.base, size_#in~t.base, size_#t~mem30.offset] {714#true} is VALID [2022-04-27 22:36:54,871 INFO L290 TraceCheckUtils]: 25: Hoare triple {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} [244] L82-1-->L82-2: Formula: (let ((.cse0 (+ v_size_~t.offset_4 12))) (and (= |v_size_#t~mem30.offset_1| (select (select |v_#memory_$Pointer$.offset_32| v_size_~t.base_4) .cse0)) (<= 0 (+ |v_size_#t~ret29_2| 2147483648)) (<= |v_size_#t~ret29_2| 2147483647) (= |v_size_#t~mem30.base_1| (select (select |v_#memory_$Pointer$.base_32| v_size_~t.base_4) .cse0)))) InVars {size_~t.base=v_size_~t.base_4, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_32|, size_~t.offset=v_size_~t.offset_4, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_32|, size_#t~ret29=|v_size_#t~ret29_2|} OutVars{size_~t.base=v_size_~t.base_4, size_#t~mem30.base=|v_size_#t~mem30.base_1|, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_32|, size_#t~ret29=|v_size_#t~ret29_2|, size_#t~mem30.offset=|v_size_#t~mem30.offset_1|, size_~t.offset=v_size_~t.offset_4, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_32|} AuxVars[] AssignedVars[size_#t~mem30.base, size_#t~mem30.offset] {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-27 22:36:54,871 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {714#true} {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} [315] sizeEXIT-->L82-1: AOR: Formula: (= |v_size_#t~ret29_5| |v_size_#resOutParam_3|) InVars {size_#res=|v_size_#resOutParam_3|} OutVars{size_#t~ret29=|v_size_#t~ret29_5|} AuxVars[] AssignedVars[size_#t~ret29, size_#res] LVA: Formula: (and (= |v_size_#in~t.offsetInParam_3| |v_size_#t~mem28.offset_4|) (= |v_size_#in~t.baseInParam_3| |v_size_#t~mem28.base_4|)) InVars {size_#t~mem28.offset=|v_size_#t~mem28.offset_4|, size_#t~mem28.base=|v_size_#t~mem28.base_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_3|, size_#in~t.base=|v_size_#in~t.baseInParam_3|} AuxVars[] AssignedVars[size_#in~t.offset, size_#in~t.base, size_#t~mem28.base, size_#t~mem28.offset] {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-27 22:36:54,871 INFO L290 TraceCheckUtils]: 23: Hoare triple {714#true} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:54,872 INFO L290 TraceCheckUtils]: 22: Hoare triple {714#true} [232] L81-->sizeFINAL: Formula: (and (= v_size_~t.base_2 0) (= |v_size_#res_1| 0) (= v_size_~t.offset_2 0)) InVars {size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2} OutVars{size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2, size_#res=|v_size_#res_1|} AuxVars[] AssignedVars[size_#res] {714#true} is VALID [2022-04-27 22:36:54,872 INFO L290 TraceCheckUtils]: 21: Hoare triple {714#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {714#true} is VALID [2022-04-27 22:36:54,872 INFO L272 TraceCheckUtils]: 20: Hoare triple {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} [238] L82-->sizeENTRY: Formula: (and (= |v_size_#in~t.offsetInParam_3| |v_size_#t~mem28.offset_4|) (= |v_size_#in~t.baseInParam_3| |v_size_#t~mem28.base_4|)) InVars {size_#t~mem28.offset=|v_size_#t~mem28.offset_4|, size_#t~mem28.base=|v_size_#t~mem28.base_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_3|, size_#in~t.base=|v_size_#in~t.baseInParam_3|} AuxVars[] AssignedVars[size_#in~t.offset, size_#in~t.base, size_#t~mem28.base, size_#t~mem28.offset] {714#true} is VALID [2022-04-27 22:36:54,872 INFO L290 TraceCheckUtils]: 19: Hoare triple {1052#(or (not (= |size_#in~t.offset| 0)) (and (= size_~t.offset 0) (= size_~t.base 0)) (not (= |size_#in~t.base| 0)))} [233] L81-->L82: Formula: (let ((.cse0 (+ v_size_~t.offset_3 4))) (and (= (select (select |v_#memory_$Pointer$.base_31| v_size_~t.base_3) .cse0) |v_size_#t~mem28.base_1|) (or (not (= v_size_~t.base_3 0)) (not (= v_size_~t.offset_3 0))) (= |v_size_#t~mem28.offset_1| (select (select |v_#memory_$Pointer$.offset_31| v_size_~t.base_3) .cse0)))) InVars {size_~t.base=v_size_~t.base_3, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_31|, size_~t.offset=v_size_~t.offset_3, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_31|} OutVars{size_~t.base=v_size_~t.base_3, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_31|, size_#t~mem28.base=|v_size_#t~mem28.base_1|, size_~t.offset=v_size_~t.offset_3, size_#t~mem28.offset=|v_size_#t~mem28.offset_1|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_31|} AuxVars[] AssignedVars[size_#t~mem28.base, size_#t~mem28.offset] {765#(or (not (= |size_#in~t.offset| 0)) (not (= |size_#in~t.base| 0)))} is VALID [2022-04-27 22:36:54,873 INFO L290 TraceCheckUtils]: 18: Hoare triple {714#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {1052#(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 22:36:54,873 INFO L272 TraceCheckUtils]: 17: Hoare triple {724#(and (= task_~t.offset 0) (= task_~t.base 0))} [224] L89-->sizeENTRY: Formula: (and (= v_task_~t.base_8 |v_size_#in~t.baseInParam_1|) (= |v_size_#in~t.offsetInParam_1| v_task_~t.offset_8)) InVars {task_~t.offset=v_task_~t.offset_8, task_~t.base=v_task_~t.base_8} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_1|, size_#in~t.base=|v_size_#in~t.baseInParam_1|} AuxVars[] AssignedVars[task_~t.offset, size_#in~t.offset, size_#in~t.base, task_~t.base] {714#true} is VALID [2022-04-27 22:36:54,873 INFO L290 TraceCheckUtils]: 16: Hoare triple {724#(and (= task_~t.offset 0) (= task_~t.base 0))} [220] L86-1-->L89: Formula: (and (< |v_#StackHeapBarrier_5| |v_task_~#b~1.base_5|) (= |v_#length_16| (store |v_#length_17| |v_task_~#b~1.base_5| 4)) (not (= |v_task_~#b~1.base_5| 0)) (<= |v_task_#t~ret32_3| 2147483647) (= |v_task_#t~ret32_3| v_task_~a~1_3) (= (select |v_#valid_27| |v_task_~#b~1.base_5|) 0) (<= 0 (+ |v_task_#t~ret32_3| 2147483648)) (= |v_task_~#b~1.offset_5| 0) (= (store |v_#valid_27| |v_task_~#b~1.base_5| 1) |v_#valid_26|)) InVars {task_#t~ret32=|v_task_#t~ret32_3|, #StackHeapBarrier=|v_#StackHeapBarrier_5|, #length=|v_#length_17|, #valid=|v_#valid_27|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_5|, task_~#b~1.offset=|v_task_~#b~1.offset_5|, #valid=|v_#valid_26|, task_~#b~1.base=|v_task_~#b~1.base_5|, #length=|v_#length_16|, task_~a~1=v_task_~a~1_3} AuxVars[] AssignedVars[task_#t~ret32, task_~#b~1.offset, #valid, task_~#b~1.base, #length, task_~a~1] {724#(and (= task_~t.offset 0) (= task_~t.base 0))} is VALID [2022-04-27 22:36:54,874 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {714#true} {724#(and (= task_~t.offset 0) (= task_~t.base 0))} [312] minEXIT-->L86-1: AOR: Formula: (= |v_min_#resOutParam_3| |v_task_#t~ret32_4|) InVars {min_#res=|v_min_#resOutParam_3|} OutVars{task_#t~ret32=|v_task_#t~ret32_4|} AuxVars[] AssignedVars[task_#t~ret32, min_#res] LVA: Formula: (and (= v_task_~t.base_7 |v_min_#in~n.baseInParam_3|) (= |v_min_#in~n.offsetInParam_3| v_task_~t.offset_7)) InVars {task_~t.offset=v_task_~t.offset_7, task_~t.base=v_task_~t.base_7} OutVars{min_#in~n.base=|v_min_#in~n.baseInParam_3|, min_#in~n.offset=|v_min_#in~n.offsetInParam_3|} AuxVars[] AssignedVars[task_~t.offset, min_#in~n.offset, task_~t.base, min_#in~n.base] {724#(and (= task_~t.offset 0) (= task_~t.base 0))} is VALID [2022-04-27 22:36:54,874 INFO L290 TraceCheckUtils]: 14: Hoare triple {714#true} [229] minFINAL-->minEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:54,874 INFO L290 TraceCheckUtils]: 13: Hoare triple {714#true} [225] L37-->minFINAL: Formula: (and (= 2147483647 |v_min_#res_4|) (= v_min_~n.base_4 0) (= v_min_~n.offset_4 0)) InVars {min_~n.offset=v_min_~n.offset_4, min_~n.base=v_min_~n.base_4} OutVars{min_~n.offset=v_min_~n.offset_4, min_~n.base=v_min_~n.base_4, min_#res=|v_min_#res_4|} AuxVars[] AssignedVars[min_#res] {714#true} is VALID [2022-04-27 22:36:54,874 INFO L290 TraceCheckUtils]: 12: Hoare triple {714#true} [221] minENTRY-->L37: Formula: (and (= |v_min_#in~n.base_1| v_min_~n.base_3) (= v_min_~n.offset_3 |v_min_#in~n.offset_1|)) InVars {min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} OutVars{min_~n.offset=v_min_~n.offset_3, min_~n.base=v_min_~n.base_3, min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} AuxVars[] AssignedVars[min_~n.offset, min_~n.base] {714#true} is VALID [2022-04-27 22:36:54,874 INFO L272 TraceCheckUtils]: 11: Hoare triple {724#(and (= task_~t.offset 0) (= task_~t.base 0))} [218] L86-->minENTRY: Formula: (and (= v_task_~t.base_7 |v_min_#in~n.baseInParam_3|) (= |v_min_#in~n.offsetInParam_3| v_task_~t.offset_7)) InVars {task_~t.offset=v_task_~t.offset_7, task_~t.base=v_task_~t.base_7} OutVars{min_#in~n.base=|v_min_#in~n.baseInParam_3|, min_#in~n.offset=|v_min_#in~n.offsetInParam_3|} AuxVars[] AssignedVars[task_~t.offset, min_#in~n.offset, task_~t.base, min_#in~n.base] {714#true} is VALID [2022-04-27 22:36:54,875 INFO L290 TraceCheckUtils]: 10: Hoare triple {723#(and (= |task_#in~t.base| 0) (= |task_#in~t.offset| 0))} [214] taskENTRY-->L86: Formula: (and (= v_task_~t.base_4 |v_task_#in~t.base_1|) (= |v_task_#in~t.offset_1| v_task_~t.offset_4)) InVars {task_#in~t.base=|v_task_#in~t.base_1|, task_#in~t.offset=|v_task_#in~t.offset_1|} OutVars{task_~t.offset=v_task_~t.offset_4, task_#in~t.base=|v_task_#in~t.base_1|, task_#in~t.offset=|v_task_#in~t.offset_1|, task_~t.base=v_task_~t.base_4} AuxVars[] AssignedVars[task_~t.offset, task_~t.base] {724#(and (= task_~t.offset 0) (= task_~t.base 0))} is VALID [2022-04-27 22:36:54,875 INFO L272 TraceCheckUtils]: 9: Hoare triple {722#(and (= |main_#t~ret45.offset| 0) (= |main_#t~ret45.base| 0))} [210] L110-->taskENTRY: Formula: (and (= |v_main_#t~ret45.base_5| |v_task_#in~t.baseInParam_1|) (= |v_main_#t~ret45.offset_5| |v_task_#in~t.offsetInParam_1|)) InVars {main_#t~ret45.base=|v_main_#t~ret45.base_5|, main_#t~ret45.offset=|v_main_#t~ret45.offset_5|} OutVars{task_#in~t.base=|v_task_#in~t.baseInParam_1|, task_#in~t.offset=|v_task_#in~t.offsetInParam_1|} AuxVars[] AssignedVars[task_#in~t.offset, main_#t~ret45.offset, main_#t~ret45.base, task_#in~t.base] {723#(and (= |task_#in~t.base| 0) (= |task_#in~t.offset| 0))} is VALID [2022-04-27 22:36:54,876 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {758#(and (<= |nondet_tree_#res.offset| 0) (<= 0 |nondet_tree_#res.offset|) (<= |nondet_tree_#res.base| 0) (<= 0 |nondet_tree_#res.base|))} {714#true} [306] nondet_treeEXIT-->L110: AOR: Formula: (and (= |v_nondet_tree_#res.offsetOutParam_1| |v_main_#t~ret45.offset_4|) (= |v_nondet_tree_#res.baseOutParam_1| |v_main_#t~ret45.base_4|)) InVars {nondet_tree_#res.base=|v_nondet_tree_#res.baseOutParam_1|, nondet_tree_#res.offset=|v_nondet_tree_#res.offsetOutParam_1|} OutVars{main_#t~ret45.base=|v_main_#t~ret45.base_4|, main_#t~ret45.offset=|v_main_#t~ret45.offset_4|} AuxVars[] AssignedVars[main_#t~ret45.offset, main_#t~ret45.base, nondet_tree_#res.base, nondet_tree_#res.offset] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {722#(and (= |main_#t~ret45.offset| 0) (= |main_#t~ret45.base| 0))} is VALID [2022-04-27 22:36:54,876 INFO L290 TraceCheckUtils]: 7: Hoare triple {758#(and (<= |nondet_tree_#res.offset| 0) (<= 0 |nondet_tree_#res.offset|) (<= |nondet_tree_#res.base| 0) (<= 0 |nondet_tree_#res.base|))} [215] nondet_treeFINAL-->nondet_treeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {758#(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 22:36:54,877 INFO L290 TraceCheckUtils]: 6: Hoare triple {714#true} [211] nondet_treeENTRY-->nondet_treeFINAL: Formula: (and (= 0 |v_nondet_tree_#res.base_1|) (= |v_nondet_tree_#res.offset_1| 0) (not (= (mod |v_nondet_tree_#t~nondet5_2| 256) 0))) InVars {nondet_tree_#t~nondet5=|v_nondet_tree_#t~nondet5_2|} OutVars{nondet_tree_#res.base=|v_nondet_tree_#res.base_1|, nondet_tree_#res.offset=|v_nondet_tree_#res.offset_1|} AuxVars[] AssignedVars[nondet_tree_#t~nondet5, nondet_tree_#res.base, nondet_tree_#res.offset] {758#(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 22:36:54,877 INFO L272 TraceCheckUtils]: 5: Hoare triple {714#true} [208] mainENTRY-->nondet_treeENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:54,877 INFO L272 TraceCheckUtils]: 4: Hoare triple {714#true} [205] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:54,877 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {714#true} {714#true} [305] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:54,877 INFO L290 TraceCheckUtils]: 2: Hoare triple {714#true} [209] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:54,877 INFO L290 TraceCheckUtils]: 1: Hoare triple {714#true} [206] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_23| 1))) (and (< 0 |v_#StackHeapBarrier_2|) (= (select |v_#valid_15| 1) 1) (= (select |v_#valid_15| 2) 1) (= (select |v_#length_11| 2) 16) (= (select |v_#length_11| 3) 12) (= |v_#NULL.base_1| 0) (= (select |v_#valid_15| 0) 0) (= (select .cse0 0) 48) (= (select |v_#valid_15| 3) 1) (= (select .cse0 1) 0) (= 2 (select |v_#length_11| 1)) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_23|, #StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_11|, #valid=|v_#valid_15|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #valid=|v_#valid_15|, #memory_int=|v_#memory_int_23|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_11|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {714#true} is VALID [2022-04-27 22:36:54,877 INFO L272 TraceCheckUtils]: 0: Hoare triple {714#true} [204] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {714#true} is VALID [2022-04-27 22:36:54,878 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 22:36:54,878 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1993269164] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:36:54,878 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:36:54,878 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 8, 8] total 15 [2022-04-27 22:36:54,879 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1012637581] [2022-04-27 22:36:54,879 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:36:54,880 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 22:36:54,884 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:36:54,884 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 22:36:54,927 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 22:36:54,927 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-27 22:36:54,927 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:36:54,928 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-27 22:36:54,928 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=36, Invalid=174, Unknown=0, NotChecked=0, Total=210 [2022-04-27 22:36:54,928 INFO L87 Difference]: Start difference. First operand 91 states and 115 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 22:36:57,374 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:36:57,374 INFO L93 Difference]: Finished difference Result 165 states and 211 transitions. [2022-04-27 22:36:57,374 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-27 22:36:57,374 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 22:36:57,375 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:36:57,375 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 22:36:57,381 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 207 transitions. [2022-04-27 22:36:57,382 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 22:36:57,386 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 207 transitions. [2022-04-27 22:36:57,387 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 207 transitions. [2022-04-27 22:36:57,562 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 207 edges. 207 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:36:57,565 INFO L225 Difference]: With dead ends: 165 [2022-04-27 22:36:57,565 INFO L226 Difference]: Without dead ends: 97 [2022-04-27 22:36:57,566 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 147 GetRequests, 122 SyntacticMatches, 3 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 56 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=120, Invalid=432, Unknown=0, NotChecked=0, Total=552 [2022-04-27 22:36:57,566 INFO L413 NwaCegarLoop]: 72 mSDtfsCounter, 109 mSDsluCounter, 16 mSDsCounter, 0 mSdLazyCounter, 1003 mSolverCounterSat, 101 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 126 SdHoareTripleChecker+Valid, 88 SdHoareTripleChecker+Invalid, 1104 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 101 IncrementalHoareTripleChecker+Valid, 1003 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.1s IncrementalHoareTripleChecker+Time [2022-04-27 22:36:57,567 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [126 Valid, 88 Invalid, 1104 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [101 Valid, 1003 Invalid, 0 Unknown, 0 Unchecked, 1.1s Time] [2022-04-27 22:36:57,567 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 97 states. [2022-04-27 22:36:57,573 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 97 to 93. [2022-04-27 22:36:57,574 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:36:57,574 INFO L82 GeneralOperation]: Start isEquivalent. First operand 97 states. Second operand has 93 states, 56 states have (on average 1.1607142857142858) internal successors, (65), 58 states have internal predecessors, (65), 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 22:36:57,575 INFO L74 IsIncluded]: Start isIncluded. First operand 97 states. Second operand has 93 states, 56 states have (on average 1.1607142857142858) internal successors, (65), 58 states have internal predecessors, (65), 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 22:36:57,575 INFO L87 Difference]: Start difference. First operand 97 states. Second operand has 93 states, 56 states have (on average 1.1607142857142858) internal successors, (65), 58 states have internal predecessors, (65), 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 22:36:57,579 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:36:57,579 INFO L93 Difference]: Finished difference Result 97 states and 125 transitions. [2022-04-27 22:36:57,579 INFO L276 IsEmpty]: Start isEmpty. Operand 97 states and 125 transitions. [2022-04-27 22:36:57,580 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:36:57,580 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:36:57,580 INFO L74 IsIncluded]: Start isIncluded. First operand has 93 states, 56 states have (on average 1.1607142857142858) internal successors, (65), 58 states have internal predecessors, (65), 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 97 states. [2022-04-27 22:36:57,581 INFO L87 Difference]: Start difference. First operand has 93 states, 56 states have (on average 1.1607142857142858) internal successors, (65), 58 states have internal predecessors, (65), 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 97 states. [2022-04-27 22:36:57,584 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:36:57,584 INFO L93 Difference]: Finished difference Result 97 states and 125 transitions. [2022-04-27 22:36:57,584 INFO L276 IsEmpty]: Start isEmpty. Operand 97 states and 125 transitions. [2022-04-27 22:36:57,585 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:36:57,586 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:36:57,586 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:36:57,586 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:36:57,586 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 93 states, 56 states have (on average 1.1607142857142858) internal successors, (65), 58 states have internal predecessors, (65), 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 22:36:57,589 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 93 states to 93 states and 118 transitions. [2022-04-27 22:36:57,590 INFO L78 Accepts]: Start accepts. Automaton has 93 states and 118 transitions. Word has length 56 [2022-04-27 22:36:57,590 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:36:57,590 INFO L495 AbstractCegarLoop]: Abstraction has 93 states and 118 transitions. [2022-04-27 22:36:57,590 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 22:36:57,590 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 118 transitions. [2022-04-27 22:36:57,591 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 67 [2022-04-27 22:36:57,592 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:36:57,592 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 22:36:57,611 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 22:36:57,803 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:36:57,804 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:36:57,804 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:36:57,804 INFO L85 PathProgramCache]: Analyzing trace with hash 299143807, now seen corresponding path program 1 times [2022-04-27 22:36:57,804 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:36:57,804 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2057431773] [2022-04-27 22:36:57,805 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:36:57,805 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:36:57,833 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:57,884 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:36:57,886 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:57,891 INFO L290 TraceCheckUtils]: 0: Hoare triple {1734#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [206] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_23| 1))) (and (< 0 |v_#StackHeapBarrier_2|) (= (select |v_#valid_15| 1) 1) (= (select |v_#valid_15| 2) 1) (= (select |v_#length_11| 2) 16) (= (select |v_#length_11| 3) 12) (= |v_#NULL.base_1| 0) (= (select |v_#valid_15| 0) 0) (= (select .cse0 0) 48) (= (select |v_#valid_15| 3) 1) (= (select .cse0 1) 0) (= 2 (select |v_#length_11| 1)) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_23|, #StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_11|, #valid=|v_#valid_15|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #valid=|v_#valid_15|, #memory_int=|v_#memory_int_23|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_11|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1682#true} is VALID [2022-04-27 22:36:57,891 INFO L290 TraceCheckUtils]: 1: Hoare triple {1682#true} [209] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-27 22:36:57,891 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {1682#true} {1682#true} [305] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-27 22:36:57,901 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 5 [2022-04-27 22:36:57,917 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:57,953 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-04-27 22:36:57,956 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:57,959 INFO L290 TraceCheckUtils]: 0: Hoare triple {1735#(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|))} [211] nondet_treeENTRY-->nondet_treeFINAL: Formula: (and (= 0 |v_nondet_tree_#res.base_1|) (= |v_nondet_tree_#res.offset_1| 0) (not (= (mod |v_nondet_tree_#t~nondet5_2| 256) 0))) InVars {nondet_tree_#t~nondet5=|v_nondet_tree_#t~nondet5_2|} OutVars{nondet_tree_#res.base=|v_nondet_tree_#res.base_1|, nondet_tree_#res.offset=|v_nondet_tree_#res.offset_1|} AuxVars[] AssignedVars[nondet_tree_#t~nondet5, nondet_tree_#res.base, nondet_tree_#res.offset] {1682#true} is VALID [2022-04-27 22:36:57,959 INFO L290 TraceCheckUtils]: 1: Hoare triple {1682#true} [215] nondet_treeFINAL-->nondet_treeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-27 22:36:57,960 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {1682#true} {1736#(or (not (<= nondet_tree_~n~0.base 0)) (<= (+ nondet_tree_~n~0.base 1) 0))} [307] nondet_treeEXIT-->L30-1: AOR: Formula: (and (= |v_nondet_tree_#res.offsetOutParam_2| |v_nondet_tree_#t~ret8.offset_4|) (= |v_nondet_tree_#res.baseOutParam_2| |v_nondet_tree_#t~ret8.base_4|)) InVars {nondet_tree_#res.base=|v_nondet_tree_#res.baseOutParam_2|, nondet_tree_#res.offset=|v_nondet_tree_#res.offsetOutParam_2|} OutVars{nondet_tree_#t~ret8.base=|v_nondet_tree_#t~ret8.base_4|, nondet_tree_#t~ret8.offset=|v_nondet_tree_#t~ret8.offset_4|} AuxVars[] AssignedVars[nondet_tree_#t~ret8.offset, nondet_tree_#res.base, nondet_tree_#res.offset, nondet_tree_#t~ret8.base] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1736#(or (not (<= nondet_tree_~n~0.base 0)) (<= (+ nondet_tree_~n~0.base 1) 0))} is VALID [2022-04-27 22:36:57,960 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-27 22:36:57,961 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:57,964 INFO L290 TraceCheckUtils]: 0: Hoare triple {1735#(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|))} [211] nondet_treeENTRY-->nondet_treeFINAL: Formula: (and (= 0 |v_nondet_tree_#res.base_1|) (= |v_nondet_tree_#res.offset_1| 0) (not (= (mod |v_nondet_tree_#t~nondet5_2| 256) 0))) InVars {nondet_tree_#t~nondet5=|v_nondet_tree_#t~nondet5_2|} OutVars{nondet_tree_#res.base=|v_nondet_tree_#res.base_1|, nondet_tree_#res.offset=|v_nondet_tree_#res.offset_1|} AuxVars[] AssignedVars[nondet_tree_#t~nondet5, nondet_tree_#res.base, nondet_tree_#res.offset] {1682#true} is VALID [2022-04-27 22:36:57,964 INFO L290 TraceCheckUtils]: 1: Hoare triple {1682#true} [215] nondet_treeFINAL-->nondet_treeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-27 22:36:57,964 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {1682#true} {1736#(or (not (<= nondet_tree_~n~0.base 0)) (<= (+ nondet_tree_~n~0.base 1) 0))} [308] nondet_treeEXIT-->L31-1: AOR: Formula: (and (= |v_nondet_tree_#res.offsetOutParam_3| |v_nondet_tree_#t~ret9.offset_4|) (= |v_nondet_tree_#res.baseOutParam_3| |v_nondet_tree_#t~ret9.base_4|)) InVars {nondet_tree_#res.base=|v_nondet_tree_#res.baseOutParam_3|, nondet_tree_#res.offset=|v_nondet_tree_#res.offsetOutParam_3|} OutVars{nondet_tree_#t~ret9.offset=|v_nondet_tree_#t~ret9.offset_4|, nondet_tree_#t~ret9.base=|v_nondet_tree_#t~ret9.base_4|} AuxVars[] AssignedVars[nondet_tree_#t~ret9.base, nondet_tree_#res.base, nondet_tree_#res.offset, nondet_tree_#t~ret9.offset] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1736#(or (not (<= nondet_tree_~n~0.base 0)) (<= (+ nondet_tree_~n~0.base 1) 0))} is VALID [2022-04-27 22:36:57,965 INFO L290 TraceCheckUtils]: 0: Hoare triple {1735#(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|))} [212] nondet_treeENTRY-->L30: Formula: (and (= v_nondet_tree_~n~0.offset_1 0) (= (store |v_#length_6| v_nondet_tree_~n~0.base_1 20) |v_#length_5|) (= (mod |v_nondet_tree_#t~nondet5_4| 256) 0) (<= |v_nondet_tree_#t~nondet7_2| 2147483647) (not (= v_nondet_tree_~n~0.base_1 0)) (= |v_#memory_$Pointer$.base_15| (store |v_#memory_$Pointer$.base_16| v_nondet_tree_~n~0.base_1 (store (select |v_#memory_$Pointer$.base_16| v_nondet_tree_~n~0.base_1) v_nondet_tree_~n~0.offset_1 (select (select |v_#memory_$Pointer$.base_15| v_nondet_tree_~n~0.base_1) v_nondet_tree_~n~0.offset_1)))) (= (store |v_#memory_$Pointer$.offset_16| v_nondet_tree_~n~0.base_1 (store (select |v_#memory_$Pointer$.offset_16| v_nondet_tree_~n~0.base_1) v_nondet_tree_~n~0.offset_1 (select (select |v_#memory_$Pointer$.offset_15| v_nondet_tree_~n~0.base_1) v_nondet_tree_~n~0.offset_1))) |v_#memory_$Pointer$.offset_15|) (= (select |v_#valid_10| v_nondet_tree_~n~0.base_1) 0) (= |v_#memory_int_13| (store |v_#memory_int_14| v_nondet_tree_~n~0.base_1 (store (select |v_#memory_int_14| v_nondet_tree_~n~0.base_1) v_nondet_tree_~n~0.offset_1 |v_nondet_tree_#t~nondet7_2|))) (< v_nondet_tree_~n~0.base_1 |v_#StackHeapBarrier_1|) (<= 0 (+ |v_nondet_tree_#t~nondet7_2| 2147483648)) (= |v_#valid_9| (store |v_#valid_10| v_nondet_tree_~n~0.base_1 1))) InVars {nondet_tree_#t~nondet7=|v_nondet_tree_#t~nondet7_2|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_16|, nondet_tree_#t~nondet5=|v_nondet_tree_#t~nondet5_4|, #valid=|v_#valid_10|, #memory_int=|v_#memory_int_14|, #length=|v_#length_6|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_16|} OutVars{nondet_tree_~n~0.base=v_nondet_tree_~n~0.base_1, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_15|, nondet_tree_#t~malloc6.base=|v_nondet_tree_#t~malloc6.base_1|, nondet_tree_~n~0.offset=v_nondet_tree_~n~0.offset_1, #valid=|v_#valid_9|, #memory_int=|v_#memory_int_13|, #length=|v_#length_5|, nondet_tree_#t~malloc6.offset=|v_nondet_tree_#t~malloc6.offset_1|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_15|} AuxVars[] AssignedVars[nondet_tree_#t~nondet7, nondet_tree_~n~0.base, #memory_$Pointer$.base, nondet_tree_#t~malloc6.base, nondet_tree_#t~nondet5, nondet_tree_~n~0.offset, #valid, #memory_int, #length, nondet_tree_#t~malloc6.offset, #memory_$Pointer$.offset] {1736#(or (not (<= nondet_tree_~n~0.base 0)) (<= (+ nondet_tree_~n~0.base 1) 0))} is VALID [2022-04-27 22:36:57,966 INFO L272 TraceCheckUtils]: 1: Hoare triple {1736#(or (not (<= nondet_tree_~n~0.base 0)) (<= (+ nondet_tree_~n~0.base 1) 0))} [216] L30-->nondet_treeENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1735#(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 22:36:57,966 INFO L290 TraceCheckUtils]: 2: Hoare triple {1735#(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|))} [211] nondet_treeENTRY-->nondet_treeFINAL: Formula: (and (= 0 |v_nondet_tree_#res.base_1|) (= |v_nondet_tree_#res.offset_1| 0) (not (= (mod |v_nondet_tree_#t~nondet5_2| 256) 0))) InVars {nondet_tree_#t~nondet5=|v_nondet_tree_#t~nondet5_2|} OutVars{nondet_tree_#res.base=|v_nondet_tree_#res.base_1|, nondet_tree_#res.offset=|v_nondet_tree_#res.offset_1|} AuxVars[] AssignedVars[nondet_tree_#t~nondet5, nondet_tree_#res.base, nondet_tree_#res.offset] {1682#true} is VALID [2022-04-27 22:36:57,966 INFO L290 TraceCheckUtils]: 3: Hoare triple {1682#true} [215] nondet_treeFINAL-->nondet_treeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-27 22:36:57,967 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {1682#true} {1736#(or (not (<= nondet_tree_~n~0.base 0)) (<= (+ nondet_tree_~n~0.base 1) 0))} [307] nondet_treeEXIT-->L30-1: AOR: Formula: (and (= |v_nondet_tree_#res.offsetOutParam_2| |v_nondet_tree_#t~ret8.offset_4|) (= |v_nondet_tree_#res.baseOutParam_2| |v_nondet_tree_#t~ret8.base_4|)) InVars {nondet_tree_#res.base=|v_nondet_tree_#res.baseOutParam_2|, nondet_tree_#res.offset=|v_nondet_tree_#res.offsetOutParam_2|} OutVars{nondet_tree_#t~ret8.base=|v_nondet_tree_#t~ret8.base_4|, nondet_tree_#t~ret8.offset=|v_nondet_tree_#t~ret8.offset_4|} AuxVars[] AssignedVars[nondet_tree_#t~ret8.offset, nondet_tree_#res.base, nondet_tree_#res.offset, nondet_tree_#t~ret8.base] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1736#(or (not (<= nondet_tree_~n~0.base 0)) (<= (+ nondet_tree_~n~0.base 1) 0))} is VALID [2022-04-27 22:36:57,967 INFO L290 TraceCheckUtils]: 5: Hoare triple {1736#(or (not (<= nondet_tree_~n~0.base 0)) (<= (+ nondet_tree_~n~0.base 1) 0))} [219] L30-1-->L31: Formula: (let ((.cse0 (+ 4 v_nondet_tree_~n~0.offset_2))) (and (= (store |v_#memory_int_18| v_nondet_tree_~n~0.base_2 (store (select |v_#memory_int_18| v_nondet_tree_~n~0.base_2) .cse0 (select (select |v_#memory_int_17| v_nondet_tree_~n~0.base_2) .cse0))) |v_#memory_int_17|) (= (store |v_#memory_$Pointer$.offset_20| v_nondet_tree_~n~0.base_2 (store (select |v_#memory_$Pointer$.offset_20| v_nondet_tree_~n~0.base_2) .cse0 |v_nondet_tree_#t~ret8.offset_3|)) |v_#memory_$Pointer$.offset_19|) (= |v_#memory_$Pointer$.base_19| (store |v_#memory_$Pointer$.base_20| v_nondet_tree_~n~0.base_2 (store (select |v_#memory_$Pointer$.base_20| v_nondet_tree_~n~0.base_2) .cse0 |v_nondet_tree_#t~ret8.base_3|))))) InVars {nondet_tree_~n~0.base=v_nondet_tree_~n~0.base_2, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_20|, nondet_tree_~n~0.offset=v_nondet_tree_~n~0.offset_2, #memory_int=|v_#memory_int_18|, nondet_tree_#t~ret8.offset=|v_nondet_tree_#t~ret8.offset_3|, nondet_tree_#t~ret8.base=|v_nondet_tree_#t~ret8.base_3|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_20|} OutVars{#memory_int=|v_#memory_int_17|, nondet_tree_~n~0.base=v_nondet_tree_~n~0.base_2, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_19|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_19|, nondet_tree_~n~0.offset=v_nondet_tree_~n~0.offset_2} AuxVars[] AssignedVars[#memory_$Pointer$.base, #memory_int, nondet_tree_#t~ret8.offset, nondet_tree_#t~ret8.base, #memory_$Pointer$.offset] {1736#(or (not (<= nondet_tree_~n~0.base 0)) (<= (+ nondet_tree_~n~0.base 1) 0))} is VALID [2022-04-27 22:36:57,968 INFO L272 TraceCheckUtils]: 6: Hoare triple {1736#(or (not (<= nondet_tree_~n~0.base 0)) (<= (+ nondet_tree_~n~0.base 1) 0))} [223] L31-->nondet_treeENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1735#(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 22:36:57,968 INFO L290 TraceCheckUtils]: 7: Hoare triple {1735#(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|))} [211] nondet_treeENTRY-->nondet_treeFINAL: Formula: (and (= 0 |v_nondet_tree_#res.base_1|) (= |v_nondet_tree_#res.offset_1| 0) (not (= (mod |v_nondet_tree_#t~nondet5_2| 256) 0))) InVars {nondet_tree_#t~nondet5=|v_nondet_tree_#t~nondet5_2|} OutVars{nondet_tree_#res.base=|v_nondet_tree_#res.base_1|, nondet_tree_#res.offset=|v_nondet_tree_#res.offset_1|} AuxVars[] AssignedVars[nondet_tree_#t~nondet5, nondet_tree_#res.base, nondet_tree_#res.offset] {1682#true} is VALID [2022-04-27 22:36:57,968 INFO L290 TraceCheckUtils]: 8: Hoare triple {1682#true} [215] nondet_treeFINAL-->nondet_treeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-27 22:36:57,968 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {1682#true} {1736#(or (not (<= nondet_tree_~n~0.base 0)) (<= (+ nondet_tree_~n~0.base 1) 0))} [308] nondet_treeEXIT-->L31-1: AOR: Formula: (and (= |v_nondet_tree_#res.offsetOutParam_3| |v_nondet_tree_#t~ret9.offset_4|) (= |v_nondet_tree_#res.baseOutParam_3| |v_nondet_tree_#t~ret9.base_4|)) InVars {nondet_tree_#res.base=|v_nondet_tree_#res.baseOutParam_3|, nondet_tree_#res.offset=|v_nondet_tree_#res.offsetOutParam_3|} OutVars{nondet_tree_#t~ret9.offset=|v_nondet_tree_#t~ret9.offset_4|, nondet_tree_#t~ret9.base=|v_nondet_tree_#t~ret9.base_4|} AuxVars[] AssignedVars[nondet_tree_#t~ret9.base, nondet_tree_#res.base, nondet_tree_#res.offset, nondet_tree_#t~ret9.offset] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1736#(or (not (<= nondet_tree_~n~0.base 0)) (<= (+ nondet_tree_~n~0.base 1) 0))} is VALID [2022-04-27 22:36:57,969 INFO L290 TraceCheckUtils]: 10: Hoare triple {1736#(or (not (<= nondet_tree_~n~0.base 0)) (<= (+ nondet_tree_~n~0.base 1) 0))} [222] L31-1-->nondet_treeFINAL: Formula: (let ((.cse0 (+ 12 v_nondet_tree_~n~0.offset_3))) (and (= |v_nondet_tree_#res.offset_2| v_nondet_tree_~n~0.offset_3) (= (store |v_#memory_$Pointer$.base_24| v_nondet_tree_~n~0.base_3 (store (select |v_#memory_$Pointer$.base_24| v_nondet_tree_~n~0.base_3) .cse0 |v_nondet_tree_#t~ret9.base_3|)) |v_#memory_$Pointer$.base_23|) (= (store |v_#memory_$Pointer$.offset_24| v_nondet_tree_~n~0.base_3 (store (select |v_#memory_$Pointer$.offset_24| v_nondet_tree_~n~0.base_3) .cse0 |v_nondet_tree_#t~ret9.offset_3|)) |v_#memory_$Pointer$.offset_23|) (= (store |v_#memory_int_22| v_nondet_tree_~n~0.base_3 (store (select |v_#memory_int_22| v_nondet_tree_~n~0.base_3) .cse0 (select (select |v_#memory_int_21| v_nondet_tree_~n~0.base_3) .cse0))) |v_#memory_int_21|) (= v_nondet_tree_~n~0.base_3 |v_nondet_tree_#res.base_2|))) InVars {nondet_tree_~n~0.base=v_nondet_tree_~n~0.base_3, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_24|, nondet_tree_~n~0.offset=v_nondet_tree_~n~0.offset_3, #memory_int=|v_#memory_int_22|, nondet_tree_#t~ret9.base=|v_nondet_tree_#t~ret9.base_3|, nondet_tree_#t~ret9.offset=|v_nondet_tree_#t~ret9.offset_3|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_24|} OutVars{nondet_tree_~n~0.base=v_nondet_tree_~n~0.base_3, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_23|, nondet_tree_~n~0.offset=v_nondet_tree_~n~0.offset_3, #memory_int=|v_#memory_int_21|, nondet_tree_#res.base=|v_nondet_tree_#res.base_2|, nondet_tree_#res.offset=|v_nondet_tree_#res.offset_2|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_23|} AuxVars[] AssignedVars[#memory_$Pointer$.base, #memory_int, nondet_tree_#res.base, nondet_tree_#t~ret9.base, nondet_tree_#res.offset, nondet_tree_#t~ret9.offset, #memory_$Pointer$.offset] {1743#(or (<= 1 |nondet_tree_#res.base|) (<= (+ |nondet_tree_#res.base| 1) 0))} is VALID [2022-04-27 22:36:57,969 INFO L290 TraceCheckUtils]: 11: Hoare triple {1743#(or (<= 1 |nondet_tree_#res.base|) (<= (+ |nondet_tree_#res.base| 1) 0))} [215] nondet_treeFINAL-->nondet_treeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1743#(or (<= 1 |nondet_tree_#res.base|) (<= (+ |nondet_tree_#res.base| 1) 0))} is VALID [2022-04-27 22:36:57,970 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {1743#(or (<= 1 |nondet_tree_#res.base|) (<= (+ |nondet_tree_#res.base| 1) 0))} {1682#true} [306] nondet_treeEXIT-->L110: AOR: Formula: (and (= |v_nondet_tree_#res.offsetOutParam_1| |v_main_#t~ret45.offset_4|) (= |v_nondet_tree_#res.baseOutParam_1| |v_main_#t~ret45.base_4|)) InVars {nondet_tree_#res.base=|v_nondet_tree_#res.baseOutParam_1|, nondet_tree_#res.offset=|v_nondet_tree_#res.offsetOutParam_1|} OutVars{main_#t~ret45.base=|v_main_#t~ret45.base_4|, main_#t~ret45.offset=|v_main_#t~ret45.offset_4|} AuxVars[] AssignedVars[main_#t~ret45.offset, main_#t~ret45.base, nondet_tree_#res.base, nondet_tree_#res.offset] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1700#(not (= |main_#t~ret45.base| 0))} is VALID [2022-04-27 22:36:57,970 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 21 [2022-04-27 22:36:57,971 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:58,005 INFO L290 TraceCheckUtils]: 0: Hoare triple {1682#true} [221] minENTRY-->L37: Formula: (and (= |v_min_#in~n.base_1| v_min_~n.base_3) (= v_min_~n.offset_3 |v_min_#in~n.offset_1|)) InVars {min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} OutVars{min_~n.offset=v_min_~n.offset_3, min_~n.base=v_min_~n.base_3, min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} AuxVars[] AssignedVars[min_~n.offset, min_~n.base] {1744#(= min_~n.base |min_#in~n.base|)} is VALID [2022-04-27 22:36:58,006 INFO L290 TraceCheckUtils]: 1: Hoare triple {1744#(= min_~n.base |min_#in~n.base|)} [225] L37-->minFINAL: Formula: (and (= 2147483647 |v_min_#res_4|) (= v_min_~n.base_4 0) (= v_min_~n.offset_4 0)) InVars {min_~n.offset=v_min_~n.offset_4, min_~n.base=v_min_~n.base_4} OutVars{min_~n.offset=v_min_~n.offset_4, min_~n.base=v_min_~n.base_4, min_#res=|v_min_#res_4|} AuxVars[] AssignedVars[min_#res] {1745#(= |min_#in~n.base| 0)} is VALID [2022-04-27 22:36:58,006 INFO L290 TraceCheckUtils]: 2: Hoare triple {1745#(= |min_#in~n.base| 0)} [229] minFINAL-->minEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1745#(= |min_#in~n.base| 0)} is VALID [2022-04-27 22:36:58,007 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1745#(= |min_#in~n.base| 0)} {1702#(not (= task_~t.base 0))} [312] minEXIT-->L86-1: AOR: Formula: (= |v_min_#resOutParam_3| |v_task_#t~ret32_4|) InVars {min_#res=|v_min_#resOutParam_3|} OutVars{task_#t~ret32=|v_task_#t~ret32_4|} AuxVars[] AssignedVars[task_#t~ret32, min_#res] LVA: Formula: (and (= v_task_~t.base_7 |v_min_#in~n.baseInParam_3|) (= |v_min_#in~n.offsetInParam_3| v_task_~t.offset_7)) InVars {task_~t.offset=v_task_~t.offset_7, task_~t.base=v_task_~t.base_7} OutVars{min_#in~n.base=|v_min_#in~n.baseInParam_3|, min_#in~n.offset=|v_min_#in~n.offsetInParam_3|} AuxVars[] AssignedVars[task_~t.offset, min_#in~n.offset, task_~t.base, min_#in~n.base] {1683#false} is VALID [2022-04-27 22:36:58,007 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 27 [2022-04-27 22:36:58,010 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:58,015 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-04-27 22:36:58,016 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:58,020 INFO L290 TraceCheckUtils]: 0: Hoare triple {1682#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {1682#true} is VALID [2022-04-27 22:36:58,020 INFO L290 TraceCheckUtils]: 1: Hoare triple {1682#true} [232] L81-->sizeFINAL: Formula: (and (= v_size_~t.base_2 0) (= |v_size_#res_1| 0) (= v_size_~t.offset_2 0)) InVars {size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2} OutVars{size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2, size_#res=|v_size_#res_1|} AuxVars[] AssignedVars[size_#res] {1682#true} is VALID [2022-04-27 22:36:58,020 INFO L290 TraceCheckUtils]: 2: Hoare triple {1682#true} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-27 22:36:58,020 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1682#true} {1682#true} [315] sizeEXIT-->L82-1: AOR: Formula: (= |v_size_#t~ret29_5| |v_size_#resOutParam_3|) InVars {size_#res=|v_size_#resOutParam_3|} OutVars{size_#t~ret29=|v_size_#t~ret29_5|} AuxVars[] AssignedVars[size_#t~ret29, size_#res] LVA: Formula: (and (= |v_size_#in~t.offsetInParam_3| |v_size_#t~mem28.offset_4|) (= |v_size_#in~t.baseInParam_3| |v_size_#t~mem28.base_4|)) InVars {size_#t~mem28.offset=|v_size_#t~mem28.offset_4|, size_#t~mem28.base=|v_size_#t~mem28.base_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_3|, size_#in~t.base=|v_size_#in~t.baseInParam_3|} AuxVars[] AssignedVars[size_#in~t.offset, size_#in~t.base, size_#t~mem28.base, size_#t~mem28.offset] {1682#true} is VALID [2022-04-27 22:36:58,020 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 8 [2022-04-27 22:36:58,021 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:58,024 INFO L290 TraceCheckUtils]: 0: Hoare triple {1682#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {1682#true} is VALID [2022-04-27 22:36:58,024 INFO L290 TraceCheckUtils]: 1: Hoare triple {1682#true} [232] L81-->sizeFINAL: Formula: (and (= v_size_~t.base_2 0) (= |v_size_#res_1| 0) (= v_size_~t.offset_2 0)) InVars {size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2} OutVars{size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2, size_#res=|v_size_#res_1|} AuxVars[] AssignedVars[size_#res] {1682#true} is VALID [2022-04-27 22:36:58,024 INFO L290 TraceCheckUtils]: 2: Hoare triple {1682#true} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-27 22:36:58,025 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1682#true} {1682#true} [316] sizeEXIT-->L82-3: AOR: Formula: (= |v_size_#t~ret31_4| |v_size_#resOutParam_4|) InVars {size_#res=|v_size_#resOutParam_4|} OutVars{size_#t~ret31=|v_size_#t~ret31_4|} AuxVars[] AssignedVars[size_#res, size_#t~ret31] LVA: Formula: (and (= |v_size_#in~t.offsetInParam_4| |v_size_#t~mem30.offset_4|) (= |v_size_#t~mem30.base_4| |v_size_#in~t.baseInParam_4|)) InVars {size_#t~mem30.base=|v_size_#t~mem30.base_4|, size_#t~mem30.offset=|v_size_#t~mem30.offset_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_4|, size_#in~t.base=|v_size_#in~t.baseInParam_4|} AuxVars[] AssignedVars[size_#in~t.offset, size_#t~mem30.base, size_#in~t.base, size_#t~mem30.offset] {1682#true} is VALID [2022-04-27 22:36:58,025 INFO L290 TraceCheckUtils]: 0: Hoare triple {1682#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {1682#true} is VALID [2022-04-27 22:36:58,025 INFO L290 TraceCheckUtils]: 1: Hoare triple {1682#true} [233] L81-->L82: Formula: (let ((.cse0 (+ v_size_~t.offset_3 4))) (and (= (select (select |v_#memory_$Pointer$.base_31| v_size_~t.base_3) .cse0) |v_size_#t~mem28.base_1|) (or (not (= v_size_~t.base_3 0)) (not (= v_size_~t.offset_3 0))) (= |v_size_#t~mem28.offset_1| (select (select |v_#memory_$Pointer$.offset_31| v_size_~t.base_3) .cse0)))) InVars {size_~t.base=v_size_~t.base_3, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_31|, size_~t.offset=v_size_~t.offset_3, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_31|} OutVars{size_~t.base=v_size_~t.base_3, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_31|, size_#t~mem28.base=|v_size_#t~mem28.base_1|, size_~t.offset=v_size_~t.offset_3, size_#t~mem28.offset=|v_size_#t~mem28.offset_1|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_31|} AuxVars[] AssignedVars[size_#t~mem28.base, size_#t~mem28.offset] {1682#true} is VALID [2022-04-27 22:36:58,025 INFO L272 TraceCheckUtils]: 2: Hoare triple {1682#true} [238] L82-->sizeENTRY: Formula: (and (= |v_size_#in~t.offsetInParam_3| |v_size_#t~mem28.offset_4|) (= |v_size_#in~t.baseInParam_3| |v_size_#t~mem28.base_4|)) InVars {size_#t~mem28.offset=|v_size_#t~mem28.offset_4|, size_#t~mem28.base=|v_size_#t~mem28.base_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_3|, size_#in~t.base=|v_size_#in~t.baseInParam_3|} AuxVars[] AssignedVars[size_#in~t.offset, size_#in~t.base, size_#t~mem28.base, size_#t~mem28.offset] {1682#true} is VALID [2022-04-27 22:36:58,025 INFO L290 TraceCheckUtils]: 3: Hoare triple {1682#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {1682#true} is VALID [2022-04-27 22:36:58,025 INFO L290 TraceCheckUtils]: 4: Hoare triple {1682#true} [232] L81-->sizeFINAL: Formula: (and (= v_size_~t.base_2 0) (= |v_size_#res_1| 0) (= v_size_~t.offset_2 0)) InVars {size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2} OutVars{size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2, size_#res=|v_size_#res_1|} AuxVars[] AssignedVars[size_#res] {1682#true} is VALID [2022-04-27 22:36:58,025 INFO L290 TraceCheckUtils]: 5: Hoare triple {1682#true} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-27 22:36:58,025 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {1682#true} {1682#true} [315] sizeEXIT-->L82-1: AOR: Formula: (= |v_size_#t~ret29_5| |v_size_#resOutParam_3|) InVars {size_#res=|v_size_#resOutParam_3|} OutVars{size_#t~ret29=|v_size_#t~ret29_5|} AuxVars[] AssignedVars[size_#t~ret29, size_#res] LVA: Formula: (and (= |v_size_#in~t.offsetInParam_3| |v_size_#t~mem28.offset_4|) (= |v_size_#in~t.baseInParam_3| |v_size_#t~mem28.base_4|)) InVars {size_#t~mem28.offset=|v_size_#t~mem28.offset_4|, size_#t~mem28.base=|v_size_#t~mem28.base_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_3|, size_#in~t.base=|v_size_#in~t.baseInParam_3|} AuxVars[] AssignedVars[size_#in~t.offset, size_#in~t.base, size_#t~mem28.base, size_#t~mem28.offset] {1682#true} is VALID [2022-04-27 22:36:58,026 INFO L290 TraceCheckUtils]: 7: Hoare triple {1682#true} [244] L82-1-->L82-2: Formula: (let ((.cse0 (+ v_size_~t.offset_4 12))) (and (= |v_size_#t~mem30.offset_1| (select (select |v_#memory_$Pointer$.offset_32| v_size_~t.base_4) .cse0)) (<= 0 (+ |v_size_#t~ret29_2| 2147483648)) (<= |v_size_#t~ret29_2| 2147483647) (= |v_size_#t~mem30.base_1| (select (select |v_#memory_$Pointer$.base_32| v_size_~t.base_4) .cse0)))) InVars {size_~t.base=v_size_~t.base_4, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_32|, size_~t.offset=v_size_~t.offset_4, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_32|, size_#t~ret29=|v_size_#t~ret29_2|} OutVars{size_~t.base=v_size_~t.base_4, size_#t~mem30.base=|v_size_#t~mem30.base_1|, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_32|, size_#t~ret29=|v_size_#t~ret29_2|, size_#t~mem30.offset=|v_size_#t~mem30.offset_1|, size_~t.offset=v_size_~t.offset_4, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_32|} AuxVars[] AssignedVars[size_#t~mem30.base, size_#t~mem30.offset] {1682#true} is VALID [2022-04-27 22:36:58,026 INFO L272 TraceCheckUtils]: 8: Hoare triple {1682#true} [255] L82-2-->sizeENTRY: Formula: (and (= |v_size_#in~t.offsetInParam_4| |v_size_#t~mem30.offset_4|) (= |v_size_#t~mem30.base_4| |v_size_#in~t.baseInParam_4|)) InVars {size_#t~mem30.base=|v_size_#t~mem30.base_4|, size_#t~mem30.offset=|v_size_#t~mem30.offset_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_4|, size_#in~t.base=|v_size_#in~t.baseInParam_4|} AuxVars[] AssignedVars[size_#in~t.offset, size_#t~mem30.base, size_#in~t.base, size_#t~mem30.offset] {1682#true} is VALID [2022-04-27 22:36:58,026 INFO L290 TraceCheckUtils]: 9: Hoare triple {1682#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {1682#true} is VALID [2022-04-27 22:36:58,026 INFO L290 TraceCheckUtils]: 10: Hoare triple {1682#true} [232] L81-->sizeFINAL: Formula: (and (= v_size_~t.base_2 0) (= |v_size_#res_1| 0) (= v_size_~t.offset_2 0)) InVars {size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2} OutVars{size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2, size_#res=|v_size_#res_1|} AuxVars[] AssignedVars[size_#res] {1682#true} is VALID [2022-04-27 22:36:58,026 INFO L290 TraceCheckUtils]: 11: Hoare triple {1682#true} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-27 22:36:58,026 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {1682#true} {1682#true} [316] sizeEXIT-->L82-3: AOR: Formula: (= |v_size_#t~ret31_4| |v_size_#resOutParam_4|) InVars {size_#res=|v_size_#resOutParam_4|} OutVars{size_#t~ret31=|v_size_#t~ret31_4|} AuxVars[] AssignedVars[size_#res, size_#t~ret31] LVA: Formula: (and (= |v_size_#in~t.offsetInParam_4| |v_size_#t~mem30.offset_4|) (= |v_size_#t~mem30.base_4| |v_size_#in~t.baseInParam_4|)) InVars {size_#t~mem30.base=|v_size_#t~mem30.base_4|, size_#t~mem30.offset=|v_size_#t~mem30.offset_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_4|, size_#in~t.base=|v_size_#in~t.baseInParam_4|} AuxVars[] AssignedVars[size_#in~t.offset, size_#t~mem30.base, size_#in~t.base, size_#t~mem30.offset] {1682#true} is VALID [2022-04-27 22:36:58,026 INFO L290 TraceCheckUtils]: 13: Hoare triple {1682#true} [254] L82-3-->sizeFINAL: Formula: (and (<= |v_size_#t~ret31_3| 2147483647) (<= 0 (+ |v_size_#t~ret31_3| 2147483648)) (= (+ |v_size_#t~ret31_3| |v_size_#t~ret29_4| 1) |v_size_#res_2|)) InVars {size_#t~ret29=|v_size_#t~ret29_4|, size_#t~ret31=|v_size_#t~ret31_3|} OutVars{size_#t~mem30.base=|v_size_#t~mem30.base_3|, size_#t~mem30.offset=|v_size_#t~mem30.offset_3|, size_#t~mem28.offset=|v_size_#t~mem28.offset_3|, size_#res=|v_size_#res_2|, size_#t~mem28.base=|v_size_#t~mem28.base_3|} AuxVars[] AssignedVars[size_#t~mem30.base, size_#t~mem28.base, size_#t~ret29, size_#t~mem30.offset, size_#t~mem28.offset, size_#res, size_#t~ret31] {1682#true} is VALID [2022-04-27 22:36:58,026 INFO L290 TraceCheckUtils]: 14: Hoare triple {1682#true} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-27 22:36:58,026 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1682#true} {1683#false} [313] sizeEXIT-->L89-1: AOR: Formula: (= |v_task_#t~ret33_4| |v_size_#resOutParam_1|) InVars {size_#res=|v_size_#resOutParam_1|} OutVars{task_#t~ret33=|v_task_#t~ret33_4|} AuxVars[] AssignedVars[task_#t~ret33, size_#res] LVA: Formula: (and (= v_task_~t.base_8 |v_size_#in~t.baseInParam_1|) (= |v_size_#in~t.offsetInParam_1| v_task_~t.offset_8)) InVars {task_~t.offset=v_task_~t.offset_8, task_~t.base=v_task_~t.base_8} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_1|, size_#in~t.base=|v_size_#in~t.baseInParam_1|} AuxVars[] AssignedVars[task_~t.offset, size_#in~t.offset, size_#in~t.base, task_~t.base] {1683#false} is VALID [2022-04-27 22:36:58,027 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 45 [2022-04-27 22:36:58,027 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:58,034 INFO L290 TraceCheckUtils]: 0: Hoare triple {1682#true} [236] assume_cycle_if_notENTRY-->L9: Formula: (= v_assume_cycle_if_not_~cond_3 |v_assume_cycle_if_not_#in~cond_1|) InVars {assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~cond_1|} OutVars{assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~cond_1|, assume_cycle_if_not_~cond=v_assume_cycle_if_not_~cond_3} AuxVars[] AssignedVars[assume_cycle_if_not_~cond] {1682#true} is VALID [2022-04-27 22:36:58,034 INFO L290 TraceCheckUtils]: 1: Hoare triple {1682#true} [243] L9-->L9-5: Formula: (not (= v_assume_cycle_if_not_~cond_1 0)) InVars {assume_cycle_if_not_~cond=v_assume_cycle_if_not_~cond_1} OutVars{assume_cycle_if_not_~cond=v_assume_cycle_if_not_~cond_1} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-27 22:36:58,034 INFO L290 TraceCheckUtils]: 2: Hoare triple {1682#true} [252] L9-5-->assume_cycle_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-27 22:36:58,034 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1682#true} {1683#false} [317] assume_cycle_if_notEXIT-->L90-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_cycle_if_not_#in~condInParam_1| (ite (not (= v_task_~n~1_9 0)) 1 0)) InVars {task_~n~1=v_task_~n~1_9} OutVars{assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[task_~n~1, assume_cycle_if_not_#in~cond] {1683#false} is VALID [2022-04-27 22:36:58,041 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 51 [2022-04-27 22:36:58,042 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:58,047 INFO L290 TraceCheckUtils]: 0: Hoare triple {1754#(= |#memory_int| |old(#memory_int)|)} [248] #Ultimate.meminitENTRY-->#Ultimate.meminitFINAL: Formula: (= (store |v_#memory_int_12| |v_#Ultimate.meminit_#ptr.base_1| ((as const (Array Int Int)) 0)) |v_#memory_int_11|) InVars {#memory_int=|v_#memory_int_12|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} OutVars{#memory_int=|v_#memory_int_11|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} AuxVars[] AssignedVars[#memory_int] {1682#true} is VALID [2022-04-27 22:36:58,047 INFO L290 TraceCheckUtils]: 1: Hoare triple {1682#true} [259] #Ultimate.meminitFINAL-->#Ultimate.meminitEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-27 22:36:58,047 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {1682#true} {1683#false} [318] #Ultimate.meminitEXIT-->L91-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (and (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_task_#t~malloc34.offset_4|) (= v_task_~n~1_10 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_task_#t~malloc34.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= (* v_task_~n~1_10 4) |v_#Ultimate.meminit_#productInParam_1|)) InVars {task_#t~malloc34.base=|v_task_#t~malloc34.base_4|, task_~n~1=v_task_~n~1_10, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[task_~n~1, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, task_#t~malloc34.offset, task_#t~malloc34.base, #Ultimate.meminit_#product, #Ultimate.meminit_#ptr.base, #Ultimate.meminit_#ptr.offset] {1683#false} is VALID [2022-04-27 22:36:58,060 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 56 [2022-04-27 22:36:58,062 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:58,064 INFO L290 TraceCheckUtils]: 0: Hoare triple {1755#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} [262] tree_inorderENTRY-->L70: Formula: (and (= v_tree_inorder_~i_1 |v_tree_inorder_#in~i_1|) (= v_tree_inorder_~a.base_1 |v_tree_inorder_#in~a.base_1|) (= |v_tree_inorder_#in~t.offset_1| v_tree_inorder_~t.offset_1) (= |v_tree_inorder_#in~a.offset_1| v_tree_inorder_~a.offset_1) (= v_tree_inorder_~t.base_1 |v_tree_inorder_#in~t.base_1|)) InVars {tree_inorder_#in~i=|v_tree_inorder_#in~i_1|, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offset_1|, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.base_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offset_1|, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.base_1|} OutVars{tree_inorder_#in~i=|v_tree_inorder_#in~i_1|, tree_inorder_~a.base=v_tree_inorder_~a.base_1, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offset_1|, tree_inorder_~t.offset=v_tree_inorder_~t.offset_1, tree_inorder_~a.offset=v_tree_inorder_~a.offset_1, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.base_1|, tree_inorder_~t.base=v_tree_inorder_~t.base_1, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.base_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offset_1|, tree_inorder_~i=v_tree_inorder_~i_1} AuxVars[] AssignedVars[tree_inorder_~a.base, tree_inorder_~t.offset, tree_inorder_~a.offset, tree_inorder_~t.base, tree_inorder_~i] {1682#true} is VALID [2022-04-27 22:36:58,064 INFO L290 TraceCheckUtils]: 1: Hoare triple {1682#true} [265] L70-->tree_inorderFINAL: Formula: (and (= v_tree_inorder_~i_2 |v_tree_inorder_#res_1|) (= v_tree_inorder_~t.base_2 0) (= v_tree_inorder_~t.offset_2 0)) InVars {tree_inorder_~t.base=v_tree_inorder_~t.base_2, tree_inorder_~t.offset=v_tree_inorder_~t.offset_2, tree_inorder_~i=v_tree_inorder_~i_2} OutVars{tree_inorder_~t.base=v_tree_inorder_~t.base_2, tree_inorder_#res=|v_tree_inorder_#res_1|, tree_inorder_~t.offset=v_tree_inorder_~t.offset_2, tree_inorder_~i=v_tree_inorder_~i_2} AuxVars[] AssignedVars[tree_inorder_#res] {1682#true} is VALID [2022-04-27 22:36:58,065 INFO L290 TraceCheckUtils]: 2: Hoare triple {1682#true} [270] tree_inorderFINAL-->tree_inorderEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-27 22:36:58,065 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1682#true} {1683#false} [320] tree_inorderEXIT-->L92-1: AOR: Formula: (= |v_tree_inorder_#resOutParam_1| |v_task_#t~ret35_4|) InVars {tree_inorder_#res=|v_tree_inorder_#resOutParam_1|} OutVars{task_#t~ret35=|v_task_#t~ret35_4|} AuxVars[] AssignedVars[task_#t~ret35, tree_inorder_#res] LVA: Formula: (and (= v_task_~t.base_9 |v_tree_inorder_#in~t.baseInParam_1|) (= |v_tree_inorder_#in~a.baseInParam_1| v_task_~x~0.base_6) (= |v_tree_inorder_#in~t.offsetInParam_1| v_task_~t.offset_9) (= |v_tree_inorder_#in~a.offsetInParam_1| v_task_~x~0.offset_6) (= v_task_~n~1_11 |v_tree_inorder_#in~iInParam_1|)) InVars {task_~t.offset=v_task_~t.offset_9, task_~x~0.base=v_task_~x~0.base_6, task_~n~1=v_task_~n~1_11, task_~t.base=v_task_~t.base_9, task_~x~0.offset=v_task_~x~0.offset_6} OutVars{tree_inorder_#in~i=|v_tree_inorder_#in~iInParam_1|, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offsetInParam_1|, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.baseInParam_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offsetInParam_1|, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.baseInParam_1|} AuxVars[] AssignedVars[tree_inorder_#in~i, task_~t.offset, tree_inorder_#in~a.offset, task_~x~0.base, task_~n~1, tree_inorder_#in~a.base, tree_inorder_#in~t.base, tree_inorder_#in~t.offset, task_~t.base, task_~x~0.offset] {1683#false} is VALID [2022-04-27 22:36:58,065 INFO L272 TraceCheckUtils]: 0: Hoare triple {1682#true} [204] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1734#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:36:58,065 INFO L290 TraceCheckUtils]: 1: Hoare triple {1734#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [206] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_23| 1))) (and (< 0 |v_#StackHeapBarrier_2|) (= (select |v_#valid_15| 1) 1) (= (select |v_#valid_15| 2) 1) (= (select |v_#length_11| 2) 16) (= (select |v_#length_11| 3) 12) (= |v_#NULL.base_1| 0) (= (select |v_#valid_15| 0) 0) (= (select .cse0 0) 48) (= (select |v_#valid_15| 3) 1) (= (select .cse0 1) 0) (= 2 (select |v_#length_11| 1)) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_23|, #StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_11|, #valid=|v_#valid_15|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #valid=|v_#valid_15|, #memory_int=|v_#memory_int_23|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_11|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1682#true} is VALID [2022-04-27 22:36:58,066 INFO L290 TraceCheckUtils]: 2: Hoare triple {1682#true} [209] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-27 22:36:58,066 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1682#true} {1682#true} [305] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-27 22:36:58,066 INFO L272 TraceCheckUtils]: 4: Hoare triple {1682#true} [205] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-27 22:36:58,066 INFO L272 TraceCheckUtils]: 5: Hoare triple {1682#true} [208] mainENTRY-->nondet_treeENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1735#(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 22:36:58,067 INFO L290 TraceCheckUtils]: 6: Hoare triple {1735#(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|))} [212] nondet_treeENTRY-->L30: Formula: (and (= v_nondet_tree_~n~0.offset_1 0) (= (store |v_#length_6| v_nondet_tree_~n~0.base_1 20) |v_#length_5|) (= (mod |v_nondet_tree_#t~nondet5_4| 256) 0) (<= |v_nondet_tree_#t~nondet7_2| 2147483647) (not (= v_nondet_tree_~n~0.base_1 0)) (= |v_#memory_$Pointer$.base_15| (store |v_#memory_$Pointer$.base_16| v_nondet_tree_~n~0.base_1 (store (select |v_#memory_$Pointer$.base_16| v_nondet_tree_~n~0.base_1) v_nondet_tree_~n~0.offset_1 (select (select |v_#memory_$Pointer$.base_15| v_nondet_tree_~n~0.base_1) v_nondet_tree_~n~0.offset_1)))) (= (store |v_#memory_$Pointer$.offset_16| v_nondet_tree_~n~0.base_1 (store (select |v_#memory_$Pointer$.offset_16| v_nondet_tree_~n~0.base_1) v_nondet_tree_~n~0.offset_1 (select (select |v_#memory_$Pointer$.offset_15| v_nondet_tree_~n~0.base_1) v_nondet_tree_~n~0.offset_1))) |v_#memory_$Pointer$.offset_15|) (= (select |v_#valid_10| v_nondet_tree_~n~0.base_1) 0) (= |v_#memory_int_13| (store |v_#memory_int_14| v_nondet_tree_~n~0.base_1 (store (select |v_#memory_int_14| v_nondet_tree_~n~0.base_1) v_nondet_tree_~n~0.offset_1 |v_nondet_tree_#t~nondet7_2|))) (< v_nondet_tree_~n~0.base_1 |v_#StackHeapBarrier_1|) (<= 0 (+ |v_nondet_tree_#t~nondet7_2| 2147483648)) (= |v_#valid_9| (store |v_#valid_10| v_nondet_tree_~n~0.base_1 1))) InVars {nondet_tree_#t~nondet7=|v_nondet_tree_#t~nondet7_2|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_16|, nondet_tree_#t~nondet5=|v_nondet_tree_#t~nondet5_4|, #valid=|v_#valid_10|, #memory_int=|v_#memory_int_14|, #length=|v_#length_6|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_16|} OutVars{nondet_tree_~n~0.base=v_nondet_tree_~n~0.base_1, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_15|, nondet_tree_#t~malloc6.base=|v_nondet_tree_#t~malloc6.base_1|, nondet_tree_~n~0.offset=v_nondet_tree_~n~0.offset_1, #valid=|v_#valid_9|, #memory_int=|v_#memory_int_13|, #length=|v_#length_5|, nondet_tree_#t~malloc6.offset=|v_nondet_tree_#t~malloc6.offset_1|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_15|} AuxVars[] AssignedVars[nondet_tree_#t~nondet7, nondet_tree_~n~0.base, #memory_$Pointer$.base, nondet_tree_#t~malloc6.base, nondet_tree_#t~nondet5, nondet_tree_~n~0.offset, #valid, #memory_int, #length, nondet_tree_#t~malloc6.offset, #memory_$Pointer$.offset] {1736#(or (not (<= nondet_tree_~n~0.base 0)) (<= (+ nondet_tree_~n~0.base 1) 0))} is VALID [2022-04-27 22:36:58,068 INFO L272 TraceCheckUtils]: 7: Hoare triple {1736#(or (not (<= nondet_tree_~n~0.base 0)) (<= (+ nondet_tree_~n~0.base 1) 0))} [216] L30-->nondet_treeENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1735#(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 22:36:58,068 INFO L290 TraceCheckUtils]: 8: Hoare triple {1735#(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|))} [211] nondet_treeENTRY-->nondet_treeFINAL: Formula: (and (= 0 |v_nondet_tree_#res.base_1|) (= |v_nondet_tree_#res.offset_1| 0) (not (= (mod |v_nondet_tree_#t~nondet5_2| 256) 0))) InVars {nondet_tree_#t~nondet5=|v_nondet_tree_#t~nondet5_2|} OutVars{nondet_tree_#res.base=|v_nondet_tree_#res.base_1|, nondet_tree_#res.offset=|v_nondet_tree_#res.offset_1|} AuxVars[] AssignedVars[nondet_tree_#t~nondet5, nondet_tree_#res.base, nondet_tree_#res.offset] {1682#true} is VALID [2022-04-27 22:36:58,068 INFO L290 TraceCheckUtils]: 9: Hoare triple {1682#true} [215] nondet_treeFINAL-->nondet_treeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-27 22:36:58,068 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1682#true} {1736#(or (not (<= nondet_tree_~n~0.base 0)) (<= (+ nondet_tree_~n~0.base 1) 0))} [307] nondet_treeEXIT-->L30-1: AOR: Formula: (and (= |v_nondet_tree_#res.offsetOutParam_2| |v_nondet_tree_#t~ret8.offset_4|) (= |v_nondet_tree_#res.baseOutParam_2| |v_nondet_tree_#t~ret8.base_4|)) InVars {nondet_tree_#res.base=|v_nondet_tree_#res.baseOutParam_2|, nondet_tree_#res.offset=|v_nondet_tree_#res.offsetOutParam_2|} OutVars{nondet_tree_#t~ret8.base=|v_nondet_tree_#t~ret8.base_4|, nondet_tree_#t~ret8.offset=|v_nondet_tree_#t~ret8.offset_4|} AuxVars[] AssignedVars[nondet_tree_#t~ret8.offset, nondet_tree_#res.base, nondet_tree_#res.offset, nondet_tree_#t~ret8.base] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1736#(or (not (<= nondet_tree_~n~0.base 0)) (<= (+ nondet_tree_~n~0.base 1) 0))} is VALID [2022-04-27 22:36:58,069 INFO L290 TraceCheckUtils]: 11: Hoare triple {1736#(or (not (<= nondet_tree_~n~0.base 0)) (<= (+ nondet_tree_~n~0.base 1) 0))} [219] L30-1-->L31: Formula: (let ((.cse0 (+ 4 v_nondet_tree_~n~0.offset_2))) (and (= (store |v_#memory_int_18| v_nondet_tree_~n~0.base_2 (store (select |v_#memory_int_18| v_nondet_tree_~n~0.base_2) .cse0 (select (select |v_#memory_int_17| v_nondet_tree_~n~0.base_2) .cse0))) |v_#memory_int_17|) (= (store |v_#memory_$Pointer$.offset_20| v_nondet_tree_~n~0.base_2 (store (select |v_#memory_$Pointer$.offset_20| v_nondet_tree_~n~0.base_2) .cse0 |v_nondet_tree_#t~ret8.offset_3|)) |v_#memory_$Pointer$.offset_19|) (= |v_#memory_$Pointer$.base_19| (store |v_#memory_$Pointer$.base_20| v_nondet_tree_~n~0.base_2 (store (select |v_#memory_$Pointer$.base_20| v_nondet_tree_~n~0.base_2) .cse0 |v_nondet_tree_#t~ret8.base_3|))))) InVars {nondet_tree_~n~0.base=v_nondet_tree_~n~0.base_2, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_20|, nondet_tree_~n~0.offset=v_nondet_tree_~n~0.offset_2, #memory_int=|v_#memory_int_18|, nondet_tree_#t~ret8.offset=|v_nondet_tree_#t~ret8.offset_3|, nondet_tree_#t~ret8.base=|v_nondet_tree_#t~ret8.base_3|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_20|} OutVars{#memory_int=|v_#memory_int_17|, nondet_tree_~n~0.base=v_nondet_tree_~n~0.base_2, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_19|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_19|, nondet_tree_~n~0.offset=v_nondet_tree_~n~0.offset_2} AuxVars[] AssignedVars[#memory_$Pointer$.base, #memory_int, nondet_tree_#t~ret8.offset, nondet_tree_#t~ret8.base, #memory_$Pointer$.offset] {1736#(or (not (<= nondet_tree_~n~0.base 0)) (<= (+ nondet_tree_~n~0.base 1) 0))} is VALID [2022-04-27 22:36:58,069 INFO L272 TraceCheckUtils]: 12: Hoare triple {1736#(or (not (<= nondet_tree_~n~0.base 0)) (<= (+ nondet_tree_~n~0.base 1) 0))} [223] L31-->nondet_treeENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1735#(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 22:36:58,070 INFO L290 TraceCheckUtils]: 13: Hoare triple {1735#(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|))} [211] nondet_treeENTRY-->nondet_treeFINAL: Formula: (and (= 0 |v_nondet_tree_#res.base_1|) (= |v_nondet_tree_#res.offset_1| 0) (not (= (mod |v_nondet_tree_#t~nondet5_2| 256) 0))) InVars {nondet_tree_#t~nondet5=|v_nondet_tree_#t~nondet5_2|} OutVars{nondet_tree_#res.base=|v_nondet_tree_#res.base_1|, nondet_tree_#res.offset=|v_nondet_tree_#res.offset_1|} AuxVars[] AssignedVars[nondet_tree_#t~nondet5, nondet_tree_#res.base, nondet_tree_#res.offset] {1682#true} is VALID [2022-04-27 22:36:58,070 INFO L290 TraceCheckUtils]: 14: Hoare triple {1682#true} [215] nondet_treeFINAL-->nondet_treeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-27 22:36:58,070 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1682#true} {1736#(or (not (<= nondet_tree_~n~0.base 0)) (<= (+ nondet_tree_~n~0.base 1) 0))} [308] nondet_treeEXIT-->L31-1: AOR: Formula: (and (= |v_nondet_tree_#res.offsetOutParam_3| |v_nondet_tree_#t~ret9.offset_4|) (= |v_nondet_tree_#res.baseOutParam_3| |v_nondet_tree_#t~ret9.base_4|)) InVars {nondet_tree_#res.base=|v_nondet_tree_#res.baseOutParam_3|, nondet_tree_#res.offset=|v_nondet_tree_#res.offsetOutParam_3|} OutVars{nondet_tree_#t~ret9.offset=|v_nondet_tree_#t~ret9.offset_4|, nondet_tree_#t~ret9.base=|v_nondet_tree_#t~ret9.base_4|} AuxVars[] AssignedVars[nondet_tree_#t~ret9.base, nondet_tree_#res.base, nondet_tree_#res.offset, nondet_tree_#t~ret9.offset] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1736#(or (not (<= nondet_tree_~n~0.base 0)) (<= (+ nondet_tree_~n~0.base 1) 0))} is VALID [2022-04-27 22:36:58,071 INFO L290 TraceCheckUtils]: 16: Hoare triple {1736#(or (not (<= nondet_tree_~n~0.base 0)) (<= (+ nondet_tree_~n~0.base 1) 0))} [222] L31-1-->nondet_treeFINAL: Formula: (let ((.cse0 (+ 12 v_nondet_tree_~n~0.offset_3))) (and (= |v_nondet_tree_#res.offset_2| v_nondet_tree_~n~0.offset_3) (= (store |v_#memory_$Pointer$.base_24| v_nondet_tree_~n~0.base_3 (store (select |v_#memory_$Pointer$.base_24| v_nondet_tree_~n~0.base_3) .cse0 |v_nondet_tree_#t~ret9.base_3|)) |v_#memory_$Pointer$.base_23|) (= (store |v_#memory_$Pointer$.offset_24| v_nondet_tree_~n~0.base_3 (store (select |v_#memory_$Pointer$.offset_24| v_nondet_tree_~n~0.base_3) .cse0 |v_nondet_tree_#t~ret9.offset_3|)) |v_#memory_$Pointer$.offset_23|) (= (store |v_#memory_int_22| v_nondet_tree_~n~0.base_3 (store (select |v_#memory_int_22| v_nondet_tree_~n~0.base_3) .cse0 (select (select |v_#memory_int_21| v_nondet_tree_~n~0.base_3) .cse0))) |v_#memory_int_21|) (= v_nondet_tree_~n~0.base_3 |v_nondet_tree_#res.base_2|))) InVars {nondet_tree_~n~0.base=v_nondet_tree_~n~0.base_3, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_24|, nondet_tree_~n~0.offset=v_nondet_tree_~n~0.offset_3, #memory_int=|v_#memory_int_22|, nondet_tree_#t~ret9.base=|v_nondet_tree_#t~ret9.base_3|, nondet_tree_#t~ret9.offset=|v_nondet_tree_#t~ret9.offset_3|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_24|} OutVars{nondet_tree_~n~0.base=v_nondet_tree_~n~0.base_3, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_23|, nondet_tree_~n~0.offset=v_nondet_tree_~n~0.offset_3, #memory_int=|v_#memory_int_21|, nondet_tree_#res.base=|v_nondet_tree_#res.base_2|, nondet_tree_#res.offset=|v_nondet_tree_#res.offset_2|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_23|} AuxVars[] AssignedVars[#memory_$Pointer$.base, #memory_int, nondet_tree_#res.base, nondet_tree_#t~ret9.base, nondet_tree_#res.offset, nondet_tree_#t~ret9.offset, #memory_$Pointer$.offset] {1743#(or (<= 1 |nondet_tree_#res.base|) (<= (+ |nondet_tree_#res.base| 1) 0))} is VALID [2022-04-27 22:36:58,071 INFO L290 TraceCheckUtils]: 17: Hoare triple {1743#(or (<= 1 |nondet_tree_#res.base|) (<= (+ |nondet_tree_#res.base| 1) 0))} [215] nondet_treeFINAL-->nondet_treeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1743#(or (<= 1 |nondet_tree_#res.base|) (<= (+ |nondet_tree_#res.base| 1) 0))} is VALID [2022-04-27 22:36:58,072 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1743#(or (<= 1 |nondet_tree_#res.base|) (<= (+ |nondet_tree_#res.base| 1) 0))} {1682#true} [306] nondet_treeEXIT-->L110: AOR: Formula: (and (= |v_nondet_tree_#res.offsetOutParam_1| |v_main_#t~ret45.offset_4|) (= |v_nondet_tree_#res.baseOutParam_1| |v_main_#t~ret45.base_4|)) InVars {nondet_tree_#res.base=|v_nondet_tree_#res.baseOutParam_1|, nondet_tree_#res.offset=|v_nondet_tree_#res.offsetOutParam_1|} OutVars{main_#t~ret45.base=|v_main_#t~ret45.base_4|, main_#t~ret45.offset=|v_main_#t~ret45.offset_4|} AuxVars[] AssignedVars[main_#t~ret45.offset, main_#t~ret45.base, nondet_tree_#res.base, nondet_tree_#res.offset] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1700#(not (= |main_#t~ret45.base| 0))} is VALID [2022-04-27 22:36:58,072 INFO L272 TraceCheckUtils]: 19: Hoare triple {1700#(not (= |main_#t~ret45.base| 0))} [210] L110-->taskENTRY: Formula: (and (= |v_main_#t~ret45.base_5| |v_task_#in~t.baseInParam_1|) (= |v_main_#t~ret45.offset_5| |v_task_#in~t.offsetInParam_1|)) InVars {main_#t~ret45.base=|v_main_#t~ret45.base_5|, main_#t~ret45.offset=|v_main_#t~ret45.offset_5|} OutVars{task_#in~t.base=|v_task_#in~t.baseInParam_1|, task_#in~t.offset=|v_task_#in~t.offsetInParam_1|} AuxVars[] AssignedVars[task_#in~t.offset, main_#t~ret45.offset, main_#t~ret45.base, task_#in~t.base] {1701#(not (= |task_#in~t.base| 0))} is VALID [2022-04-27 22:36:58,072 INFO L290 TraceCheckUtils]: 20: Hoare triple {1701#(not (= |task_#in~t.base| 0))} [214] taskENTRY-->L86: Formula: (and (= v_task_~t.base_4 |v_task_#in~t.base_1|) (= |v_task_#in~t.offset_1| v_task_~t.offset_4)) InVars {task_#in~t.base=|v_task_#in~t.base_1|, task_#in~t.offset=|v_task_#in~t.offset_1|} OutVars{task_~t.offset=v_task_~t.offset_4, task_#in~t.base=|v_task_#in~t.base_1|, task_#in~t.offset=|v_task_#in~t.offset_1|, task_~t.base=v_task_~t.base_4} AuxVars[] AssignedVars[task_~t.offset, task_~t.base] {1702#(not (= task_~t.base 0))} is VALID [2022-04-27 22:36:58,073 INFO L272 TraceCheckUtils]: 21: Hoare triple {1702#(not (= task_~t.base 0))} [218] L86-->minENTRY: Formula: (and (= v_task_~t.base_7 |v_min_#in~n.baseInParam_3|) (= |v_min_#in~n.offsetInParam_3| v_task_~t.offset_7)) InVars {task_~t.offset=v_task_~t.offset_7, task_~t.base=v_task_~t.base_7} OutVars{min_#in~n.base=|v_min_#in~n.baseInParam_3|, min_#in~n.offset=|v_min_#in~n.offsetInParam_3|} AuxVars[] AssignedVars[task_~t.offset, min_#in~n.offset, task_~t.base, min_#in~n.base] {1682#true} is VALID [2022-04-27 22:36:58,073 INFO L290 TraceCheckUtils]: 22: Hoare triple {1682#true} [221] minENTRY-->L37: Formula: (and (= |v_min_#in~n.base_1| v_min_~n.base_3) (= v_min_~n.offset_3 |v_min_#in~n.offset_1|)) InVars {min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} OutVars{min_~n.offset=v_min_~n.offset_3, min_~n.base=v_min_~n.base_3, min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} AuxVars[] AssignedVars[min_~n.offset, min_~n.base] {1744#(= min_~n.base |min_#in~n.base|)} is VALID [2022-04-27 22:36:58,073 INFO L290 TraceCheckUtils]: 23: Hoare triple {1744#(= min_~n.base |min_#in~n.base|)} [225] L37-->minFINAL: Formula: (and (= 2147483647 |v_min_#res_4|) (= v_min_~n.base_4 0) (= v_min_~n.offset_4 0)) InVars {min_~n.offset=v_min_~n.offset_4, min_~n.base=v_min_~n.base_4} OutVars{min_~n.offset=v_min_~n.offset_4, min_~n.base=v_min_~n.base_4, min_#res=|v_min_#res_4|} AuxVars[] AssignedVars[min_#res] {1745#(= |min_#in~n.base| 0)} is VALID [2022-04-27 22:36:58,073 INFO L290 TraceCheckUtils]: 24: Hoare triple {1745#(= |min_#in~n.base| 0)} [229] minFINAL-->minEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1745#(= |min_#in~n.base| 0)} is VALID [2022-04-27 22:36:58,074 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {1745#(= |min_#in~n.base| 0)} {1702#(not (= task_~t.base 0))} [312] minEXIT-->L86-1: AOR: Formula: (= |v_min_#resOutParam_3| |v_task_#t~ret32_4|) InVars {min_#res=|v_min_#resOutParam_3|} OutVars{task_#t~ret32=|v_task_#t~ret32_4|} AuxVars[] AssignedVars[task_#t~ret32, min_#res] LVA: Formula: (and (= v_task_~t.base_7 |v_min_#in~n.baseInParam_3|) (= |v_min_#in~n.offsetInParam_3| v_task_~t.offset_7)) InVars {task_~t.offset=v_task_~t.offset_7, task_~t.base=v_task_~t.base_7} OutVars{min_#in~n.base=|v_min_#in~n.baseInParam_3|, min_#in~n.offset=|v_min_#in~n.offsetInParam_3|} AuxVars[] AssignedVars[task_~t.offset, min_#in~n.offset, task_~t.base, min_#in~n.base] {1683#false} is VALID [2022-04-27 22:36:58,074 INFO L290 TraceCheckUtils]: 26: Hoare triple {1683#false} [220] L86-1-->L89: Formula: (and (< |v_#StackHeapBarrier_5| |v_task_~#b~1.base_5|) (= |v_#length_16| (store |v_#length_17| |v_task_~#b~1.base_5| 4)) (not (= |v_task_~#b~1.base_5| 0)) (<= |v_task_#t~ret32_3| 2147483647) (= |v_task_#t~ret32_3| v_task_~a~1_3) (= (select |v_#valid_27| |v_task_~#b~1.base_5|) 0) (<= 0 (+ |v_task_#t~ret32_3| 2147483648)) (= |v_task_~#b~1.offset_5| 0) (= (store |v_#valid_27| |v_task_~#b~1.base_5| 1) |v_#valid_26|)) InVars {task_#t~ret32=|v_task_#t~ret32_3|, #StackHeapBarrier=|v_#StackHeapBarrier_5|, #length=|v_#length_17|, #valid=|v_#valid_27|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_5|, task_~#b~1.offset=|v_task_~#b~1.offset_5|, #valid=|v_#valid_26|, task_~#b~1.base=|v_task_~#b~1.base_5|, #length=|v_#length_16|, task_~a~1=v_task_~a~1_3} AuxVars[] AssignedVars[task_#t~ret32, task_~#b~1.offset, #valid, task_~#b~1.base, #length, task_~a~1] {1683#false} is VALID [2022-04-27 22:36:58,074 INFO L272 TraceCheckUtils]: 27: Hoare triple {1683#false} [224] L89-->sizeENTRY: Formula: (and (= v_task_~t.base_8 |v_size_#in~t.baseInParam_1|) (= |v_size_#in~t.offsetInParam_1| v_task_~t.offset_8)) InVars {task_~t.offset=v_task_~t.offset_8, task_~t.base=v_task_~t.base_8} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_1|, size_#in~t.base=|v_size_#in~t.baseInParam_1|} AuxVars[] AssignedVars[task_~t.offset, size_#in~t.offset, size_#in~t.base, task_~t.base] {1682#true} is VALID [2022-04-27 22:36:58,074 INFO L290 TraceCheckUtils]: 28: Hoare triple {1682#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {1682#true} is VALID [2022-04-27 22:36:58,074 INFO L290 TraceCheckUtils]: 29: Hoare triple {1682#true} [233] L81-->L82: Formula: (let ((.cse0 (+ v_size_~t.offset_3 4))) (and (= (select (select |v_#memory_$Pointer$.base_31| v_size_~t.base_3) .cse0) |v_size_#t~mem28.base_1|) (or (not (= v_size_~t.base_3 0)) (not (= v_size_~t.offset_3 0))) (= |v_size_#t~mem28.offset_1| (select (select |v_#memory_$Pointer$.offset_31| v_size_~t.base_3) .cse0)))) InVars {size_~t.base=v_size_~t.base_3, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_31|, size_~t.offset=v_size_~t.offset_3, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_31|} OutVars{size_~t.base=v_size_~t.base_3, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_31|, size_#t~mem28.base=|v_size_#t~mem28.base_1|, size_~t.offset=v_size_~t.offset_3, size_#t~mem28.offset=|v_size_#t~mem28.offset_1|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_31|} AuxVars[] AssignedVars[size_#t~mem28.base, size_#t~mem28.offset] {1682#true} is VALID [2022-04-27 22:36:58,075 INFO L272 TraceCheckUtils]: 30: Hoare triple {1682#true} [238] L82-->sizeENTRY: Formula: (and (= |v_size_#in~t.offsetInParam_3| |v_size_#t~mem28.offset_4|) (= |v_size_#in~t.baseInParam_3| |v_size_#t~mem28.base_4|)) InVars {size_#t~mem28.offset=|v_size_#t~mem28.offset_4|, size_#t~mem28.base=|v_size_#t~mem28.base_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_3|, size_#in~t.base=|v_size_#in~t.baseInParam_3|} AuxVars[] AssignedVars[size_#in~t.offset, size_#in~t.base, size_#t~mem28.base, size_#t~mem28.offset] {1682#true} is VALID [2022-04-27 22:36:58,077 INFO L290 TraceCheckUtils]: 31: Hoare triple {1682#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {1682#true} is VALID [2022-04-27 22:36:58,077 INFO L290 TraceCheckUtils]: 32: Hoare triple {1682#true} [232] L81-->sizeFINAL: Formula: (and (= v_size_~t.base_2 0) (= |v_size_#res_1| 0) (= v_size_~t.offset_2 0)) InVars {size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2} OutVars{size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2, size_#res=|v_size_#res_1|} AuxVars[] AssignedVars[size_#res] {1682#true} is VALID [2022-04-27 22:36:58,078 INFO L290 TraceCheckUtils]: 33: Hoare triple {1682#true} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-27 22:36:58,078 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {1682#true} {1682#true} [315] sizeEXIT-->L82-1: AOR: Formula: (= |v_size_#t~ret29_5| |v_size_#resOutParam_3|) InVars {size_#res=|v_size_#resOutParam_3|} OutVars{size_#t~ret29=|v_size_#t~ret29_5|} AuxVars[] AssignedVars[size_#t~ret29, size_#res] LVA: Formula: (and (= |v_size_#in~t.offsetInParam_3| |v_size_#t~mem28.offset_4|) (= |v_size_#in~t.baseInParam_3| |v_size_#t~mem28.base_4|)) InVars {size_#t~mem28.offset=|v_size_#t~mem28.offset_4|, size_#t~mem28.base=|v_size_#t~mem28.base_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_3|, size_#in~t.base=|v_size_#in~t.baseInParam_3|} AuxVars[] AssignedVars[size_#in~t.offset, size_#in~t.base, size_#t~mem28.base, size_#t~mem28.offset] {1682#true} is VALID [2022-04-27 22:36:58,078 INFO L290 TraceCheckUtils]: 35: Hoare triple {1682#true} [244] L82-1-->L82-2: Formula: (let ((.cse0 (+ v_size_~t.offset_4 12))) (and (= |v_size_#t~mem30.offset_1| (select (select |v_#memory_$Pointer$.offset_32| v_size_~t.base_4) .cse0)) (<= 0 (+ |v_size_#t~ret29_2| 2147483648)) (<= |v_size_#t~ret29_2| 2147483647) (= |v_size_#t~mem30.base_1| (select (select |v_#memory_$Pointer$.base_32| v_size_~t.base_4) .cse0)))) InVars {size_~t.base=v_size_~t.base_4, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_32|, size_~t.offset=v_size_~t.offset_4, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_32|, size_#t~ret29=|v_size_#t~ret29_2|} OutVars{size_~t.base=v_size_~t.base_4, size_#t~mem30.base=|v_size_#t~mem30.base_1|, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_32|, size_#t~ret29=|v_size_#t~ret29_2|, size_#t~mem30.offset=|v_size_#t~mem30.offset_1|, size_~t.offset=v_size_~t.offset_4, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_32|} AuxVars[] AssignedVars[size_#t~mem30.base, size_#t~mem30.offset] {1682#true} is VALID [2022-04-27 22:36:58,078 INFO L272 TraceCheckUtils]: 36: Hoare triple {1682#true} [255] L82-2-->sizeENTRY: Formula: (and (= |v_size_#in~t.offsetInParam_4| |v_size_#t~mem30.offset_4|) (= |v_size_#t~mem30.base_4| |v_size_#in~t.baseInParam_4|)) InVars {size_#t~mem30.base=|v_size_#t~mem30.base_4|, size_#t~mem30.offset=|v_size_#t~mem30.offset_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_4|, size_#in~t.base=|v_size_#in~t.baseInParam_4|} AuxVars[] AssignedVars[size_#in~t.offset, size_#t~mem30.base, size_#in~t.base, size_#t~mem30.offset] {1682#true} is VALID [2022-04-27 22:36:58,078 INFO L290 TraceCheckUtils]: 37: Hoare triple {1682#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {1682#true} is VALID [2022-04-27 22:36:58,078 INFO L290 TraceCheckUtils]: 38: Hoare triple {1682#true} [232] L81-->sizeFINAL: Formula: (and (= v_size_~t.base_2 0) (= |v_size_#res_1| 0) (= v_size_~t.offset_2 0)) InVars {size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2} OutVars{size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2, size_#res=|v_size_#res_1|} AuxVars[] AssignedVars[size_#res] {1682#true} is VALID [2022-04-27 22:36:58,078 INFO L290 TraceCheckUtils]: 39: Hoare triple {1682#true} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-27 22:36:58,078 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {1682#true} {1682#true} [316] sizeEXIT-->L82-3: AOR: Formula: (= |v_size_#t~ret31_4| |v_size_#resOutParam_4|) InVars {size_#res=|v_size_#resOutParam_4|} OutVars{size_#t~ret31=|v_size_#t~ret31_4|} AuxVars[] AssignedVars[size_#res, size_#t~ret31] LVA: Formula: (and (= |v_size_#in~t.offsetInParam_4| |v_size_#t~mem30.offset_4|) (= |v_size_#t~mem30.base_4| |v_size_#in~t.baseInParam_4|)) InVars {size_#t~mem30.base=|v_size_#t~mem30.base_4|, size_#t~mem30.offset=|v_size_#t~mem30.offset_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_4|, size_#in~t.base=|v_size_#in~t.baseInParam_4|} AuxVars[] AssignedVars[size_#in~t.offset, size_#t~mem30.base, size_#in~t.base, size_#t~mem30.offset] {1682#true} is VALID [2022-04-27 22:36:58,078 INFO L290 TraceCheckUtils]: 41: Hoare triple {1682#true} [254] L82-3-->sizeFINAL: Formula: (and (<= |v_size_#t~ret31_3| 2147483647) (<= 0 (+ |v_size_#t~ret31_3| 2147483648)) (= (+ |v_size_#t~ret31_3| |v_size_#t~ret29_4| 1) |v_size_#res_2|)) InVars {size_#t~ret29=|v_size_#t~ret29_4|, size_#t~ret31=|v_size_#t~ret31_3|} OutVars{size_#t~mem30.base=|v_size_#t~mem30.base_3|, size_#t~mem30.offset=|v_size_#t~mem30.offset_3|, size_#t~mem28.offset=|v_size_#t~mem28.offset_3|, size_#res=|v_size_#res_2|, size_#t~mem28.base=|v_size_#t~mem28.base_3|} AuxVars[] AssignedVars[size_#t~mem30.base, size_#t~mem28.base, size_#t~ret29, size_#t~mem30.offset, size_#t~mem28.offset, size_#res, size_#t~ret31] {1682#true} is VALID [2022-04-27 22:36:58,078 INFO L290 TraceCheckUtils]: 42: Hoare triple {1682#true} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-27 22:36:58,079 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {1682#true} {1683#false} [313] sizeEXIT-->L89-1: AOR: Formula: (= |v_task_#t~ret33_4| |v_size_#resOutParam_1|) InVars {size_#res=|v_size_#resOutParam_1|} OutVars{task_#t~ret33=|v_task_#t~ret33_4|} AuxVars[] AssignedVars[task_#t~ret33, size_#res] LVA: Formula: (and (= v_task_~t.base_8 |v_size_#in~t.baseInParam_1|) (= |v_size_#in~t.offsetInParam_1| v_task_~t.offset_8)) InVars {task_~t.offset=v_task_~t.offset_8, task_~t.base=v_task_~t.base_8} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_1|, size_#in~t.base=|v_size_#in~t.baseInParam_1|} AuxVars[] AssignedVars[task_~t.offset, size_#in~t.offset, size_#in~t.base, task_~t.base] {1683#false} is VALID [2022-04-27 22:36:58,079 INFO L290 TraceCheckUtils]: 44: Hoare triple {1683#false} [227] L89-1-->L90: Formula: (and (<= |v_task_#t~ret33_3| 2147483647) (<= 0 (+ |v_task_#t~ret33_3| 2147483648)) (= |v_task_#t~ret33_3| v_task_~n~1_8)) InVars {task_#t~ret33=|v_task_#t~ret33_3|} OutVars{task_~n~1=v_task_~n~1_8} AuxVars[] AssignedVars[task_#t~ret33, task_~n~1] {1683#false} is VALID [2022-04-27 22:36:58,079 INFO L272 TraceCheckUtils]: 45: Hoare triple {1683#false} [231] L90-->assume_cycle_if_notENTRY: Formula: (= |v_assume_cycle_if_not_#in~condInParam_1| (ite (not (= v_task_~n~1_9 0)) 1 0)) InVars {task_~n~1=v_task_~n~1_9} OutVars{assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[task_~n~1, assume_cycle_if_not_#in~cond] {1682#true} is VALID [2022-04-27 22:36:58,079 INFO L290 TraceCheckUtils]: 46: Hoare triple {1682#true} [236] assume_cycle_if_notENTRY-->L9: Formula: (= v_assume_cycle_if_not_~cond_3 |v_assume_cycle_if_not_#in~cond_1|) InVars {assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~cond_1|} OutVars{assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~cond_1|, assume_cycle_if_not_~cond=v_assume_cycle_if_not_~cond_3} AuxVars[] AssignedVars[assume_cycle_if_not_~cond] {1682#true} is VALID [2022-04-27 22:36:58,079 INFO L290 TraceCheckUtils]: 47: Hoare triple {1682#true} [243] L9-->L9-5: Formula: (not (= v_assume_cycle_if_not_~cond_1 0)) InVars {assume_cycle_if_not_~cond=v_assume_cycle_if_not_~cond_1} OutVars{assume_cycle_if_not_~cond=v_assume_cycle_if_not_~cond_1} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-27 22:36:58,079 INFO L290 TraceCheckUtils]: 48: Hoare triple {1682#true} [252] L9-5-->assume_cycle_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-27 22:36:58,079 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {1682#true} {1683#false} [317] assume_cycle_if_notEXIT-->L90-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_cycle_if_not_#in~condInParam_1| (ite (not (= v_task_~n~1_9 0)) 1 0)) InVars {task_~n~1=v_task_~n~1_9} OutVars{assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[task_~n~1, assume_cycle_if_not_#in~cond] {1683#false} is VALID [2022-04-27 22:36:58,079 INFO L290 TraceCheckUtils]: 50: Hoare triple {1683#false} [235] L90-1-->L91: Formula: (and (= (store |v_#length_13| |v_task_#t~malloc34.base_1| (* 4 v_task_~n~1_2)) |v_#length_12|) (< |v_task_#t~malloc34.base_1| |v_#StackHeapBarrier_3|) (= 0 |v_task_#t~malloc34.offset_1|) (= |v_#valid_16| (store |v_#valid_17| |v_task_#t~malloc34.base_1| 1)) (not (= |v_task_#t~malloc34.base_1| 0)) (= (select |v_#valid_17| |v_task_#t~malloc34.base_1|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_3|, #length=|v_#length_13|, task_~n~1=v_task_~n~1_2, #valid=|v_#valid_17|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_3|, task_~n~1=v_task_~n~1_2, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_1|, #valid=|v_#valid_16|, task_#t~malloc34.base=|v_task_#t~malloc34.base_1|, #length=|v_#length_12|} AuxVars[] AssignedVars[task_#t~malloc34.offset, #valid, task_#t~malloc34.base, #length] {1683#false} is VALID [2022-04-27 22:36:58,079 INFO L272 TraceCheckUtils]: 51: Hoare triple {1683#false} [241] L91-->#Ultimate.meminitENTRY: Formula: (and (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_task_#t~malloc34.offset_4|) (= v_task_~n~1_10 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_task_#t~malloc34.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= (* v_task_~n~1_10 4) |v_#Ultimate.meminit_#productInParam_1|)) InVars {task_#t~malloc34.base=|v_task_#t~malloc34.base_4|, task_~n~1=v_task_~n~1_10, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[task_~n~1, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, task_#t~malloc34.offset, task_#t~malloc34.base, #Ultimate.meminit_#product, #Ultimate.meminit_#ptr.base, #Ultimate.meminit_#ptr.offset] {1754#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-04-27 22:36:58,080 INFO L290 TraceCheckUtils]: 52: Hoare triple {1754#(= |#memory_int| |old(#memory_int)|)} [248] #Ultimate.meminitENTRY-->#Ultimate.meminitFINAL: Formula: (= (store |v_#memory_int_12| |v_#Ultimate.meminit_#ptr.base_1| ((as const (Array Int Int)) 0)) |v_#memory_int_11|) InVars {#memory_int=|v_#memory_int_12|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} OutVars{#memory_int=|v_#memory_int_11|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} AuxVars[] AssignedVars[#memory_int] {1682#true} is VALID [2022-04-27 22:36:58,080 INFO L290 TraceCheckUtils]: 53: Hoare triple {1682#true} [259] #Ultimate.meminitFINAL-->#Ultimate.meminitEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-27 22:36:58,080 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {1682#true} {1683#false} [318] #Ultimate.meminitEXIT-->L91-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (and (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_task_#t~malloc34.offset_4|) (= v_task_~n~1_10 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_task_#t~malloc34.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= (* v_task_~n~1_10 4) |v_#Ultimate.meminit_#productInParam_1|)) InVars {task_#t~malloc34.base=|v_task_#t~malloc34.base_4|, task_~n~1=v_task_~n~1_10, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[task_~n~1, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, task_#t~malloc34.offset, task_#t~malloc34.base, #Ultimate.meminit_#product, #Ultimate.meminit_#ptr.base, #Ultimate.meminit_#ptr.offset] {1683#false} is VALID [2022-04-27 22:36:58,080 INFO L290 TraceCheckUtils]: 55: Hoare triple {1683#false} [247] L91-1-->L92: Formula: (and (= v_task_~x~0.offset_1 |v_task_#t~malloc34.offset_3|) (= |v_task_#t~malloc34.base_3| v_task_~x~0.base_1)) InVars {task_#t~malloc34.base=|v_task_#t~malloc34.base_3|, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_3|} OutVars{task_#t~malloc34.base=|v_task_#t~malloc34.base_3|, task_~x~0.base=v_task_~x~0.base_1, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_3|, task_~x~0.offset=v_task_~x~0.offset_1} AuxVars[] AssignedVars[task_~x~0.base, task_~x~0.offset] {1683#false} is VALID [2022-04-27 22:36:58,080 INFO L272 TraceCheckUtils]: 56: Hoare triple {1683#false} [258] L92-->tree_inorderENTRY: Formula: (and (= v_task_~t.base_9 |v_tree_inorder_#in~t.baseInParam_1|) (= |v_tree_inorder_#in~a.baseInParam_1| v_task_~x~0.base_6) (= |v_tree_inorder_#in~t.offsetInParam_1| v_task_~t.offset_9) (= |v_tree_inorder_#in~a.offsetInParam_1| v_task_~x~0.offset_6) (= v_task_~n~1_11 |v_tree_inorder_#in~iInParam_1|)) InVars {task_~t.offset=v_task_~t.offset_9, task_~x~0.base=v_task_~x~0.base_6, task_~n~1=v_task_~n~1_11, task_~t.base=v_task_~t.base_9, task_~x~0.offset=v_task_~x~0.offset_6} OutVars{tree_inorder_#in~i=|v_tree_inorder_#in~iInParam_1|, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offsetInParam_1|, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.baseInParam_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offsetInParam_1|, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.baseInParam_1|} AuxVars[] AssignedVars[tree_inorder_#in~i, task_~t.offset, tree_inorder_#in~a.offset, task_~x~0.base, task_~n~1, tree_inorder_#in~a.base, tree_inorder_#in~t.base, tree_inorder_#in~t.offset, task_~t.base, task_~x~0.offset] {1755#(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 22:36:58,080 INFO L290 TraceCheckUtils]: 57: Hoare triple {1755#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} [262] tree_inorderENTRY-->L70: Formula: (and (= v_tree_inorder_~i_1 |v_tree_inorder_#in~i_1|) (= v_tree_inorder_~a.base_1 |v_tree_inorder_#in~a.base_1|) (= |v_tree_inorder_#in~t.offset_1| v_tree_inorder_~t.offset_1) (= |v_tree_inorder_#in~a.offset_1| v_tree_inorder_~a.offset_1) (= v_tree_inorder_~t.base_1 |v_tree_inorder_#in~t.base_1|)) InVars {tree_inorder_#in~i=|v_tree_inorder_#in~i_1|, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offset_1|, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.base_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offset_1|, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.base_1|} OutVars{tree_inorder_#in~i=|v_tree_inorder_#in~i_1|, tree_inorder_~a.base=v_tree_inorder_~a.base_1, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offset_1|, tree_inorder_~t.offset=v_tree_inorder_~t.offset_1, tree_inorder_~a.offset=v_tree_inorder_~a.offset_1, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.base_1|, tree_inorder_~t.base=v_tree_inorder_~t.base_1, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.base_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offset_1|, tree_inorder_~i=v_tree_inorder_~i_1} AuxVars[] AssignedVars[tree_inorder_~a.base, tree_inorder_~t.offset, tree_inorder_~a.offset, tree_inorder_~t.base, tree_inorder_~i] {1682#true} is VALID [2022-04-27 22:36:58,080 INFO L290 TraceCheckUtils]: 58: Hoare triple {1682#true} [265] L70-->tree_inorderFINAL: Formula: (and (= v_tree_inorder_~i_2 |v_tree_inorder_#res_1|) (= v_tree_inorder_~t.base_2 0) (= v_tree_inorder_~t.offset_2 0)) InVars {tree_inorder_~t.base=v_tree_inorder_~t.base_2, tree_inorder_~t.offset=v_tree_inorder_~t.offset_2, tree_inorder_~i=v_tree_inorder_~i_2} OutVars{tree_inorder_~t.base=v_tree_inorder_~t.base_2, tree_inorder_#res=|v_tree_inorder_#res_1|, tree_inorder_~t.offset=v_tree_inorder_~t.offset_2, tree_inorder_~i=v_tree_inorder_~i_2} AuxVars[] AssignedVars[tree_inorder_#res] {1682#true} is VALID [2022-04-27 22:36:58,080 INFO L290 TraceCheckUtils]: 59: Hoare triple {1682#true} [270] tree_inorderFINAL-->tree_inorderEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-27 22:36:58,080 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {1682#true} {1683#false} [320] tree_inorderEXIT-->L92-1: AOR: Formula: (= |v_tree_inorder_#resOutParam_1| |v_task_#t~ret35_4|) InVars {tree_inorder_#res=|v_tree_inorder_#resOutParam_1|} OutVars{task_#t~ret35=|v_task_#t~ret35_4|} AuxVars[] AssignedVars[task_#t~ret35, tree_inorder_#res] LVA: Formula: (and (= v_task_~t.base_9 |v_tree_inorder_#in~t.baseInParam_1|) (= |v_tree_inorder_#in~a.baseInParam_1| v_task_~x~0.base_6) (= |v_tree_inorder_#in~t.offsetInParam_1| v_task_~t.offset_9) (= |v_tree_inorder_#in~a.offsetInParam_1| v_task_~x~0.offset_6) (= v_task_~n~1_11 |v_tree_inorder_#in~iInParam_1|)) InVars {task_~t.offset=v_task_~t.offset_9, task_~x~0.base=v_task_~x~0.base_6, task_~n~1=v_task_~n~1_11, task_~t.base=v_task_~t.base_9, task_~x~0.offset=v_task_~x~0.offset_6} OutVars{tree_inorder_#in~i=|v_tree_inorder_#in~iInParam_1|, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offsetInParam_1|, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.baseInParam_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offsetInParam_1|, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.baseInParam_1|} AuxVars[] AssignedVars[tree_inorder_#in~i, task_~t.offset, tree_inorder_#in~a.offset, task_~x~0.base, task_~n~1, tree_inorder_#in~a.base, tree_inorder_#in~t.base, tree_inorder_#in~t.offset, task_~t.base, task_~x~0.offset] {1683#false} is VALID [2022-04-27 22:36:58,080 INFO L290 TraceCheckUtils]: 61: Hoare triple {1683#false} [261] L92-1-->L93: Formula: (and (<= 0 (+ |v_task_#t~ret35_3| 2147483648)) (= |v_task_#t~mem36_1| (select (select |v_#memory_int_28| v_task_~x~0.base_3) v_task_~x~0.offset_3)) (<= |v_task_#t~ret35_3| 2147483647)) InVars {#memory_int=|v_#memory_int_28|, task_~x~0.base=v_task_~x~0.base_3, task_#t~ret35=|v_task_#t~ret35_3|, task_~x~0.offset=v_task_~x~0.offset_3} OutVars{#memory_int=|v_#memory_int_28|, task_#t~mem36=|v_task_#t~mem36_1|, task_~x~0.base=v_task_~x~0.base_3, task_~x~0.offset=v_task_~x~0.offset_3} AuxVars[] AssignedVars[task_#t~ret35, task_#t~mem36] {1683#false} is VALID [2022-04-27 22:36:58,080 INFO L272 TraceCheckUtils]: 62: Hoare triple {1683#false} [264] L93-->__VERIFIER_assertENTRY: Formula: (= (ite (= |v_task_#t~mem36_4| v_task_~a~1_4) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {task_#t~mem36=|v_task_#t~mem36_4|, task_~a~1=v_task_~a~1_4} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, task_#t~mem36, task_~a~1] {1683#false} is VALID [2022-04-27 22:36:58,081 INFO L290 TraceCheckUtils]: 63: Hoare triple {1683#false} [269] __VERIFIER_assertENTRY-->L16: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1683#false} is VALID [2022-04-27 22:36:58,081 INFO L290 TraceCheckUtils]: 64: Hoare triple {1683#false} [274] L16-->L16-1: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1683#false} is VALID [2022-04-27 22:36:58,081 INFO L290 TraceCheckUtils]: 65: Hoare triple {1683#false} [280] L16-1-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1683#false} is VALID [2022-04-27 22:36:58,081 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 22:36:58,081 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:36:58,081 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2057431773] [2022-04-27 22:36:58,081 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2057431773] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 22:36:58,081 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 22:36:58,082 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-27 22:36:58,082 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1268393523] [2022-04-27 22:36:58,082 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 22:36:58,082 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 11 states have (on average 3.090909090909091) internal successors, (34), 7 states have internal predecessors, (34), 5 states have call successors, (14), 7 states have call predecessors, (14), 3 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) Word has length 66 [2022-04-27 22:36:58,082 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:36:58,083 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 22:36:58,131 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 22:36:58,132 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-27 22:36:58,132 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:36:58,132 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-27 22:36:58,132 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=130, Unknown=0, NotChecked=0, Total=156 [2022-04-27 22:36:58,133 INFO L87 Difference]: Start difference. First operand 93 states and 118 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 22:37:00,246 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:37:00,247 INFO L93 Difference]: Finished difference Result 164 states and 210 transitions. [2022-04-27 22:37:00,247 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-27 22:37:00,247 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 22:37:00,247 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:37:00,247 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 22:37:00,250 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 202 transitions. [2022-04-27 22:37:00,250 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 22:37:00,253 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 202 transitions. [2022-04-27 22:37:00,253 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 202 transitions. [2022-04-27 22:37:00,419 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 202 edges. 202 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:37:00,421 INFO L225 Difference]: With dead ends: 164 [2022-04-27 22:37:00,421 INFO L226 Difference]: Without dead ends: 99 [2022-04-27 22:37:00,422 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 42 GetRequests, 20 SyntacticMatches, 0 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 56 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=108, Invalid=444, Unknown=0, NotChecked=0, Total=552 [2022-04-27 22:37:00,423 INFO L413 NwaCegarLoop]: 70 mSDtfsCounter, 215 mSDsluCounter, 14 mSDsCounter, 0 mSdLazyCounter, 796 mSolverCounterSat, 202 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 217 SdHoareTripleChecker+Valid, 84 SdHoareTripleChecker+Invalid, 998 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 202 IncrementalHoareTripleChecker+Valid, 796 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.0s IncrementalHoareTripleChecker+Time [2022-04-27 22:37:00,423 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [217 Valid, 84 Invalid, 998 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [202 Valid, 796 Invalid, 0 Unknown, 0 Unchecked, 1.0s Time] [2022-04-27 22:37:00,424 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 99 states. [2022-04-27 22:37:00,453 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 99 to 95. [2022-04-27 22:37:00,453 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:37:00,454 INFO L82 GeneralOperation]: Start isEquivalent. First operand 99 states. Second operand has 95 states, 57 states have (on average 1.1578947368421053) internal successors, (66), 60 states have internal predecessors, (66), 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 22:37:00,454 INFO L74 IsIncluded]: Start isIncluded. First operand 99 states. Second operand has 95 states, 57 states have (on average 1.1578947368421053) internal successors, (66), 60 states have internal predecessors, (66), 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 22:37:00,455 INFO L87 Difference]: Start difference. First operand 99 states. Second operand has 95 states, 57 states have (on average 1.1578947368421053) internal successors, (66), 60 states have internal predecessors, (66), 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 22:37:00,458 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:37:00,458 INFO L93 Difference]: Finished difference Result 99 states and 128 transitions. [2022-04-27 22:37:00,458 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 128 transitions. [2022-04-27 22:37:00,458 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:37:00,458 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:37:00,459 INFO L74 IsIncluded]: Start isIncluded. First operand has 95 states, 57 states have (on average 1.1578947368421053) internal successors, (66), 60 states have internal predecessors, (66), 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 99 states. [2022-04-27 22:37:00,459 INFO L87 Difference]: Start difference. First operand has 95 states, 57 states have (on average 1.1578947368421053) internal successors, (66), 60 states have internal predecessors, (66), 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 99 states. [2022-04-27 22:37:00,462 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:37:00,462 INFO L93 Difference]: Finished difference Result 99 states and 128 transitions. [2022-04-27 22:37:00,462 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 128 transitions. [2022-04-27 22:37:00,463 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:37:00,463 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:37:00,463 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:37:00,463 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:37:00,463 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 95 states, 57 states have (on average 1.1578947368421053) internal successors, (66), 60 states have internal predecessors, (66), 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 22:37:00,465 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 95 states to 95 states and 121 transitions. [2022-04-27 22:37:00,466 INFO L78 Accepts]: Start accepts. Automaton has 95 states and 121 transitions. Word has length 66 [2022-04-27 22:37:00,466 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:37:00,466 INFO L495 AbstractCegarLoop]: Abstraction has 95 states and 121 transitions. [2022-04-27 22:37:00,466 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 22:37:00,466 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 121 transitions. [2022-04-27 22:37:00,467 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 80 [2022-04-27 22:37:00,467 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:37:00,467 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 22:37:00,467 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-04-27 22:37:00,467 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:37:00,468 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:37:00,468 INFO L85 PathProgramCache]: Analyzing trace with hash 1890335243, now seen corresponding path program 1 times [2022-04-27 22:37:00,468 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:37:00,468 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [472095378] [2022-04-27 22:37:00,468 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:37:00,468 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:37:00,528 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:37:00,561 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:37:00,562 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:37:00,564 INFO L290 TraceCheckUtils]: 0: Hoare triple {2403#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [206] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_23| 1))) (and (< 0 |v_#StackHeapBarrier_2|) (= (select |v_#valid_15| 1) 1) (= (select |v_#valid_15| 2) 1) (= (select |v_#length_11| 2) 16) (= (select |v_#length_11| 3) 12) (= |v_#NULL.base_1| 0) (= (select |v_#valid_15| 0) 0) (= (select .cse0 0) 48) (= (select |v_#valid_15| 3) 1) (= (select .cse0 1) 0) (= 2 (select |v_#length_11| 1)) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_23|, #StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_11|, #valid=|v_#valid_15|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #valid=|v_#valid_15|, #memory_int=|v_#memory_int_23|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_11|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {2337#true} is VALID [2022-04-27 22:37:00,565 INFO L290 TraceCheckUtils]: 1: Hoare triple {2337#true} [209] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:00,565 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {2337#true} {2337#true} [305] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:00,572 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 5 [2022-04-27 22:37:00,579 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:37:00,600 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-04-27 22:37:00,604 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:37:00,608 INFO L290 TraceCheckUtils]: 0: Hoare triple {2404#(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|))} [211] nondet_treeENTRY-->nondet_treeFINAL: Formula: (and (= 0 |v_nondet_tree_#res.base_1|) (= |v_nondet_tree_#res.offset_1| 0) (not (= (mod |v_nondet_tree_#t~nondet5_2| 256) 0))) InVars {nondet_tree_#t~nondet5=|v_nondet_tree_#t~nondet5_2|} OutVars{nondet_tree_#res.base=|v_nondet_tree_#res.base_1|, nondet_tree_#res.offset=|v_nondet_tree_#res.offset_1|} AuxVars[] AssignedVars[nondet_tree_#t~nondet5, nondet_tree_#res.base, nondet_tree_#res.offset] {2337#true} is VALID [2022-04-27 22:37:00,608 INFO L290 TraceCheckUtils]: 1: Hoare triple {2337#true} [215] nondet_treeFINAL-->nondet_treeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:00,609 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {2337#true} {2405#(= nondet_tree_~n~0.offset 0)} [307] nondet_treeEXIT-->L30-1: AOR: Formula: (and (= |v_nondet_tree_#res.offsetOutParam_2| |v_nondet_tree_#t~ret8.offset_4|) (= |v_nondet_tree_#res.baseOutParam_2| |v_nondet_tree_#t~ret8.base_4|)) InVars {nondet_tree_#res.base=|v_nondet_tree_#res.baseOutParam_2|, nondet_tree_#res.offset=|v_nondet_tree_#res.offsetOutParam_2|} OutVars{nondet_tree_#t~ret8.base=|v_nondet_tree_#t~ret8.base_4|, nondet_tree_#t~ret8.offset=|v_nondet_tree_#t~ret8.offset_4|} AuxVars[] AssignedVars[nondet_tree_#t~ret8.offset, nondet_tree_#res.base, nondet_tree_#res.offset, nondet_tree_#t~ret8.base] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2405#(= nondet_tree_~n~0.offset 0)} is VALID [2022-04-27 22:37:00,609 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-27 22:37:00,611 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:37:00,614 INFO L290 TraceCheckUtils]: 0: Hoare triple {2404#(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|))} [211] nondet_treeENTRY-->nondet_treeFINAL: Formula: (and (= 0 |v_nondet_tree_#res.base_1|) (= |v_nondet_tree_#res.offset_1| 0) (not (= (mod |v_nondet_tree_#t~nondet5_2| 256) 0))) InVars {nondet_tree_#t~nondet5=|v_nondet_tree_#t~nondet5_2|} OutVars{nondet_tree_#res.base=|v_nondet_tree_#res.base_1|, nondet_tree_#res.offset=|v_nondet_tree_#res.offset_1|} AuxVars[] AssignedVars[nondet_tree_#t~nondet5, nondet_tree_#res.base, nondet_tree_#res.offset] {2337#true} is VALID [2022-04-27 22:37:00,614 INFO L290 TraceCheckUtils]: 1: Hoare triple {2337#true} [215] nondet_treeFINAL-->nondet_treeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:00,614 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {2337#true} {2405#(= nondet_tree_~n~0.offset 0)} [308] nondet_treeEXIT-->L31-1: AOR: Formula: (and (= |v_nondet_tree_#res.offsetOutParam_3| |v_nondet_tree_#t~ret9.offset_4|) (= |v_nondet_tree_#res.baseOutParam_3| |v_nondet_tree_#t~ret9.base_4|)) InVars {nondet_tree_#res.base=|v_nondet_tree_#res.baseOutParam_3|, nondet_tree_#res.offset=|v_nondet_tree_#res.offsetOutParam_3|} OutVars{nondet_tree_#t~ret9.offset=|v_nondet_tree_#t~ret9.offset_4|, nondet_tree_#t~ret9.base=|v_nondet_tree_#t~ret9.base_4|} AuxVars[] AssignedVars[nondet_tree_#t~ret9.base, nondet_tree_#res.base, nondet_tree_#res.offset, nondet_tree_#t~ret9.offset] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2405#(= nondet_tree_~n~0.offset 0)} is VALID [2022-04-27 22:37:00,615 INFO L290 TraceCheckUtils]: 0: Hoare triple {2404#(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|))} [212] nondet_treeENTRY-->L30: Formula: (and (= v_nondet_tree_~n~0.offset_1 0) (= (store |v_#length_6| v_nondet_tree_~n~0.base_1 20) |v_#length_5|) (= (mod |v_nondet_tree_#t~nondet5_4| 256) 0) (<= |v_nondet_tree_#t~nondet7_2| 2147483647) (not (= v_nondet_tree_~n~0.base_1 0)) (= |v_#memory_$Pointer$.base_15| (store |v_#memory_$Pointer$.base_16| v_nondet_tree_~n~0.base_1 (store (select |v_#memory_$Pointer$.base_16| v_nondet_tree_~n~0.base_1) v_nondet_tree_~n~0.offset_1 (select (select |v_#memory_$Pointer$.base_15| v_nondet_tree_~n~0.base_1) v_nondet_tree_~n~0.offset_1)))) (= (store |v_#memory_$Pointer$.offset_16| v_nondet_tree_~n~0.base_1 (store (select |v_#memory_$Pointer$.offset_16| v_nondet_tree_~n~0.base_1) v_nondet_tree_~n~0.offset_1 (select (select |v_#memory_$Pointer$.offset_15| v_nondet_tree_~n~0.base_1) v_nondet_tree_~n~0.offset_1))) |v_#memory_$Pointer$.offset_15|) (= (select |v_#valid_10| v_nondet_tree_~n~0.base_1) 0) (= |v_#memory_int_13| (store |v_#memory_int_14| v_nondet_tree_~n~0.base_1 (store (select |v_#memory_int_14| v_nondet_tree_~n~0.base_1) v_nondet_tree_~n~0.offset_1 |v_nondet_tree_#t~nondet7_2|))) (< v_nondet_tree_~n~0.base_1 |v_#StackHeapBarrier_1|) (<= 0 (+ |v_nondet_tree_#t~nondet7_2| 2147483648)) (= |v_#valid_9| (store |v_#valid_10| v_nondet_tree_~n~0.base_1 1))) InVars {nondet_tree_#t~nondet7=|v_nondet_tree_#t~nondet7_2|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_16|, nondet_tree_#t~nondet5=|v_nondet_tree_#t~nondet5_4|, #valid=|v_#valid_10|, #memory_int=|v_#memory_int_14|, #length=|v_#length_6|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_16|} OutVars{nondet_tree_~n~0.base=v_nondet_tree_~n~0.base_1, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_15|, nondet_tree_#t~malloc6.base=|v_nondet_tree_#t~malloc6.base_1|, nondet_tree_~n~0.offset=v_nondet_tree_~n~0.offset_1, #valid=|v_#valid_9|, #memory_int=|v_#memory_int_13|, #length=|v_#length_5|, nondet_tree_#t~malloc6.offset=|v_nondet_tree_#t~malloc6.offset_1|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_15|} AuxVars[] AssignedVars[nondet_tree_#t~nondet7, nondet_tree_~n~0.base, #memory_$Pointer$.base, nondet_tree_#t~malloc6.base, nondet_tree_#t~nondet5, nondet_tree_~n~0.offset, #valid, #memory_int, #length, nondet_tree_#t~malloc6.offset, #memory_$Pointer$.offset] {2405#(= nondet_tree_~n~0.offset 0)} is VALID [2022-04-27 22:37:00,615 INFO L272 TraceCheckUtils]: 1: Hoare triple {2405#(= nondet_tree_~n~0.offset 0)} [216] L30-->nondet_treeENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2404#(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 22:37:00,615 INFO L290 TraceCheckUtils]: 2: Hoare triple {2404#(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|))} [211] nondet_treeENTRY-->nondet_treeFINAL: Formula: (and (= 0 |v_nondet_tree_#res.base_1|) (= |v_nondet_tree_#res.offset_1| 0) (not (= (mod |v_nondet_tree_#t~nondet5_2| 256) 0))) InVars {nondet_tree_#t~nondet5=|v_nondet_tree_#t~nondet5_2|} OutVars{nondet_tree_#res.base=|v_nondet_tree_#res.base_1|, nondet_tree_#res.offset=|v_nondet_tree_#res.offset_1|} AuxVars[] AssignedVars[nondet_tree_#t~nondet5, nondet_tree_#res.base, nondet_tree_#res.offset] {2337#true} is VALID [2022-04-27 22:37:00,615 INFO L290 TraceCheckUtils]: 3: Hoare triple {2337#true} [215] nondet_treeFINAL-->nondet_treeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:00,616 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {2337#true} {2405#(= nondet_tree_~n~0.offset 0)} [307] nondet_treeEXIT-->L30-1: AOR: Formula: (and (= |v_nondet_tree_#res.offsetOutParam_2| |v_nondet_tree_#t~ret8.offset_4|) (= |v_nondet_tree_#res.baseOutParam_2| |v_nondet_tree_#t~ret8.base_4|)) InVars {nondet_tree_#res.base=|v_nondet_tree_#res.baseOutParam_2|, nondet_tree_#res.offset=|v_nondet_tree_#res.offsetOutParam_2|} OutVars{nondet_tree_#t~ret8.base=|v_nondet_tree_#t~ret8.base_4|, nondet_tree_#t~ret8.offset=|v_nondet_tree_#t~ret8.offset_4|} AuxVars[] AssignedVars[nondet_tree_#t~ret8.offset, nondet_tree_#res.base, nondet_tree_#res.offset, nondet_tree_#t~ret8.base] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2405#(= nondet_tree_~n~0.offset 0)} is VALID [2022-04-27 22:37:00,616 INFO L290 TraceCheckUtils]: 5: Hoare triple {2405#(= nondet_tree_~n~0.offset 0)} [219] L30-1-->L31: Formula: (let ((.cse0 (+ 4 v_nondet_tree_~n~0.offset_2))) (and (= (store |v_#memory_int_18| v_nondet_tree_~n~0.base_2 (store (select |v_#memory_int_18| v_nondet_tree_~n~0.base_2) .cse0 (select (select |v_#memory_int_17| v_nondet_tree_~n~0.base_2) .cse0))) |v_#memory_int_17|) (= (store |v_#memory_$Pointer$.offset_20| v_nondet_tree_~n~0.base_2 (store (select |v_#memory_$Pointer$.offset_20| v_nondet_tree_~n~0.base_2) .cse0 |v_nondet_tree_#t~ret8.offset_3|)) |v_#memory_$Pointer$.offset_19|) (= |v_#memory_$Pointer$.base_19| (store |v_#memory_$Pointer$.base_20| v_nondet_tree_~n~0.base_2 (store (select |v_#memory_$Pointer$.base_20| v_nondet_tree_~n~0.base_2) .cse0 |v_nondet_tree_#t~ret8.base_3|))))) InVars {nondet_tree_~n~0.base=v_nondet_tree_~n~0.base_2, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_20|, nondet_tree_~n~0.offset=v_nondet_tree_~n~0.offset_2, #memory_int=|v_#memory_int_18|, nondet_tree_#t~ret8.offset=|v_nondet_tree_#t~ret8.offset_3|, nondet_tree_#t~ret8.base=|v_nondet_tree_#t~ret8.base_3|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_20|} OutVars{#memory_int=|v_#memory_int_17|, nondet_tree_~n~0.base=v_nondet_tree_~n~0.base_2, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_19|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_19|, nondet_tree_~n~0.offset=v_nondet_tree_~n~0.offset_2} AuxVars[] AssignedVars[#memory_$Pointer$.base, #memory_int, nondet_tree_#t~ret8.offset, nondet_tree_#t~ret8.base, #memory_$Pointer$.offset] {2405#(= nondet_tree_~n~0.offset 0)} is VALID [2022-04-27 22:37:00,616 INFO L272 TraceCheckUtils]: 6: Hoare triple {2405#(= nondet_tree_~n~0.offset 0)} [223] L31-->nondet_treeENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2404#(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 22:37:00,617 INFO L290 TraceCheckUtils]: 7: Hoare triple {2404#(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|))} [211] nondet_treeENTRY-->nondet_treeFINAL: Formula: (and (= 0 |v_nondet_tree_#res.base_1|) (= |v_nondet_tree_#res.offset_1| 0) (not (= (mod |v_nondet_tree_#t~nondet5_2| 256) 0))) InVars {nondet_tree_#t~nondet5=|v_nondet_tree_#t~nondet5_2|} OutVars{nondet_tree_#res.base=|v_nondet_tree_#res.base_1|, nondet_tree_#res.offset=|v_nondet_tree_#res.offset_1|} AuxVars[] AssignedVars[nondet_tree_#t~nondet5, nondet_tree_#res.base, nondet_tree_#res.offset] {2337#true} is VALID [2022-04-27 22:37:00,617 INFO L290 TraceCheckUtils]: 8: Hoare triple {2337#true} [215] nondet_treeFINAL-->nondet_treeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:00,617 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {2337#true} {2405#(= nondet_tree_~n~0.offset 0)} [308] nondet_treeEXIT-->L31-1: AOR: Formula: (and (= |v_nondet_tree_#res.offsetOutParam_3| |v_nondet_tree_#t~ret9.offset_4|) (= |v_nondet_tree_#res.baseOutParam_3| |v_nondet_tree_#t~ret9.base_4|)) InVars {nondet_tree_#res.base=|v_nondet_tree_#res.baseOutParam_3|, nondet_tree_#res.offset=|v_nondet_tree_#res.offsetOutParam_3|} OutVars{nondet_tree_#t~ret9.offset=|v_nondet_tree_#t~ret9.offset_4|, nondet_tree_#t~ret9.base=|v_nondet_tree_#t~ret9.base_4|} AuxVars[] AssignedVars[nondet_tree_#t~ret9.base, nondet_tree_#res.base, nondet_tree_#res.offset, nondet_tree_#t~ret9.offset] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2405#(= nondet_tree_~n~0.offset 0)} is VALID [2022-04-27 22:37:00,618 INFO L290 TraceCheckUtils]: 10: Hoare triple {2405#(= nondet_tree_~n~0.offset 0)} [222] L31-1-->nondet_treeFINAL: Formula: (let ((.cse0 (+ 12 v_nondet_tree_~n~0.offset_3))) (and (= |v_nondet_tree_#res.offset_2| v_nondet_tree_~n~0.offset_3) (= (store |v_#memory_$Pointer$.base_24| v_nondet_tree_~n~0.base_3 (store (select |v_#memory_$Pointer$.base_24| v_nondet_tree_~n~0.base_3) .cse0 |v_nondet_tree_#t~ret9.base_3|)) |v_#memory_$Pointer$.base_23|) (= (store |v_#memory_$Pointer$.offset_24| v_nondet_tree_~n~0.base_3 (store (select |v_#memory_$Pointer$.offset_24| v_nondet_tree_~n~0.base_3) .cse0 |v_nondet_tree_#t~ret9.offset_3|)) |v_#memory_$Pointer$.offset_23|) (= (store |v_#memory_int_22| v_nondet_tree_~n~0.base_3 (store (select |v_#memory_int_22| v_nondet_tree_~n~0.base_3) .cse0 (select (select |v_#memory_int_21| v_nondet_tree_~n~0.base_3) .cse0))) |v_#memory_int_21|) (= v_nondet_tree_~n~0.base_3 |v_nondet_tree_#res.base_2|))) InVars {nondet_tree_~n~0.base=v_nondet_tree_~n~0.base_3, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_24|, nondet_tree_~n~0.offset=v_nondet_tree_~n~0.offset_3, #memory_int=|v_#memory_int_22|, nondet_tree_#t~ret9.base=|v_nondet_tree_#t~ret9.base_3|, nondet_tree_#t~ret9.offset=|v_nondet_tree_#t~ret9.offset_3|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_24|} OutVars{nondet_tree_~n~0.base=v_nondet_tree_~n~0.base_3, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_23|, nondet_tree_~n~0.offset=v_nondet_tree_~n~0.offset_3, #memory_int=|v_#memory_int_21|, nondet_tree_#res.base=|v_nondet_tree_#res.base_2|, nondet_tree_#res.offset=|v_nondet_tree_#res.offset_2|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_23|} AuxVars[] AssignedVars[#memory_$Pointer$.base, #memory_int, nondet_tree_#res.base, nondet_tree_#t~ret9.base, nondet_tree_#res.offset, nondet_tree_#t~ret9.offset, #memory_$Pointer$.offset] {2412#(= |nondet_tree_#res.offset| 0)} is VALID [2022-04-27 22:37:00,618 INFO L290 TraceCheckUtils]: 11: Hoare triple {2412#(= |nondet_tree_#res.offset| 0)} [215] nondet_treeFINAL-->nondet_treeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2412#(= |nondet_tree_#res.offset| 0)} is VALID [2022-04-27 22:37:00,620 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {2412#(= |nondet_tree_#res.offset| 0)} {2337#true} [306] nondet_treeEXIT-->L110: AOR: Formula: (and (= |v_nondet_tree_#res.offsetOutParam_1| |v_main_#t~ret45.offset_4|) (= |v_nondet_tree_#res.baseOutParam_1| |v_main_#t~ret45.base_4|)) InVars {nondet_tree_#res.base=|v_nondet_tree_#res.baseOutParam_1|, nondet_tree_#res.offset=|v_nondet_tree_#res.offsetOutParam_1|} OutVars{main_#t~ret45.base=|v_main_#t~ret45.base_4|, main_#t~ret45.offset=|v_main_#t~ret45.offset_4|} AuxVars[] AssignedVars[main_#t~ret45.offset, main_#t~ret45.base, nondet_tree_#res.base, nondet_tree_#res.offset] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2355#(= |main_#t~ret45.offset| 0)} is VALID [2022-04-27 22:37:00,620 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 21 [2022-04-27 22:37:00,627 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:37:00,655 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-04-27 22:37:00,657 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:37:00,659 INFO L290 TraceCheckUtils]: 0: Hoare triple {2337#true} [221] minENTRY-->L37: Formula: (and (= |v_min_#in~n.base_1| v_min_~n.base_3) (= v_min_~n.offset_3 |v_min_#in~n.offset_1|)) InVars {min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} OutVars{min_~n.offset=v_min_~n.offset_3, min_~n.base=v_min_~n.base_3, min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} AuxVars[] AssignedVars[min_~n.offset, min_~n.base] {2337#true} is VALID [2022-04-27 22:37:00,659 INFO L290 TraceCheckUtils]: 1: Hoare triple {2337#true} [225] L37-->minFINAL: Formula: (and (= 2147483647 |v_min_#res_4|) (= v_min_~n.base_4 0) (= v_min_~n.offset_4 0)) InVars {min_~n.offset=v_min_~n.offset_4, min_~n.base=v_min_~n.base_4} OutVars{min_~n.offset=v_min_~n.offset_4, min_~n.base=v_min_~n.base_4, min_#res=|v_min_#res_4|} AuxVars[] AssignedVars[min_#res] {2337#true} is VALID [2022-04-27 22:37:00,659 INFO L290 TraceCheckUtils]: 2: Hoare triple {2337#true} [229] minFINAL-->minEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:00,660 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2337#true} {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} [310] minEXIT-->L41-1: AOR: Formula: (= |v_min_#resOutParam_1| |v_min_#t~ret12_4|) InVars {min_#res=|v_min_#resOutParam_1|} OutVars{min_#t~ret12=|v_min_#t~ret12_4|} AuxVars[] AssignedVars[min_#res, min_#t~ret12] LVA: Formula: (and (= |v_min_#t~mem11.offset_4| |v_min_#in~n.offsetInParam_1|) (= |v_min_#in~n.baseInParam_1| |v_min_#t~mem11.base_4|)) InVars {min_#t~mem11.base=|v_min_#t~mem11.base_4|, min_#t~mem11.offset=|v_min_#t~mem11.offset_4|} OutVars{min_#in~n.base=|v_min_#in~n.baseInParam_1|, min_#in~n.offset=|v_min_#in~n.offsetInParam_1|} AuxVars[] AssignedVars[min_#in~n.offset, min_#t~mem11.base, min_#in~n.base, min_#t~mem11.offset] {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} is VALID [2022-04-27 22:37:00,660 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 8 [2022-04-27 22:37:00,661 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:37:00,667 INFO L290 TraceCheckUtils]: 0: Hoare triple {2337#true} [221] minENTRY-->L37: Formula: (and (= |v_min_#in~n.base_1| v_min_~n.base_3) (= v_min_~n.offset_3 |v_min_#in~n.offset_1|)) InVars {min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} OutVars{min_~n.offset=v_min_~n.offset_3, min_~n.base=v_min_~n.base_3, min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} AuxVars[] AssignedVars[min_~n.offset, min_~n.base] {2337#true} is VALID [2022-04-27 22:37:00,667 INFO L290 TraceCheckUtils]: 1: Hoare triple {2337#true} [225] L37-->minFINAL: Formula: (and (= 2147483647 |v_min_#res_4|) (= v_min_~n.base_4 0) (= v_min_~n.offset_4 0)) InVars {min_~n.offset=v_min_~n.offset_4, min_~n.base=v_min_~n.base_4} OutVars{min_~n.offset=v_min_~n.offset_4, min_~n.base=v_min_~n.base_4, min_#res=|v_min_#res_4|} AuxVars[] AssignedVars[min_#res] {2337#true} is VALID [2022-04-27 22:37:00,667 INFO L290 TraceCheckUtils]: 2: Hoare triple {2337#true} [229] minFINAL-->minEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:00,667 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2337#true} {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} [311] minEXIT-->L42-1: AOR: Formula: (= |v_min_#resOutParam_2| |v_min_#t~ret14_4|) InVars {min_#res=|v_min_#resOutParam_2|} OutVars{min_#t~ret14=|v_min_#t~ret14_4|} AuxVars[] AssignedVars[min_#res, min_#t~ret14] LVA: Formula: (and (= |v_min_#t~mem13.base_4| |v_min_#in~n.baseInParam_2|) (= |v_min_#in~n.offsetInParam_2| |v_min_#t~mem13.offset_4|)) InVars {min_#t~mem13.base=|v_min_#t~mem13.base_4|, min_#t~mem13.offset=|v_min_#t~mem13.offset_4|} OutVars{min_#in~n.base=|v_min_#in~n.baseInParam_2|, min_#in~n.offset=|v_min_#in~n.offsetInParam_2|} AuxVars[] AssignedVars[min_#in~n.offset, min_#t~mem13.offset, min_#t~mem13.base, min_#in~n.base] {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} is VALID [2022-04-27 22:37:00,668 INFO L290 TraceCheckUtils]: 0: Hoare triple {2337#true} [221] minENTRY-->L37: Formula: (and (= |v_min_#in~n.base_1| v_min_~n.base_3) (= v_min_~n.offset_3 |v_min_#in~n.offset_1|)) InVars {min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} OutVars{min_~n.offset=v_min_~n.offset_3, min_~n.base=v_min_~n.base_3, min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} AuxVars[] AssignedVars[min_~n.offset, min_~n.base] {2413#(and (= min_~n.base |min_#in~n.base|) (= min_~n.offset |min_#in~n.offset|))} is VALID [2022-04-27 22:37:00,668 INFO L290 TraceCheckUtils]: 1: Hoare triple {2413#(and (= min_~n.base |min_#in~n.base|) (= min_~n.offset |min_#in~n.offset|))} [226] L37-->L41: Formula: (let ((.cse0 (+ v_min_~n.offset_1 4))) (and (= (select (select |v_#memory_$Pointer$.offset_13| v_min_~n.base_1) .cse0) |v_min_#t~mem11.offset_1|) (= v_min_~a~0_1 (select (select |v_#memory_int_10| v_min_~n.base_1) v_min_~n.offset_1)) (= |v_min_#t~mem11.base_1| (select (select |v_#memory_$Pointer$.base_13| v_min_~n.base_1) .cse0)) (or (not (= v_min_~n.base_1 0)) (not (= v_min_~n.offset_1 0))))) InVars {min_~n.offset=v_min_~n.offset_1, #memory_int=|v_#memory_int_10|, min_~n.base=v_min_~n.base_1, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_13|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_13|} OutVars{min_~n.offset=v_min_~n.offset_1, min_~n.base=v_min_~n.base_1, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_13|, min_~a~0=v_min_~a~0_1, min_#t~mem10=|v_min_#t~mem10_1|, #memory_int=|v_#memory_int_10|, min_#t~mem11.base=|v_min_#t~mem11.base_1|, min_#t~mem11.offset=|v_min_#t~mem11.offset_1|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_13|} AuxVars[] AssignedVars[min_~a~0, min_#t~mem10, min_#t~mem11.base, min_#t~mem11.offset] {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} is VALID [2022-04-27 22:37:00,668 INFO L272 TraceCheckUtils]: 2: Hoare triple {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} [230] L41-->minENTRY: Formula: (and (= |v_min_#t~mem11.offset_4| |v_min_#in~n.offsetInParam_1|) (= |v_min_#in~n.baseInParam_1| |v_min_#t~mem11.base_4|)) InVars {min_#t~mem11.base=|v_min_#t~mem11.base_4|, min_#t~mem11.offset=|v_min_#t~mem11.offset_4|} OutVars{min_#in~n.base=|v_min_#in~n.baseInParam_1|, min_#in~n.offset=|v_min_#in~n.offsetInParam_1|} AuxVars[] AssignedVars[min_#in~n.offset, min_#t~mem11.base, min_#in~n.base, min_#t~mem11.offset] {2337#true} is VALID [2022-04-27 22:37:00,668 INFO L290 TraceCheckUtils]: 3: Hoare triple {2337#true} [221] minENTRY-->L37: Formula: (and (= |v_min_#in~n.base_1| v_min_~n.base_3) (= v_min_~n.offset_3 |v_min_#in~n.offset_1|)) InVars {min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} OutVars{min_~n.offset=v_min_~n.offset_3, min_~n.base=v_min_~n.base_3, min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} AuxVars[] AssignedVars[min_~n.offset, min_~n.base] {2337#true} is VALID [2022-04-27 22:37:00,668 INFO L290 TraceCheckUtils]: 4: Hoare triple {2337#true} [225] L37-->minFINAL: Formula: (and (= 2147483647 |v_min_#res_4|) (= v_min_~n.base_4 0) (= v_min_~n.offset_4 0)) InVars {min_~n.offset=v_min_~n.offset_4, min_~n.base=v_min_~n.base_4} OutVars{min_~n.offset=v_min_~n.offset_4, min_~n.base=v_min_~n.base_4, min_#res=|v_min_#res_4|} AuxVars[] AssignedVars[min_#res] {2337#true} is VALID [2022-04-27 22:37:00,669 INFO L290 TraceCheckUtils]: 5: Hoare triple {2337#true} [229] minFINAL-->minEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:00,669 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {2337#true} {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} [310] minEXIT-->L41-1: AOR: Formula: (= |v_min_#resOutParam_1| |v_min_#t~ret12_4|) InVars {min_#res=|v_min_#resOutParam_1|} OutVars{min_#t~ret12=|v_min_#t~ret12_4|} AuxVars[] AssignedVars[min_#res, min_#t~ret12] LVA: Formula: (and (= |v_min_#t~mem11.offset_4| |v_min_#in~n.offsetInParam_1|) (= |v_min_#in~n.baseInParam_1| |v_min_#t~mem11.base_4|)) InVars {min_#t~mem11.base=|v_min_#t~mem11.base_4|, min_#t~mem11.offset=|v_min_#t~mem11.offset_4|} OutVars{min_#in~n.base=|v_min_#in~n.baseInParam_1|, min_#in~n.offset=|v_min_#in~n.offsetInParam_1|} AuxVars[] AssignedVars[min_#in~n.offset, min_#t~mem11.base, min_#in~n.base, min_#t~mem11.offset] {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} is VALID [2022-04-27 22:37:00,669 INFO L290 TraceCheckUtils]: 7: Hoare triple {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} [234] L41-1-->L42: Formula: (let ((.cse0 (+ v_min_~n.offset_2 12))) (and (<= |v_min_#t~ret12_3| 2147483647) (<= 0 (+ |v_min_#t~ret12_3| 2147483648)) (= (select (select |v_#memory_$Pointer$.offset_14| v_min_~n.base_2) .cse0) |v_min_#t~mem13.offset_1|) (= |v_min_#t~mem13.base_1| (select (select |v_#memory_$Pointer$.base_14| v_min_~n.base_2) .cse0)) (= v_min_~b~0_1 |v_min_#t~ret12_3|))) InVars {min_~n.offset=v_min_~n.offset_2, min_~n.base=v_min_~n.base_2, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_14|, min_#t~ret12=|v_min_#t~ret12_3|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_14|} OutVars{min_~n.offset=v_min_~n.offset_2, min_~n.base=v_min_~n.base_2, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_14|, min_~b~0=v_min_~b~0_1, min_#t~mem13.offset=|v_min_#t~mem13.offset_1|, min_#t~mem11.base=|v_min_#t~mem11.base_3|, min_#t~mem13.base=|v_min_#t~mem13.base_1|, min_#t~mem11.offset=|v_min_#t~mem11.offset_3|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_14|} AuxVars[] AssignedVars[min_~b~0, min_#t~mem13.offset, min_#t~mem11.base, min_#t~mem13.base, min_#t~ret12, min_#t~mem11.offset] {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} is VALID [2022-04-27 22:37:00,669 INFO L272 TraceCheckUtils]: 8: Hoare triple {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} [240] L42-->minENTRY: Formula: (and (= |v_min_#t~mem13.base_4| |v_min_#in~n.baseInParam_2|) (= |v_min_#in~n.offsetInParam_2| |v_min_#t~mem13.offset_4|)) InVars {min_#t~mem13.base=|v_min_#t~mem13.base_4|, min_#t~mem13.offset=|v_min_#t~mem13.offset_4|} OutVars{min_#in~n.base=|v_min_#in~n.baseInParam_2|, min_#in~n.offset=|v_min_#in~n.offsetInParam_2|} AuxVars[] AssignedVars[min_#in~n.offset, min_#t~mem13.offset, min_#t~mem13.base, min_#in~n.base] {2337#true} is VALID [2022-04-27 22:37:00,669 INFO L290 TraceCheckUtils]: 9: Hoare triple {2337#true} [221] minENTRY-->L37: Formula: (and (= |v_min_#in~n.base_1| v_min_~n.base_3) (= v_min_~n.offset_3 |v_min_#in~n.offset_1|)) InVars {min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} OutVars{min_~n.offset=v_min_~n.offset_3, min_~n.base=v_min_~n.base_3, min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} AuxVars[] AssignedVars[min_~n.offset, min_~n.base] {2337#true} is VALID [2022-04-27 22:37:00,669 INFO L290 TraceCheckUtils]: 10: Hoare triple {2337#true} [225] L37-->minFINAL: Formula: (and (= 2147483647 |v_min_#res_4|) (= v_min_~n.base_4 0) (= v_min_~n.offset_4 0)) InVars {min_~n.offset=v_min_~n.offset_4, min_~n.base=v_min_~n.base_4} OutVars{min_~n.offset=v_min_~n.offset_4, min_~n.base=v_min_~n.base_4, min_#res=|v_min_#res_4|} AuxVars[] AssignedVars[min_#res] {2337#true} is VALID [2022-04-27 22:37:00,670 INFO L290 TraceCheckUtils]: 11: Hoare triple {2337#true} [229] minFINAL-->minEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:00,670 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {2337#true} {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} [311] minEXIT-->L42-1: AOR: Formula: (= |v_min_#resOutParam_2| |v_min_#t~ret14_4|) InVars {min_#res=|v_min_#resOutParam_2|} OutVars{min_#t~ret14=|v_min_#t~ret14_4|} AuxVars[] AssignedVars[min_#res, min_#t~ret14] LVA: Formula: (and (= |v_min_#t~mem13.base_4| |v_min_#in~n.baseInParam_2|) (= |v_min_#in~n.offsetInParam_2| |v_min_#t~mem13.offset_4|)) InVars {min_#t~mem13.base=|v_min_#t~mem13.base_4|, min_#t~mem13.offset=|v_min_#t~mem13.offset_4|} OutVars{min_#in~n.base=|v_min_#in~n.baseInParam_2|, min_#in~n.offset=|v_min_#in~n.offsetInParam_2|} AuxVars[] AssignedVars[min_#in~n.offset, min_#t~mem13.offset, min_#t~mem13.base, min_#in~n.base] {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} is VALID [2022-04-27 22:37:00,670 INFO L290 TraceCheckUtils]: 13: Hoare triple {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} [239] L42-1-->L43: Formula: (and (<= |v_min_#t~ret14_3| 2147483647) (= v_min_~c~0_1 |v_min_#t~ret14_3|) (<= 0 (+ |v_min_#t~ret14_3| 2147483648))) InVars {min_#t~ret14=|v_min_#t~ret14_3|} OutVars{min_~c~0=v_min_~c~0_1, min_#t~mem13.offset=|v_min_#t~mem13.offset_3|, min_#t~mem13.base=|v_min_#t~mem13.base_3|} AuxVars[] AssignedVars[min_~c~0, min_#t~mem13.offset, min_#t~mem13.base, min_#t~ret14] {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} is VALID [2022-04-27 22:37:00,670 INFO L290 TraceCheckUtils]: 14: Hoare triple {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} [245] L43-->minFINAL: Formula: (and (<= v_min_~b~0_2 v_min_~c~0_2) (= v_min_~b~0_2 |v_min_#res_1|) (<= v_min_~b~0_2 v_min_~a~0_2)) InVars {min_~c~0=v_min_~c~0_2, min_~b~0=v_min_~b~0_2, min_~a~0=v_min_~a~0_2} OutVars{min_~c~0=v_min_~c~0_2, min_#res=|v_min_#res_1|, min_~b~0=v_min_~b~0_2, min_~a~0=v_min_~a~0_2} AuxVars[] AssignedVars[min_#res] {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} is VALID [2022-04-27 22:37:00,671 INFO L290 TraceCheckUtils]: 15: Hoare triple {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} [229] minFINAL-->minEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} is VALID [2022-04-27 22:37:00,671 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} {2357#(= task_~t.offset 0)} [312] minEXIT-->L86-1: AOR: Formula: (= |v_min_#resOutParam_3| |v_task_#t~ret32_4|) InVars {min_#res=|v_min_#resOutParam_3|} OutVars{task_#t~ret32=|v_task_#t~ret32_4|} AuxVars[] AssignedVars[task_#t~ret32, min_#res] LVA: Formula: (and (= v_task_~t.base_7 |v_min_#in~n.baseInParam_3|) (= |v_min_#in~n.offsetInParam_3| v_task_~t.offset_7)) InVars {task_~t.offset=v_task_~t.offset_7, task_~t.base=v_task_~t.base_7} OutVars{min_#in~n.base=|v_min_#in~n.baseInParam_3|, min_#in~n.offset=|v_min_#in~n.offsetInParam_3|} AuxVars[] AssignedVars[task_~t.offset, min_#in~n.offset, task_~t.base, min_#in~n.base] {2375#(not (= task_~t.base 0))} is VALID [2022-04-27 22:37:00,671 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 40 [2022-04-27 22:37:00,675 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:37:00,678 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-04-27 22:37:00,679 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:37:00,683 INFO L290 TraceCheckUtils]: 0: Hoare triple {2337#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {2337#true} is VALID [2022-04-27 22:37:00,683 INFO L290 TraceCheckUtils]: 1: Hoare triple {2337#true} [232] L81-->sizeFINAL: Formula: (and (= v_size_~t.base_2 0) (= |v_size_#res_1| 0) (= v_size_~t.offset_2 0)) InVars {size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2} OutVars{size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2, size_#res=|v_size_#res_1|} AuxVars[] AssignedVars[size_#res] {2337#true} is VALID [2022-04-27 22:37:00,683 INFO L290 TraceCheckUtils]: 2: Hoare triple {2337#true} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:00,683 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2337#true} {2337#true} [315] sizeEXIT-->L82-1: AOR: Formula: (= |v_size_#t~ret29_5| |v_size_#resOutParam_3|) InVars {size_#res=|v_size_#resOutParam_3|} OutVars{size_#t~ret29=|v_size_#t~ret29_5|} AuxVars[] AssignedVars[size_#t~ret29, size_#res] LVA: Formula: (and (= |v_size_#in~t.offsetInParam_3| |v_size_#t~mem28.offset_4|) (= |v_size_#in~t.baseInParam_3| |v_size_#t~mem28.base_4|)) InVars {size_#t~mem28.offset=|v_size_#t~mem28.offset_4|, size_#t~mem28.base=|v_size_#t~mem28.base_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_3|, size_#in~t.base=|v_size_#in~t.baseInParam_3|} AuxVars[] AssignedVars[size_#in~t.offset, size_#in~t.base, size_#t~mem28.base, size_#t~mem28.offset] {2337#true} is VALID [2022-04-27 22:37:00,683 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 8 [2022-04-27 22:37:00,684 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:37:00,686 INFO L290 TraceCheckUtils]: 0: Hoare triple {2337#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {2337#true} is VALID [2022-04-27 22:37:00,686 INFO L290 TraceCheckUtils]: 1: Hoare triple {2337#true} [232] L81-->sizeFINAL: Formula: (and (= v_size_~t.base_2 0) (= |v_size_#res_1| 0) (= v_size_~t.offset_2 0)) InVars {size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2} OutVars{size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2, size_#res=|v_size_#res_1|} AuxVars[] AssignedVars[size_#res] {2337#true} is VALID [2022-04-27 22:37:00,687 INFO L290 TraceCheckUtils]: 2: Hoare triple {2337#true} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:00,687 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2337#true} {2337#true} [316] sizeEXIT-->L82-3: AOR: Formula: (= |v_size_#t~ret31_4| |v_size_#resOutParam_4|) InVars {size_#res=|v_size_#resOutParam_4|} OutVars{size_#t~ret31=|v_size_#t~ret31_4|} AuxVars[] AssignedVars[size_#res, size_#t~ret31] LVA: Formula: (and (= |v_size_#in~t.offsetInParam_4| |v_size_#t~mem30.offset_4|) (= |v_size_#t~mem30.base_4| |v_size_#in~t.baseInParam_4|)) InVars {size_#t~mem30.base=|v_size_#t~mem30.base_4|, size_#t~mem30.offset=|v_size_#t~mem30.offset_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_4|, size_#in~t.base=|v_size_#in~t.baseInParam_4|} AuxVars[] AssignedVars[size_#in~t.offset, size_#t~mem30.base, size_#in~t.base, size_#t~mem30.offset] {2337#true} is VALID [2022-04-27 22:37:00,687 INFO L290 TraceCheckUtils]: 0: Hoare triple {2337#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {2337#true} is VALID [2022-04-27 22:37:00,687 INFO L290 TraceCheckUtils]: 1: Hoare triple {2337#true} [233] L81-->L82: Formula: (let ((.cse0 (+ v_size_~t.offset_3 4))) (and (= (select (select |v_#memory_$Pointer$.base_31| v_size_~t.base_3) .cse0) |v_size_#t~mem28.base_1|) (or (not (= v_size_~t.base_3 0)) (not (= v_size_~t.offset_3 0))) (= |v_size_#t~mem28.offset_1| (select (select |v_#memory_$Pointer$.offset_31| v_size_~t.base_3) .cse0)))) InVars {size_~t.base=v_size_~t.base_3, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_31|, size_~t.offset=v_size_~t.offset_3, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_31|} OutVars{size_~t.base=v_size_~t.base_3, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_31|, size_#t~mem28.base=|v_size_#t~mem28.base_1|, size_~t.offset=v_size_~t.offset_3, size_#t~mem28.offset=|v_size_#t~mem28.offset_1|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_31|} AuxVars[] AssignedVars[size_#t~mem28.base, size_#t~mem28.offset] {2337#true} is VALID [2022-04-27 22:37:00,687 INFO L272 TraceCheckUtils]: 2: Hoare triple {2337#true} [238] L82-->sizeENTRY: Formula: (and (= |v_size_#in~t.offsetInParam_3| |v_size_#t~mem28.offset_4|) (= |v_size_#in~t.baseInParam_3| |v_size_#t~mem28.base_4|)) InVars {size_#t~mem28.offset=|v_size_#t~mem28.offset_4|, size_#t~mem28.base=|v_size_#t~mem28.base_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_3|, size_#in~t.base=|v_size_#in~t.baseInParam_3|} AuxVars[] AssignedVars[size_#in~t.offset, size_#in~t.base, size_#t~mem28.base, size_#t~mem28.offset] {2337#true} is VALID [2022-04-27 22:37:00,687 INFO L290 TraceCheckUtils]: 3: Hoare triple {2337#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {2337#true} is VALID [2022-04-27 22:37:00,687 INFO L290 TraceCheckUtils]: 4: Hoare triple {2337#true} [232] L81-->sizeFINAL: Formula: (and (= v_size_~t.base_2 0) (= |v_size_#res_1| 0) (= v_size_~t.offset_2 0)) InVars {size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2} OutVars{size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2, size_#res=|v_size_#res_1|} AuxVars[] AssignedVars[size_#res] {2337#true} is VALID [2022-04-27 22:37:00,687 INFO L290 TraceCheckUtils]: 5: Hoare triple {2337#true} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:00,687 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {2337#true} {2337#true} [315] sizeEXIT-->L82-1: AOR: Formula: (= |v_size_#t~ret29_5| |v_size_#resOutParam_3|) InVars {size_#res=|v_size_#resOutParam_3|} OutVars{size_#t~ret29=|v_size_#t~ret29_5|} AuxVars[] AssignedVars[size_#t~ret29, size_#res] LVA: Formula: (and (= |v_size_#in~t.offsetInParam_3| |v_size_#t~mem28.offset_4|) (= |v_size_#in~t.baseInParam_3| |v_size_#t~mem28.base_4|)) InVars {size_#t~mem28.offset=|v_size_#t~mem28.offset_4|, size_#t~mem28.base=|v_size_#t~mem28.base_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_3|, size_#in~t.base=|v_size_#in~t.baseInParam_3|} AuxVars[] AssignedVars[size_#in~t.offset, size_#in~t.base, size_#t~mem28.base, size_#t~mem28.offset] {2337#true} is VALID [2022-04-27 22:37:00,687 INFO L290 TraceCheckUtils]: 7: Hoare triple {2337#true} [244] L82-1-->L82-2: Formula: (let ((.cse0 (+ v_size_~t.offset_4 12))) (and (= |v_size_#t~mem30.offset_1| (select (select |v_#memory_$Pointer$.offset_32| v_size_~t.base_4) .cse0)) (<= 0 (+ |v_size_#t~ret29_2| 2147483648)) (<= |v_size_#t~ret29_2| 2147483647) (= |v_size_#t~mem30.base_1| (select (select |v_#memory_$Pointer$.base_32| v_size_~t.base_4) .cse0)))) InVars {size_~t.base=v_size_~t.base_4, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_32|, size_~t.offset=v_size_~t.offset_4, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_32|, size_#t~ret29=|v_size_#t~ret29_2|} OutVars{size_~t.base=v_size_~t.base_4, size_#t~mem30.base=|v_size_#t~mem30.base_1|, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_32|, size_#t~ret29=|v_size_#t~ret29_2|, size_#t~mem30.offset=|v_size_#t~mem30.offset_1|, size_~t.offset=v_size_~t.offset_4, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_32|} AuxVars[] AssignedVars[size_#t~mem30.base, size_#t~mem30.offset] {2337#true} is VALID [2022-04-27 22:37:00,687 INFO L272 TraceCheckUtils]: 8: Hoare triple {2337#true} [255] L82-2-->sizeENTRY: Formula: (and (= |v_size_#in~t.offsetInParam_4| |v_size_#t~mem30.offset_4|) (= |v_size_#t~mem30.base_4| |v_size_#in~t.baseInParam_4|)) InVars {size_#t~mem30.base=|v_size_#t~mem30.base_4|, size_#t~mem30.offset=|v_size_#t~mem30.offset_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_4|, size_#in~t.base=|v_size_#in~t.baseInParam_4|} AuxVars[] AssignedVars[size_#in~t.offset, size_#t~mem30.base, size_#in~t.base, size_#t~mem30.offset] {2337#true} is VALID [2022-04-27 22:37:00,687 INFO L290 TraceCheckUtils]: 9: Hoare triple {2337#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {2337#true} is VALID [2022-04-27 22:37:00,687 INFO L290 TraceCheckUtils]: 10: Hoare triple {2337#true} [232] L81-->sizeFINAL: Formula: (and (= v_size_~t.base_2 0) (= |v_size_#res_1| 0) (= v_size_~t.offset_2 0)) InVars {size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2} OutVars{size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2, size_#res=|v_size_#res_1|} AuxVars[] AssignedVars[size_#res] {2337#true} is VALID [2022-04-27 22:37:00,688 INFO L290 TraceCheckUtils]: 11: Hoare triple {2337#true} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:00,688 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {2337#true} {2337#true} [316] sizeEXIT-->L82-3: AOR: Formula: (= |v_size_#t~ret31_4| |v_size_#resOutParam_4|) InVars {size_#res=|v_size_#resOutParam_4|} OutVars{size_#t~ret31=|v_size_#t~ret31_4|} AuxVars[] AssignedVars[size_#res, size_#t~ret31] LVA: Formula: (and (= |v_size_#in~t.offsetInParam_4| |v_size_#t~mem30.offset_4|) (= |v_size_#t~mem30.base_4| |v_size_#in~t.baseInParam_4|)) InVars {size_#t~mem30.base=|v_size_#t~mem30.base_4|, size_#t~mem30.offset=|v_size_#t~mem30.offset_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_4|, size_#in~t.base=|v_size_#in~t.baseInParam_4|} AuxVars[] AssignedVars[size_#in~t.offset, size_#t~mem30.base, size_#in~t.base, size_#t~mem30.offset] {2337#true} is VALID [2022-04-27 22:37:00,688 INFO L290 TraceCheckUtils]: 13: Hoare triple {2337#true} [254] L82-3-->sizeFINAL: Formula: (and (<= |v_size_#t~ret31_3| 2147483647) (<= 0 (+ |v_size_#t~ret31_3| 2147483648)) (= (+ |v_size_#t~ret31_3| |v_size_#t~ret29_4| 1) |v_size_#res_2|)) InVars {size_#t~ret29=|v_size_#t~ret29_4|, size_#t~ret31=|v_size_#t~ret31_3|} OutVars{size_#t~mem30.base=|v_size_#t~mem30.base_3|, size_#t~mem30.offset=|v_size_#t~mem30.offset_3|, size_#t~mem28.offset=|v_size_#t~mem28.offset_3|, size_#res=|v_size_#res_2|, size_#t~mem28.base=|v_size_#t~mem28.base_3|} AuxVars[] AssignedVars[size_#t~mem30.base, size_#t~mem28.base, size_#t~ret29, size_#t~mem30.offset, size_#t~mem28.offset, size_#res, size_#t~ret31] {2337#true} is VALID [2022-04-27 22:37:00,688 INFO L290 TraceCheckUtils]: 14: Hoare triple {2337#true} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:00,688 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2337#true} {2375#(not (= task_~t.base 0))} [313] sizeEXIT-->L89-1: AOR: Formula: (= |v_task_#t~ret33_4| |v_size_#resOutParam_1|) InVars {size_#res=|v_size_#resOutParam_1|} OutVars{task_#t~ret33=|v_task_#t~ret33_4|} AuxVars[] AssignedVars[task_#t~ret33, size_#res] LVA: Formula: (and (= v_task_~t.base_8 |v_size_#in~t.baseInParam_1|) (= |v_size_#in~t.offsetInParam_1| v_task_~t.offset_8)) InVars {task_~t.offset=v_task_~t.offset_8, task_~t.base=v_task_~t.base_8} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_1|, size_#in~t.base=|v_size_#in~t.baseInParam_1|} AuxVars[] AssignedVars[task_~t.offset, size_#in~t.offset, size_#in~t.base, task_~t.base] {2375#(not (= task_~t.base 0))} is VALID [2022-04-27 22:37:00,688 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 58 [2022-04-27 22:37:00,689 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:37:00,695 INFO L290 TraceCheckUtils]: 0: Hoare triple {2337#true} [236] assume_cycle_if_notENTRY-->L9: Formula: (= v_assume_cycle_if_not_~cond_3 |v_assume_cycle_if_not_#in~cond_1|) InVars {assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~cond_1|} OutVars{assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~cond_1|, assume_cycle_if_not_~cond=v_assume_cycle_if_not_~cond_3} AuxVars[] AssignedVars[assume_cycle_if_not_~cond] {2337#true} is VALID [2022-04-27 22:37:00,695 INFO L290 TraceCheckUtils]: 1: Hoare triple {2337#true} [243] L9-->L9-5: Formula: (not (= v_assume_cycle_if_not_~cond_1 0)) InVars {assume_cycle_if_not_~cond=v_assume_cycle_if_not_~cond_1} OutVars{assume_cycle_if_not_~cond=v_assume_cycle_if_not_~cond_1} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:00,695 INFO L290 TraceCheckUtils]: 2: Hoare triple {2337#true} [252] L9-5-->assume_cycle_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:00,696 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2337#true} {2375#(not (= task_~t.base 0))} [317] assume_cycle_if_notEXIT-->L90-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_cycle_if_not_#in~condInParam_1| (ite (not (= v_task_~n~1_9 0)) 1 0)) InVars {task_~n~1=v_task_~n~1_9} OutVars{assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[task_~n~1, assume_cycle_if_not_#in~cond] {2375#(not (= task_~t.base 0))} is VALID [2022-04-27 22:37:00,702 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 64 [2022-04-27 22:37:00,705 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:37:00,709 INFO L290 TraceCheckUtils]: 0: Hoare triple {2431#(= |#memory_int| |old(#memory_int)|)} [248] #Ultimate.meminitENTRY-->#Ultimate.meminitFINAL: Formula: (= (store |v_#memory_int_12| |v_#Ultimate.meminit_#ptr.base_1| ((as const (Array Int Int)) 0)) |v_#memory_int_11|) InVars {#memory_int=|v_#memory_int_12|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} OutVars{#memory_int=|v_#memory_int_11|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} AuxVars[] AssignedVars[#memory_int] {2337#true} is VALID [2022-04-27 22:37:00,709 INFO L290 TraceCheckUtils]: 1: Hoare triple {2337#true} [259] #Ultimate.meminitFINAL-->#Ultimate.meminitEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:00,710 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {2337#true} {2375#(not (= task_~t.base 0))} [318] #Ultimate.meminitEXIT-->L91-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (and (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_task_#t~malloc34.offset_4|) (= v_task_~n~1_10 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_task_#t~malloc34.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= (* v_task_~n~1_10 4) |v_#Ultimate.meminit_#productInParam_1|)) InVars {task_#t~malloc34.base=|v_task_#t~malloc34.base_4|, task_~n~1=v_task_~n~1_10, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[task_~n~1, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, task_#t~malloc34.offset, task_#t~malloc34.base, #Ultimate.meminit_#product, #Ultimate.meminit_#ptr.base, #Ultimate.meminit_#ptr.offset] {2375#(not (= task_~t.base 0))} is VALID [2022-04-27 22:37:00,719 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 69 [2022-04-27 22:37:00,721 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:37:00,739 INFO L290 TraceCheckUtils]: 0: Hoare triple {2432#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} [262] tree_inorderENTRY-->L70: Formula: (and (= v_tree_inorder_~i_1 |v_tree_inorder_#in~i_1|) (= v_tree_inorder_~a.base_1 |v_tree_inorder_#in~a.base_1|) (= |v_tree_inorder_#in~t.offset_1| v_tree_inorder_~t.offset_1) (= |v_tree_inorder_#in~a.offset_1| v_tree_inorder_~a.offset_1) (= v_tree_inorder_~t.base_1 |v_tree_inorder_#in~t.base_1|)) InVars {tree_inorder_#in~i=|v_tree_inorder_#in~i_1|, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offset_1|, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.base_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offset_1|, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.base_1|} OutVars{tree_inorder_#in~i=|v_tree_inorder_#in~i_1|, tree_inorder_~a.base=v_tree_inorder_~a.base_1, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offset_1|, tree_inorder_~t.offset=v_tree_inorder_~t.offset_1, tree_inorder_~a.offset=v_tree_inorder_~a.offset_1, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.base_1|, tree_inorder_~t.base=v_tree_inorder_~t.base_1, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.base_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offset_1|, tree_inorder_~i=v_tree_inorder_~i_1} AuxVars[] AssignedVars[tree_inorder_~a.base, tree_inorder_~t.offset, tree_inorder_~a.offset, tree_inorder_~t.base, tree_inorder_~i] {2433#(= |tree_inorder_#in~t.base| tree_inorder_~t.base)} is VALID [2022-04-27 22:37:00,740 INFO L290 TraceCheckUtils]: 1: Hoare triple {2433#(= |tree_inorder_#in~t.base| tree_inorder_~t.base)} [265] L70-->tree_inorderFINAL: Formula: (and (= v_tree_inorder_~i_2 |v_tree_inorder_#res_1|) (= v_tree_inorder_~t.base_2 0) (= v_tree_inorder_~t.offset_2 0)) InVars {tree_inorder_~t.base=v_tree_inorder_~t.base_2, tree_inorder_~t.offset=v_tree_inorder_~t.offset_2, tree_inorder_~i=v_tree_inorder_~i_2} OutVars{tree_inorder_~t.base=v_tree_inorder_~t.base_2, tree_inorder_#res=|v_tree_inorder_#res_1|, tree_inorder_~t.offset=v_tree_inorder_~t.offset_2, tree_inorder_~i=v_tree_inorder_~i_2} AuxVars[] AssignedVars[tree_inorder_#res] {2434#(= |tree_inorder_#in~t.base| 0)} is VALID [2022-04-27 22:37:00,740 INFO L290 TraceCheckUtils]: 2: Hoare triple {2434#(= |tree_inorder_#in~t.base| 0)} [270] tree_inorderFINAL-->tree_inorderEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2434#(= |tree_inorder_#in~t.base| 0)} is VALID [2022-04-27 22:37:00,741 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2434#(= |tree_inorder_#in~t.base| 0)} {2375#(not (= task_~t.base 0))} [320] tree_inorderEXIT-->L92-1: AOR: Formula: (= |v_tree_inorder_#resOutParam_1| |v_task_#t~ret35_4|) InVars {tree_inorder_#res=|v_tree_inorder_#resOutParam_1|} OutVars{task_#t~ret35=|v_task_#t~ret35_4|} AuxVars[] AssignedVars[task_#t~ret35, tree_inorder_#res] LVA: Formula: (and (= v_task_~t.base_9 |v_tree_inorder_#in~t.baseInParam_1|) (= |v_tree_inorder_#in~a.baseInParam_1| v_task_~x~0.base_6) (= |v_tree_inorder_#in~t.offsetInParam_1| v_task_~t.offset_9) (= |v_tree_inorder_#in~a.offsetInParam_1| v_task_~x~0.offset_6) (= v_task_~n~1_11 |v_tree_inorder_#in~iInParam_1|)) InVars {task_~t.offset=v_task_~t.offset_9, task_~x~0.base=v_task_~x~0.base_6, task_~n~1=v_task_~n~1_11, task_~t.base=v_task_~t.base_9, task_~x~0.offset=v_task_~x~0.offset_6} OutVars{tree_inorder_#in~i=|v_tree_inorder_#in~iInParam_1|, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offsetInParam_1|, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.baseInParam_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offsetInParam_1|, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.baseInParam_1|} AuxVars[] AssignedVars[tree_inorder_#in~i, task_~t.offset, tree_inorder_#in~a.offset, task_~x~0.base, task_~n~1, tree_inorder_#in~a.base, tree_inorder_#in~t.base, tree_inorder_#in~t.offset, task_~t.base, task_~x~0.offset] {2338#false} is VALID [2022-04-27 22:37:00,741 INFO L272 TraceCheckUtils]: 0: Hoare triple {2337#true} [204] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2403#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:37:00,741 INFO L290 TraceCheckUtils]: 1: Hoare triple {2403#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [206] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_23| 1))) (and (< 0 |v_#StackHeapBarrier_2|) (= (select |v_#valid_15| 1) 1) (= (select |v_#valid_15| 2) 1) (= (select |v_#length_11| 2) 16) (= (select |v_#length_11| 3) 12) (= |v_#NULL.base_1| 0) (= (select |v_#valid_15| 0) 0) (= (select .cse0 0) 48) (= (select |v_#valid_15| 3) 1) (= (select .cse0 1) 0) (= 2 (select |v_#length_11| 1)) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_23|, #StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_11|, #valid=|v_#valid_15|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #valid=|v_#valid_15|, #memory_int=|v_#memory_int_23|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_11|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {2337#true} is VALID [2022-04-27 22:37:00,741 INFO L290 TraceCheckUtils]: 2: Hoare triple {2337#true} [209] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:00,741 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2337#true} {2337#true} [305] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:00,741 INFO L272 TraceCheckUtils]: 4: Hoare triple {2337#true} [205] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:00,742 INFO L272 TraceCheckUtils]: 5: Hoare triple {2337#true} [208] mainENTRY-->nondet_treeENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2404#(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 22:37:00,742 INFO L290 TraceCheckUtils]: 6: Hoare triple {2404#(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|))} [212] nondet_treeENTRY-->L30: Formula: (and (= v_nondet_tree_~n~0.offset_1 0) (= (store |v_#length_6| v_nondet_tree_~n~0.base_1 20) |v_#length_5|) (= (mod |v_nondet_tree_#t~nondet5_4| 256) 0) (<= |v_nondet_tree_#t~nondet7_2| 2147483647) (not (= v_nondet_tree_~n~0.base_1 0)) (= |v_#memory_$Pointer$.base_15| (store |v_#memory_$Pointer$.base_16| v_nondet_tree_~n~0.base_1 (store (select |v_#memory_$Pointer$.base_16| v_nondet_tree_~n~0.base_1) v_nondet_tree_~n~0.offset_1 (select (select |v_#memory_$Pointer$.base_15| v_nondet_tree_~n~0.base_1) v_nondet_tree_~n~0.offset_1)))) (= (store |v_#memory_$Pointer$.offset_16| v_nondet_tree_~n~0.base_1 (store (select |v_#memory_$Pointer$.offset_16| v_nondet_tree_~n~0.base_1) v_nondet_tree_~n~0.offset_1 (select (select |v_#memory_$Pointer$.offset_15| v_nondet_tree_~n~0.base_1) v_nondet_tree_~n~0.offset_1))) |v_#memory_$Pointer$.offset_15|) (= (select |v_#valid_10| v_nondet_tree_~n~0.base_1) 0) (= |v_#memory_int_13| (store |v_#memory_int_14| v_nondet_tree_~n~0.base_1 (store (select |v_#memory_int_14| v_nondet_tree_~n~0.base_1) v_nondet_tree_~n~0.offset_1 |v_nondet_tree_#t~nondet7_2|))) (< v_nondet_tree_~n~0.base_1 |v_#StackHeapBarrier_1|) (<= 0 (+ |v_nondet_tree_#t~nondet7_2| 2147483648)) (= |v_#valid_9| (store |v_#valid_10| v_nondet_tree_~n~0.base_1 1))) InVars {nondet_tree_#t~nondet7=|v_nondet_tree_#t~nondet7_2|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_16|, nondet_tree_#t~nondet5=|v_nondet_tree_#t~nondet5_4|, #valid=|v_#valid_10|, #memory_int=|v_#memory_int_14|, #length=|v_#length_6|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_16|} OutVars{nondet_tree_~n~0.base=v_nondet_tree_~n~0.base_1, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_15|, nondet_tree_#t~malloc6.base=|v_nondet_tree_#t~malloc6.base_1|, nondet_tree_~n~0.offset=v_nondet_tree_~n~0.offset_1, #valid=|v_#valid_9|, #memory_int=|v_#memory_int_13|, #length=|v_#length_5|, nondet_tree_#t~malloc6.offset=|v_nondet_tree_#t~malloc6.offset_1|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_15|} AuxVars[] AssignedVars[nondet_tree_#t~nondet7, nondet_tree_~n~0.base, #memory_$Pointer$.base, nondet_tree_#t~malloc6.base, nondet_tree_#t~nondet5, nondet_tree_~n~0.offset, #valid, #memory_int, #length, nondet_tree_#t~malloc6.offset, #memory_$Pointer$.offset] {2405#(= nondet_tree_~n~0.offset 0)} is VALID [2022-04-27 22:37:00,743 INFO L272 TraceCheckUtils]: 7: Hoare triple {2405#(= nondet_tree_~n~0.offset 0)} [216] L30-->nondet_treeENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2404#(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 22:37:00,743 INFO L290 TraceCheckUtils]: 8: Hoare triple {2404#(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|))} [211] nondet_treeENTRY-->nondet_treeFINAL: Formula: (and (= 0 |v_nondet_tree_#res.base_1|) (= |v_nondet_tree_#res.offset_1| 0) (not (= (mod |v_nondet_tree_#t~nondet5_2| 256) 0))) InVars {nondet_tree_#t~nondet5=|v_nondet_tree_#t~nondet5_2|} OutVars{nondet_tree_#res.base=|v_nondet_tree_#res.base_1|, nondet_tree_#res.offset=|v_nondet_tree_#res.offset_1|} AuxVars[] AssignedVars[nondet_tree_#t~nondet5, nondet_tree_#res.base, nondet_tree_#res.offset] {2337#true} is VALID [2022-04-27 22:37:00,743 INFO L290 TraceCheckUtils]: 9: Hoare triple {2337#true} [215] nondet_treeFINAL-->nondet_treeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:00,745 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2337#true} {2405#(= nondet_tree_~n~0.offset 0)} [307] nondet_treeEXIT-->L30-1: AOR: Formula: (and (= |v_nondet_tree_#res.offsetOutParam_2| |v_nondet_tree_#t~ret8.offset_4|) (= |v_nondet_tree_#res.baseOutParam_2| |v_nondet_tree_#t~ret8.base_4|)) InVars {nondet_tree_#res.base=|v_nondet_tree_#res.baseOutParam_2|, nondet_tree_#res.offset=|v_nondet_tree_#res.offsetOutParam_2|} OutVars{nondet_tree_#t~ret8.base=|v_nondet_tree_#t~ret8.base_4|, nondet_tree_#t~ret8.offset=|v_nondet_tree_#t~ret8.offset_4|} AuxVars[] AssignedVars[nondet_tree_#t~ret8.offset, nondet_tree_#res.base, nondet_tree_#res.offset, nondet_tree_#t~ret8.base] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2405#(= nondet_tree_~n~0.offset 0)} is VALID [2022-04-27 22:37:00,746 INFO L290 TraceCheckUtils]: 11: Hoare triple {2405#(= nondet_tree_~n~0.offset 0)} [219] L30-1-->L31: Formula: (let ((.cse0 (+ 4 v_nondet_tree_~n~0.offset_2))) (and (= (store |v_#memory_int_18| v_nondet_tree_~n~0.base_2 (store (select |v_#memory_int_18| v_nondet_tree_~n~0.base_2) .cse0 (select (select |v_#memory_int_17| v_nondet_tree_~n~0.base_2) .cse0))) |v_#memory_int_17|) (= (store |v_#memory_$Pointer$.offset_20| v_nondet_tree_~n~0.base_2 (store (select |v_#memory_$Pointer$.offset_20| v_nondet_tree_~n~0.base_2) .cse0 |v_nondet_tree_#t~ret8.offset_3|)) |v_#memory_$Pointer$.offset_19|) (= |v_#memory_$Pointer$.base_19| (store |v_#memory_$Pointer$.base_20| v_nondet_tree_~n~0.base_2 (store (select |v_#memory_$Pointer$.base_20| v_nondet_tree_~n~0.base_2) .cse0 |v_nondet_tree_#t~ret8.base_3|))))) InVars {nondet_tree_~n~0.base=v_nondet_tree_~n~0.base_2, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_20|, nondet_tree_~n~0.offset=v_nondet_tree_~n~0.offset_2, #memory_int=|v_#memory_int_18|, nondet_tree_#t~ret8.offset=|v_nondet_tree_#t~ret8.offset_3|, nondet_tree_#t~ret8.base=|v_nondet_tree_#t~ret8.base_3|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_20|} OutVars{#memory_int=|v_#memory_int_17|, nondet_tree_~n~0.base=v_nondet_tree_~n~0.base_2, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_19|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_19|, nondet_tree_~n~0.offset=v_nondet_tree_~n~0.offset_2} AuxVars[] AssignedVars[#memory_$Pointer$.base, #memory_int, nondet_tree_#t~ret8.offset, nondet_tree_#t~ret8.base, #memory_$Pointer$.offset] {2405#(= nondet_tree_~n~0.offset 0)} is VALID [2022-04-27 22:37:00,747 INFO L272 TraceCheckUtils]: 12: Hoare triple {2405#(= nondet_tree_~n~0.offset 0)} [223] L31-->nondet_treeENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2404#(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 22:37:00,751 INFO L290 TraceCheckUtils]: 13: Hoare triple {2404#(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|))} [211] nondet_treeENTRY-->nondet_treeFINAL: Formula: (and (= 0 |v_nondet_tree_#res.base_1|) (= |v_nondet_tree_#res.offset_1| 0) (not (= (mod |v_nondet_tree_#t~nondet5_2| 256) 0))) InVars {nondet_tree_#t~nondet5=|v_nondet_tree_#t~nondet5_2|} OutVars{nondet_tree_#res.base=|v_nondet_tree_#res.base_1|, nondet_tree_#res.offset=|v_nondet_tree_#res.offset_1|} AuxVars[] AssignedVars[nondet_tree_#t~nondet5, nondet_tree_#res.base, nondet_tree_#res.offset] {2337#true} is VALID [2022-04-27 22:37:00,752 INFO L290 TraceCheckUtils]: 14: Hoare triple {2337#true} [215] nondet_treeFINAL-->nondet_treeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:00,752 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2337#true} {2405#(= nondet_tree_~n~0.offset 0)} [308] nondet_treeEXIT-->L31-1: AOR: Formula: (and (= |v_nondet_tree_#res.offsetOutParam_3| |v_nondet_tree_#t~ret9.offset_4|) (= |v_nondet_tree_#res.baseOutParam_3| |v_nondet_tree_#t~ret9.base_4|)) InVars {nondet_tree_#res.base=|v_nondet_tree_#res.baseOutParam_3|, nondet_tree_#res.offset=|v_nondet_tree_#res.offsetOutParam_3|} OutVars{nondet_tree_#t~ret9.offset=|v_nondet_tree_#t~ret9.offset_4|, nondet_tree_#t~ret9.base=|v_nondet_tree_#t~ret9.base_4|} AuxVars[] AssignedVars[nondet_tree_#t~ret9.base, nondet_tree_#res.base, nondet_tree_#res.offset, nondet_tree_#t~ret9.offset] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2405#(= nondet_tree_~n~0.offset 0)} is VALID [2022-04-27 22:37:00,753 INFO L290 TraceCheckUtils]: 16: Hoare triple {2405#(= nondet_tree_~n~0.offset 0)} [222] L31-1-->nondet_treeFINAL: Formula: (let ((.cse0 (+ 12 v_nondet_tree_~n~0.offset_3))) (and (= |v_nondet_tree_#res.offset_2| v_nondet_tree_~n~0.offset_3) (= (store |v_#memory_$Pointer$.base_24| v_nondet_tree_~n~0.base_3 (store (select |v_#memory_$Pointer$.base_24| v_nondet_tree_~n~0.base_3) .cse0 |v_nondet_tree_#t~ret9.base_3|)) |v_#memory_$Pointer$.base_23|) (= (store |v_#memory_$Pointer$.offset_24| v_nondet_tree_~n~0.base_3 (store (select |v_#memory_$Pointer$.offset_24| v_nondet_tree_~n~0.base_3) .cse0 |v_nondet_tree_#t~ret9.offset_3|)) |v_#memory_$Pointer$.offset_23|) (= (store |v_#memory_int_22| v_nondet_tree_~n~0.base_3 (store (select |v_#memory_int_22| v_nondet_tree_~n~0.base_3) .cse0 (select (select |v_#memory_int_21| v_nondet_tree_~n~0.base_3) .cse0))) |v_#memory_int_21|) (= v_nondet_tree_~n~0.base_3 |v_nondet_tree_#res.base_2|))) InVars {nondet_tree_~n~0.base=v_nondet_tree_~n~0.base_3, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_24|, nondet_tree_~n~0.offset=v_nondet_tree_~n~0.offset_3, #memory_int=|v_#memory_int_22|, nondet_tree_#t~ret9.base=|v_nondet_tree_#t~ret9.base_3|, nondet_tree_#t~ret9.offset=|v_nondet_tree_#t~ret9.offset_3|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_24|} OutVars{nondet_tree_~n~0.base=v_nondet_tree_~n~0.base_3, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_23|, nondet_tree_~n~0.offset=v_nondet_tree_~n~0.offset_3, #memory_int=|v_#memory_int_21|, nondet_tree_#res.base=|v_nondet_tree_#res.base_2|, nondet_tree_#res.offset=|v_nondet_tree_#res.offset_2|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_23|} AuxVars[] AssignedVars[#memory_$Pointer$.base, #memory_int, nondet_tree_#res.base, nondet_tree_#t~ret9.base, nondet_tree_#res.offset, nondet_tree_#t~ret9.offset, #memory_$Pointer$.offset] {2412#(= |nondet_tree_#res.offset| 0)} is VALID [2022-04-27 22:37:00,753 INFO L290 TraceCheckUtils]: 17: Hoare triple {2412#(= |nondet_tree_#res.offset| 0)} [215] nondet_treeFINAL-->nondet_treeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2412#(= |nondet_tree_#res.offset| 0)} is VALID [2022-04-27 22:37:00,753 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2412#(= |nondet_tree_#res.offset| 0)} {2337#true} [306] nondet_treeEXIT-->L110: AOR: Formula: (and (= |v_nondet_tree_#res.offsetOutParam_1| |v_main_#t~ret45.offset_4|) (= |v_nondet_tree_#res.baseOutParam_1| |v_main_#t~ret45.base_4|)) InVars {nondet_tree_#res.base=|v_nondet_tree_#res.baseOutParam_1|, nondet_tree_#res.offset=|v_nondet_tree_#res.offsetOutParam_1|} OutVars{main_#t~ret45.base=|v_main_#t~ret45.base_4|, main_#t~ret45.offset=|v_main_#t~ret45.offset_4|} AuxVars[] AssignedVars[main_#t~ret45.offset, main_#t~ret45.base, nondet_tree_#res.base, nondet_tree_#res.offset] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2355#(= |main_#t~ret45.offset| 0)} is VALID [2022-04-27 22:37:00,754 INFO L272 TraceCheckUtils]: 19: Hoare triple {2355#(= |main_#t~ret45.offset| 0)} [210] L110-->taskENTRY: Formula: (and (= |v_main_#t~ret45.base_5| |v_task_#in~t.baseInParam_1|) (= |v_main_#t~ret45.offset_5| |v_task_#in~t.offsetInParam_1|)) InVars {main_#t~ret45.base=|v_main_#t~ret45.base_5|, main_#t~ret45.offset=|v_main_#t~ret45.offset_5|} OutVars{task_#in~t.base=|v_task_#in~t.baseInParam_1|, task_#in~t.offset=|v_task_#in~t.offsetInParam_1|} AuxVars[] AssignedVars[task_#in~t.offset, main_#t~ret45.offset, main_#t~ret45.base, task_#in~t.base] {2356#(= |task_#in~t.offset| 0)} is VALID [2022-04-27 22:37:00,754 INFO L290 TraceCheckUtils]: 20: Hoare triple {2356#(= |task_#in~t.offset| 0)} [214] taskENTRY-->L86: Formula: (and (= v_task_~t.base_4 |v_task_#in~t.base_1|) (= |v_task_#in~t.offset_1| v_task_~t.offset_4)) InVars {task_#in~t.base=|v_task_#in~t.base_1|, task_#in~t.offset=|v_task_#in~t.offset_1|} OutVars{task_~t.offset=v_task_~t.offset_4, task_#in~t.base=|v_task_#in~t.base_1|, task_#in~t.offset=|v_task_#in~t.offset_1|, task_~t.base=v_task_~t.base_4} AuxVars[] AssignedVars[task_~t.offset, task_~t.base] {2357#(= task_~t.offset 0)} is VALID [2022-04-27 22:37:00,754 INFO L272 TraceCheckUtils]: 21: Hoare triple {2357#(= task_~t.offset 0)} [218] L86-->minENTRY: Formula: (and (= v_task_~t.base_7 |v_min_#in~n.baseInParam_3|) (= |v_min_#in~n.offsetInParam_3| v_task_~t.offset_7)) InVars {task_~t.offset=v_task_~t.offset_7, task_~t.base=v_task_~t.base_7} OutVars{min_#in~n.base=|v_min_#in~n.baseInParam_3|, min_#in~n.offset=|v_min_#in~n.offsetInParam_3|} AuxVars[] AssignedVars[task_~t.offset, min_#in~n.offset, task_~t.base, min_#in~n.base] {2337#true} is VALID [2022-04-27 22:37:00,754 INFO L290 TraceCheckUtils]: 22: Hoare triple {2337#true} [221] minENTRY-->L37: Formula: (and (= |v_min_#in~n.base_1| v_min_~n.base_3) (= v_min_~n.offset_3 |v_min_#in~n.offset_1|)) InVars {min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} OutVars{min_~n.offset=v_min_~n.offset_3, min_~n.base=v_min_~n.base_3, min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} AuxVars[] AssignedVars[min_~n.offset, min_~n.base] {2413#(and (= min_~n.base |min_#in~n.base|) (= min_~n.offset |min_#in~n.offset|))} is VALID [2022-04-27 22:37:00,755 INFO L290 TraceCheckUtils]: 23: Hoare triple {2413#(and (= min_~n.base |min_#in~n.base|) (= min_~n.offset |min_#in~n.offset|))} [226] L37-->L41: Formula: (let ((.cse0 (+ v_min_~n.offset_1 4))) (and (= (select (select |v_#memory_$Pointer$.offset_13| v_min_~n.base_1) .cse0) |v_min_#t~mem11.offset_1|) (= v_min_~a~0_1 (select (select |v_#memory_int_10| v_min_~n.base_1) v_min_~n.offset_1)) (= |v_min_#t~mem11.base_1| (select (select |v_#memory_$Pointer$.base_13| v_min_~n.base_1) .cse0)) (or (not (= v_min_~n.base_1 0)) (not (= v_min_~n.offset_1 0))))) InVars {min_~n.offset=v_min_~n.offset_1, #memory_int=|v_#memory_int_10|, min_~n.base=v_min_~n.base_1, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_13|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_13|} OutVars{min_~n.offset=v_min_~n.offset_1, min_~n.base=v_min_~n.base_1, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_13|, min_~a~0=v_min_~a~0_1, min_#t~mem10=|v_min_#t~mem10_1|, #memory_int=|v_#memory_int_10|, min_#t~mem11.base=|v_min_#t~mem11.base_1|, min_#t~mem11.offset=|v_min_#t~mem11.offset_1|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_13|} AuxVars[] AssignedVars[min_~a~0, min_#t~mem10, min_#t~mem11.base, min_#t~mem11.offset] {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} is VALID [2022-04-27 22:37:00,755 INFO L272 TraceCheckUtils]: 24: Hoare triple {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} [230] L41-->minENTRY: Formula: (and (= |v_min_#t~mem11.offset_4| |v_min_#in~n.offsetInParam_1|) (= |v_min_#in~n.baseInParam_1| |v_min_#t~mem11.base_4|)) InVars {min_#t~mem11.base=|v_min_#t~mem11.base_4|, min_#t~mem11.offset=|v_min_#t~mem11.offset_4|} OutVars{min_#in~n.base=|v_min_#in~n.baseInParam_1|, min_#in~n.offset=|v_min_#in~n.offsetInParam_1|} AuxVars[] AssignedVars[min_#in~n.offset, min_#t~mem11.base, min_#in~n.base, min_#t~mem11.offset] {2337#true} is VALID [2022-04-27 22:37:00,755 INFO L290 TraceCheckUtils]: 25: Hoare triple {2337#true} [221] minENTRY-->L37: Formula: (and (= |v_min_#in~n.base_1| v_min_~n.base_3) (= v_min_~n.offset_3 |v_min_#in~n.offset_1|)) InVars {min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} OutVars{min_~n.offset=v_min_~n.offset_3, min_~n.base=v_min_~n.base_3, min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} AuxVars[] AssignedVars[min_~n.offset, min_~n.base] {2337#true} is VALID [2022-04-27 22:37:00,755 INFO L290 TraceCheckUtils]: 26: Hoare triple {2337#true} [225] L37-->minFINAL: Formula: (and (= 2147483647 |v_min_#res_4|) (= v_min_~n.base_4 0) (= v_min_~n.offset_4 0)) InVars {min_~n.offset=v_min_~n.offset_4, min_~n.base=v_min_~n.base_4} OutVars{min_~n.offset=v_min_~n.offset_4, min_~n.base=v_min_~n.base_4, min_#res=|v_min_#res_4|} AuxVars[] AssignedVars[min_#res] {2337#true} is VALID [2022-04-27 22:37:00,755 INFO L290 TraceCheckUtils]: 27: Hoare triple {2337#true} [229] minFINAL-->minEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:00,756 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2337#true} {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} [310] minEXIT-->L41-1: AOR: Formula: (= |v_min_#resOutParam_1| |v_min_#t~ret12_4|) InVars {min_#res=|v_min_#resOutParam_1|} OutVars{min_#t~ret12=|v_min_#t~ret12_4|} AuxVars[] AssignedVars[min_#res, min_#t~ret12] LVA: Formula: (and (= |v_min_#t~mem11.offset_4| |v_min_#in~n.offsetInParam_1|) (= |v_min_#in~n.baseInParam_1| |v_min_#t~mem11.base_4|)) InVars {min_#t~mem11.base=|v_min_#t~mem11.base_4|, min_#t~mem11.offset=|v_min_#t~mem11.offset_4|} OutVars{min_#in~n.base=|v_min_#in~n.baseInParam_1|, min_#in~n.offset=|v_min_#in~n.offsetInParam_1|} AuxVars[] AssignedVars[min_#in~n.offset, min_#t~mem11.base, min_#in~n.base, min_#t~mem11.offset] {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} is VALID [2022-04-27 22:37:00,756 INFO L290 TraceCheckUtils]: 29: Hoare triple {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} [234] L41-1-->L42: Formula: (let ((.cse0 (+ v_min_~n.offset_2 12))) (and (<= |v_min_#t~ret12_3| 2147483647) (<= 0 (+ |v_min_#t~ret12_3| 2147483648)) (= (select (select |v_#memory_$Pointer$.offset_14| v_min_~n.base_2) .cse0) |v_min_#t~mem13.offset_1|) (= |v_min_#t~mem13.base_1| (select (select |v_#memory_$Pointer$.base_14| v_min_~n.base_2) .cse0)) (= v_min_~b~0_1 |v_min_#t~ret12_3|))) InVars {min_~n.offset=v_min_~n.offset_2, min_~n.base=v_min_~n.base_2, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_14|, min_#t~ret12=|v_min_#t~ret12_3|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_14|} OutVars{min_~n.offset=v_min_~n.offset_2, min_~n.base=v_min_~n.base_2, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_14|, min_~b~0=v_min_~b~0_1, min_#t~mem13.offset=|v_min_#t~mem13.offset_1|, min_#t~mem11.base=|v_min_#t~mem11.base_3|, min_#t~mem13.base=|v_min_#t~mem13.base_1|, min_#t~mem11.offset=|v_min_#t~mem11.offset_3|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_14|} AuxVars[] AssignedVars[min_~b~0, min_#t~mem13.offset, min_#t~mem11.base, min_#t~mem13.base, min_#t~ret12, min_#t~mem11.offset] {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} is VALID [2022-04-27 22:37:00,756 INFO L272 TraceCheckUtils]: 30: Hoare triple {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} [240] L42-->minENTRY: Formula: (and (= |v_min_#t~mem13.base_4| |v_min_#in~n.baseInParam_2|) (= |v_min_#in~n.offsetInParam_2| |v_min_#t~mem13.offset_4|)) InVars {min_#t~mem13.base=|v_min_#t~mem13.base_4|, min_#t~mem13.offset=|v_min_#t~mem13.offset_4|} OutVars{min_#in~n.base=|v_min_#in~n.baseInParam_2|, min_#in~n.offset=|v_min_#in~n.offsetInParam_2|} AuxVars[] AssignedVars[min_#in~n.offset, min_#t~mem13.offset, min_#t~mem13.base, min_#in~n.base] {2337#true} is VALID [2022-04-27 22:37:00,756 INFO L290 TraceCheckUtils]: 31: Hoare triple {2337#true} [221] minENTRY-->L37: Formula: (and (= |v_min_#in~n.base_1| v_min_~n.base_3) (= v_min_~n.offset_3 |v_min_#in~n.offset_1|)) InVars {min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} OutVars{min_~n.offset=v_min_~n.offset_3, min_~n.base=v_min_~n.base_3, min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} AuxVars[] AssignedVars[min_~n.offset, min_~n.base] {2337#true} is VALID [2022-04-27 22:37:00,756 INFO L290 TraceCheckUtils]: 32: Hoare triple {2337#true} [225] L37-->minFINAL: Formula: (and (= 2147483647 |v_min_#res_4|) (= v_min_~n.base_4 0) (= v_min_~n.offset_4 0)) InVars {min_~n.offset=v_min_~n.offset_4, min_~n.base=v_min_~n.base_4} OutVars{min_~n.offset=v_min_~n.offset_4, min_~n.base=v_min_~n.base_4, min_#res=|v_min_#res_4|} AuxVars[] AssignedVars[min_#res] {2337#true} is VALID [2022-04-27 22:37:00,756 INFO L290 TraceCheckUtils]: 33: Hoare triple {2337#true} [229] minFINAL-->minEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:00,756 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {2337#true} {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} [311] minEXIT-->L42-1: AOR: Formula: (= |v_min_#resOutParam_2| |v_min_#t~ret14_4|) InVars {min_#res=|v_min_#resOutParam_2|} OutVars{min_#t~ret14=|v_min_#t~ret14_4|} AuxVars[] AssignedVars[min_#res, min_#t~ret14] LVA: Formula: (and (= |v_min_#t~mem13.base_4| |v_min_#in~n.baseInParam_2|) (= |v_min_#in~n.offsetInParam_2| |v_min_#t~mem13.offset_4|)) InVars {min_#t~mem13.base=|v_min_#t~mem13.base_4|, min_#t~mem13.offset=|v_min_#t~mem13.offset_4|} OutVars{min_#in~n.base=|v_min_#in~n.baseInParam_2|, min_#in~n.offset=|v_min_#in~n.offsetInParam_2|} AuxVars[] AssignedVars[min_#in~n.offset, min_#t~mem13.offset, min_#t~mem13.base, min_#in~n.base] {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} is VALID [2022-04-27 22:37:00,757 INFO L290 TraceCheckUtils]: 35: Hoare triple {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} [239] L42-1-->L43: Formula: (and (<= |v_min_#t~ret14_3| 2147483647) (= v_min_~c~0_1 |v_min_#t~ret14_3|) (<= 0 (+ |v_min_#t~ret14_3| 2147483648))) InVars {min_#t~ret14=|v_min_#t~ret14_3|} OutVars{min_~c~0=v_min_~c~0_1, min_#t~mem13.offset=|v_min_#t~mem13.offset_3|, min_#t~mem13.base=|v_min_#t~mem13.base_3|} AuxVars[] AssignedVars[min_~c~0, min_#t~mem13.offset, min_#t~mem13.base, min_#t~ret14] {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} is VALID [2022-04-27 22:37:00,757 INFO L290 TraceCheckUtils]: 36: Hoare triple {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} [245] L43-->minFINAL: Formula: (and (<= v_min_~b~0_2 v_min_~c~0_2) (= v_min_~b~0_2 |v_min_#res_1|) (<= v_min_~b~0_2 v_min_~a~0_2)) InVars {min_~c~0=v_min_~c~0_2, min_~b~0=v_min_~b~0_2, min_~a~0=v_min_~a~0_2} OutVars{min_~c~0=v_min_~c~0_2, min_#res=|v_min_#res_1|, min_~b~0=v_min_~b~0_2, min_~a~0=v_min_~a~0_2} AuxVars[] AssignedVars[min_#res] {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} is VALID [2022-04-27 22:37:00,757 INFO L290 TraceCheckUtils]: 37: Hoare triple {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} [229] minFINAL-->minEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} is VALID [2022-04-27 22:37:00,758 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {2414#(or (not (= |min_#in~n.offset| 0)) (not (= |min_#in~n.base| 0)))} {2357#(= task_~t.offset 0)} [312] minEXIT-->L86-1: AOR: Formula: (= |v_min_#resOutParam_3| |v_task_#t~ret32_4|) InVars {min_#res=|v_min_#resOutParam_3|} OutVars{task_#t~ret32=|v_task_#t~ret32_4|} AuxVars[] AssignedVars[task_#t~ret32, min_#res] LVA: Formula: (and (= v_task_~t.base_7 |v_min_#in~n.baseInParam_3|) (= |v_min_#in~n.offsetInParam_3| v_task_~t.offset_7)) InVars {task_~t.offset=v_task_~t.offset_7, task_~t.base=v_task_~t.base_7} OutVars{min_#in~n.base=|v_min_#in~n.baseInParam_3|, min_#in~n.offset=|v_min_#in~n.offsetInParam_3|} AuxVars[] AssignedVars[task_~t.offset, min_#in~n.offset, task_~t.base, min_#in~n.base] {2375#(not (= task_~t.base 0))} is VALID [2022-04-27 22:37:00,758 INFO L290 TraceCheckUtils]: 39: Hoare triple {2375#(not (= task_~t.base 0))} [220] L86-1-->L89: Formula: (and (< |v_#StackHeapBarrier_5| |v_task_~#b~1.base_5|) (= |v_#length_16| (store |v_#length_17| |v_task_~#b~1.base_5| 4)) (not (= |v_task_~#b~1.base_5| 0)) (<= |v_task_#t~ret32_3| 2147483647) (= |v_task_#t~ret32_3| v_task_~a~1_3) (= (select |v_#valid_27| |v_task_~#b~1.base_5|) 0) (<= 0 (+ |v_task_#t~ret32_3| 2147483648)) (= |v_task_~#b~1.offset_5| 0) (= (store |v_#valid_27| |v_task_~#b~1.base_5| 1) |v_#valid_26|)) InVars {task_#t~ret32=|v_task_#t~ret32_3|, #StackHeapBarrier=|v_#StackHeapBarrier_5|, #length=|v_#length_17|, #valid=|v_#valid_27|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_5|, task_~#b~1.offset=|v_task_~#b~1.offset_5|, #valid=|v_#valid_26|, task_~#b~1.base=|v_task_~#b~1.base_5|, #length=|v_#length_16|, task_~a~1=v_task_~a~1_3} AuxVars[] AssignedVars[task_#t~ret32, task_~#b~1.offset, #valid, task_~#b~1.base, #length, task_~a~1] {2375#(not (= task_~t.base 0))} is VALID [2022-04-27 22:37:00,758 INFO L272 TraceCheckUtils]: 40: Hoare triple {2375#(not (= task_~t.base 0))} [224] L89-->sizeENTRY: Formula: (and (= v_task_~t.base_8 |v_size_#in~t.baseInParam_1|) (= |v_size_#in~t.offsetInParam_1| v_task_~t.offset_8)) InVars {task_~t.offset=v_task_~t.offset_8, task_~t.base=v_task_~t.base_8} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_1|, size_#in~t.base=|v_size_#in~t.baseInParam_1|} AuxVars[] AssignedVars[task_~t.offset, size_#in~t.offset, size_#in~t.base, task_~t.base] {2337#true} is VALID [2022-04-27 22:37:00,758 INFO L290 TraceCheckUtils]: 41: Hoare triple {2337#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {2337#true} is VALID [2022-04-27 22:37:00,758 INFO L290 TraceCheckUtils]: 42: Hoare triple {2337#true} [233] L81-->L82: Formula: (let ((.cse0 (+ v_size_~t.offset_3 4))) (and (= (select (select |v_#memory_$Pointer$.base_31| v_size_~t.base_3) .cse0) |v_size_#t~mem28.base_1|) (or (not (= v_size_~t.base_3 0)) (not (= v_size_~t.offset_3 0))) (= |v_size_#t~mem28.offset_1| (select (select |v_#memory_$Pointer$.offset_31| v_size_~t.base_3) .cse0)))) InVars {size_~t.base=v_size_~t.base_3, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_31|, size_~t.offset=v_size_~t.offset_3, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_31|} OutVars{size_~t.base=v_size_~t.base_3, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_31|, size_#t~mem28.base=|v_size_#t~mem28.base_1|, size_~t.offset=v_size_~t.offset_3, size_#t~mem28.offset=|v_size_#t~mem28.offset_1|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_31|} AuxVars[] AssignedVars[size_#t~mem28.base, size_#t~mem28.offset] {2337#true} is VALID [2022-04-27 22:37:00,758 INFO L272 TraceCheckUtils]: 43: Hoare triple {2337#true} [238] L82-->sizeENTRY: Formula: (and (= |v_size_#in~t.offsetInParam_3| |v_size_#t~mem28.offset_4|) (= |v_size_#in~t.baseInParam_3| |v_size_#t~mem28.base_4|)) InVars {size_#t~mem28.offset=|v_size_#t~mem28.offset_4|, size_#t~mem28.base=|v_size_#t~mem28.base_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_3|, size_#in~t.base=|v_size_#in~t.baseInParam_3|} AuxVars[] AssignedVars[size_#in~t.offset, size_#in~t.base, size_#t~mem28.base, size_#t~mem28.offset] {2337#true} is VALID [2022-04-27 22:37:00,758 INFO L290 TraceCheckUtils]: 44: Hoare triple {2337#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {2337#true} is VALID [2022-04-27 22:37:00,758 INFO L290 TraceCheckUtils]: 45: Hoare triple {2337#true} [232] L81-->sizeFINAL: Formula: (and (= v_size_~t.base_2 0) (= |v_size_#res_1| 0) (= v_size_~t.offset_2 0)) InVars {size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2} OutVars{size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2, size_#res=|v_size_#res_1|} AuxVars[] AssignedVars[size_#res] {2337#true} is VALID [2022-04-27 22:37:00,758 INFO L290 TraceCheckUtils]: 46: Hoare triple {2337#true} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:00,758 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {2337#true} {2337#true} [315] sizeEXIT-->L82-1: AOR: Formula: (= |v_size_#t~ret29_5| |v_size_#resOutParam_3|) InVars {size_#res=|v_size_#resOutParam_3|} OutVars{size_#t~ret29=|v_size_#t~ret29_5|} AuxVars[] AssignedVars[size_#t~ret29, size_#res] LVA: Formula: (and (= |v_size_#in~t.offsetInParam_3| |v_size_#t~mem28.offset_4|) (= |v_size_#in~t.baseInParam_3| |v_size_#t~mem28.base_4|)) InVars {size_#t~mem28.offset=|v_size_#t~mem28.offset_4|, size_#t~mem28.base=|v_size_#t~mem28.base_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_3|, size_#in~t.base=|v_size_#in~t.baseInParam_3|} AuxVars[] AssignedVars[size_#in~t.offset, size_#in~t.base, size_#t~mem28.base, size_#t~mem28.offset] {2337#true} is VALID [2022-04-27 22:37:00,759 INFO L290 TraceCheckUtils]: 48: Hoare triple {2337#true} [244] L82-1-->L82-2: Formula: (let ((.cse0 (+ v_size_~t.offset_4 12))) (and (= |v_size_#t~mem30.offset_1| (select (select |v_#memory_$Pointer$.offset_32| v_size_~t.base_4) .cse0)) (<= 0 (+ |v_size_#t~ret29_2| 2147483648)) (<= |v_size_#t~ret29_2| 2147483647) (= |v_size_#t~mem30.base_1| (select (select |v_#memory_$Pointer$.base_32| v_size_~t.base_4) .cse0)))) InVars {size_~t.base=v_size_~t.base_4, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_32|, size_~t.offset=v_size_~t.offset_4, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_32|, size_#t~ret29=|v_size_#t~ret29_2|} OutVars{size_~t.base=v_size_~t.base_4, size_#t~mem30.base=|v_size_#t~mem30.base_1|, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_32|, size_#t~ret29=|v_size_#t~ret29_2|, size_#t~mem30.offset=|v_size_#t~mem30.offset_1|, size_~t.offset=v_size_~t.offset_4, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_32|} AuxVars[] AssignedVars[size_#t~mem30.base, size_#t~mem30.offset] {2337#true} is VALID [2022-04-27 22:37:00,759 INFO L272 TraceCheckUtils]: 49: Hoare triple {2337#true} [255] L82-2-->sizeENTRY: Formula: (and (= |v_size_#in~t.offsetInParam_4| |v_size_#t~mem30.offset_4|) (= |v_size_#t~mem30.base_4| |v_size_#in~t.baseInParam_4|)) InVars {size_#t~mem30.base=|v_size_#t~mem30.base_4|, size_#t~mem30.offset=|v_size_#t~mem30.offset_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_4|, size_#in~t.base=|v_size_#in~t.baseInParam_4|} AuxVars[] AssignedVars[size_#in~t.offset, size_#t~mem30.base, size_#in~t.base, size_#t~mem30.offset] {2337#true} is VALID [2022-04-27 22:37:00,759 INFO L290 TraceCheckUtils]: 50: Hoare triple {2337#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {2337#true} is VALID [2022-04-27 22:37:00,759 INFO L290 TraceCheckUtils]: 51: Hoare triple {2337#true} [232] L81-->sizeFINAL: Formula: (and (= v_size_~t.base_2 0) (= |v_size_#res_1| 0) (= v_size_~t.offset_2 0)) InVars {size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2} OutVars{size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2, size_#res=|v_size_#res_1|} AuxVars[] AssignedVars[size_#res] {2337#true} is VALID [2022-04-27 22:37:00,759 INFO L290 TraceCheckUtils]: 52: Hoare triple {2337#true} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:00,759 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {2337#true} {2337#true} [316] sizeEXIT-->L82-3: AOR: Formula: (= |v_size_#t~ret31_4| |v_size_#resOutParam_4|) InVars {size_#res=|v_size_#resOutParam_4|} OutVars{size_#t~ret31=|v_size_#t~ret31_4|} AuxVars[] AssignedVars[size_#res, size_#t~ret31] LVA: Formula: (and (= |v_size_#in~t.offsetInParam_4| |v_size_#t~mem30.offset_4|) (= |v_size_#t~mem30.base_4| |v_size_#in~t.baseInParam_4|)) InVars {size_#t~mem30.base=|v_size_#t~mem30.base_4|, size_#t~mem30.offset=|v_size_#t~mem30.offset_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_4|, size_#in~t.base=|v_size_#in~t.baseInParam_4|} AuxVars[] AssignedVars[size_#in~t.offset, size_#t~mem30.base, size_#in~t.base, size_#t~mem30.offset] {2337#true} is VALID [2022-04-27 22:37:00,759 INFO L290 TraceCheckUtils]: 54: Hoare triple {2337#true} [254] L82-3-->sizeFINAL: Formula: (and (<= |v_size_#t~ret31_3| 2147483647) (<= 0 (+ |v_size_#t~ret31_3| 2147483648)) (= (+ |v_size_#t~ret31_3| |v_size_#t~ret29_4| 1) |v_size_#res_2|)) InVars {size_#t~ret29=|v_size_#t~ret29_4|, size_#t~ret31=|v_size_#t~ret31_3|} OutVars{size_#t~mem30.base=|v_size_#t~mem30.base_3|, size_#t~mem30.offset=|v_size_#t~mem30.offset_3|, size_#t~mem28.offset=|v_size_#t~mem28.offset_3|, size_#res=|v_size_#res_2|, size_#t~mem28.base=|v_size_#t~mem28.base_3|} AuxVars[] AssignedVars[size_#t~mem30.base, size_#t~mem28.base, size_#t~ret29, size_#t~mem30.offset, size_#t~mem28.offset, size_#res, size_#t~ret31] {2337#true} is VALID [2022-04-27 22:37:00,759 INFO L290 TraceCheckUtils]: 55: Hoare triple {2337#true} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:00,759 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {2337#true} {2375#(not (= task_~t.base 0))} [313] sizeEXIT-->L89-1: AOR: Formula: (= |v_task_#t~ret33_4| |v_size_#resOutParam_1|) InVars {size_#res=|v_size_#resOutParam_1|} OutVars{task_#t~ret33=|v_task_#t~ret33_4|} AuxVars[] AssignedVars[task_#t~ret33, size_#res] LVA: Formula: (and (= v_task_~t.base_8 |v_size_#in~t.baseInParam_1|) (= |v_size_#in~t.offsetInParam_1| v_task_~t.offset_8)) InVars {task_~t.offset=v_task_~t.offset_8, task_~t.base=v_task_~t.base_8} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_1|, size_#in~t.base=|v_size_#in~t.baseInParam_1|} AuxVars[] AssignedVars[task_~t.offset, size_#in~t.offset, size_#in~t.base, task_~t.base] {2375#(not (= task_~t.base 0))} is VALID [2022-04-27 22:37:00,760 INFO L290 TraceCheckUtils]: 57: Hoare triple {2375#(not (= task_~t.base 0))} [227] L89-1-->L90: Formula: (and (<= |v_task_#t~ret33_3| 2147483647) (<= 0 (+ |v_task_#t~ret33_3| 2147483648)) (= |v_task_#t~ret33_3| v_task_~n~1_8)) InVars {task_#t~ret33=|v_task_#t~ret33_3|} OutVars{task_~n~1=v_task_~n~1_8} AuxVars[] AssignedVars[task_#t~ret33, task_~n~1] {2375#(not (= task_~t.base 0))} is VALID [2022-04-27 22:37:00,760 INFO L272 TraceCheckUtils]: 58: Hoare triple {2375#(not (= task_~t.base 0))} [231] L90-->assume_cycle_if_notENTRY: Formula: (= |v_assume_cycle_if_not_#in~condInParam_1| (ite (not (= v_task_~n~1_9 0)) 1 0)) InVars {task_~n~1=v_task_~n~1_9} OutVars{assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[task_~n~1, assume_cycle_if_not_#in~cond] {2337#true} is VALID [2022-04-27 22:37:00,760 INFO L290 TraceCheckUtils]: 59: Hoare triple {2337#true} [236] assume_cycle_if_notENTRY-->L9: Formula: (= v_assume_cycle_if_not_~cond_3 |v_assume_cycle_if_not_#in~cond_1|) InVars {assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~cond_1|} OutVars{assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~cond_1|, assume_cycle_if_not_~cond=v_assume_cycle_if_not_~cond_3} AuxVars[] AssignedVars[assume_cycle_if_not_~cond] {2337#true} is VALID [2022-04-27 22:37:00,760 INFO L290 TraceCheckUtils]: 60: Hoare triple {2337#true} [243] L9-->L9-5: Formula: (not (= v_assume_cycle_if_not_~cond_1 0)) InVars {assume_cycle_if_not_~cond=v_assume_cycle_if_not_~cond_1} OutVars{assume_cycle_if_not_~cond=v_assume_cycle_if_not_~cond_1} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:00,760 INFO L290 TraceCheckUtils]: 61: Hoare triple {2337#true} [252] L9-5-->assume_cycle_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:00,760 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {2337#true} {2375#(not (= task_~t.base 0))} [317] assume_cycle_if_notEXIT-->L90-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_cycle_if_not_#in~condInParam_1| (ite (not (= v_task_~n~1_9 0)) 1 0)) InVars {task_~n~1=v_task_~n~1_9} OutVars{assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[task_~n~1, assume_cycle_if_not_#in~cond] {2375#(not (= task_~t.base 0))} is VALID [2022-04-27 22:37:00,760 INFO L290 TraceCheckUtils]: 63: Hoare triple {2375#(not (= task_~t.base 0))} [235] L90-1-->L91: Formula: (and (= (store |v_#length_13| |v_task_#t~malloc34.base_1| (* 4 v_task_~n~1_2)) |v_#length_12|) (< |v_task_#t~malloc34.base_1| |v_#StackHeapBarrier_3|) (= 0 |v_task_#t~malloc34.offset_1|) (= |v_#valid_16| (store |v_#valid_17| |v_task_#t~malloc34.base_1| 1)) (not (= |v_task_#t~malloc34.base_1| 0)) (= (select |v_#valid_17| |v_task_#t~malloc34.base_1|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_3|, #length=|v_#length_13|, task_~n~1=v_task_~n~1_2, #valid=|v_#valid_17|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_3|, task_~n~1=v_task_~n~1_2, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_1|, #valid=|v_#valid_16|, task_#t~malloc34.base=|v_task_#t~malloc34.base_1|, #length=|v_#length_12|} AuxVars[] AssignedVars[task_#t~malloc34.offset, #valid, task_#t~malloc34.base, #length] {2375#(not (= task_~t.base 0))} is VALID [2022-04-27 22:37:00,761 INFO L272 TraceCheckUtils]: 64: Hoare triple {2375#(not (= task_~t.base 0))} [241] L91-->#Ultimate.meminitENTRY: Formula: (and (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_task_#t~malloc34.offset_4|) (= v_task_~n~1_10 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_task_#t~malloc34.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= (* v_task_~n~1_10 4) |v_#Ultimate.meminit_#productInParam_1|)) InVars {task_#t~malloc34.base=|v_task_#t~malloc34.base_4|, task_~n~1=v_task_~n~1_10, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[task_~n~1, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, task_#t~malloc34.offset, task_#t~malloc34.base, #Ultimate.meminit_#product, #Ultimate.meminit_#ptr.base, #Ultimate.meminit_#ptr.offset] {2431#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-04-27 22:37:00,761 INFO L290 TraceCheckUtils]: 65: Hoare triple {2431#(= |#memory_int| |old(#memory_int)|)} [248] #Ultimate.meminitENTRY-->#Ultimate.meminitFINAL: Formula: (= (store |v_#memory_int_12| |v_#Ultimate.meminit_#ptr.base_1| ((as const (Array Int Int)) 0)) |v_#memory_int_11|) InVars {#memory_int=|v_#memory_int_12|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} OutVars{#memory_int=|v_#memory_int_11|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} AuxVars[] AssignedVars[#memory_int] {2337#true} is VALID [2022-04-27 22:37:00,761 INFO L290 TraceCheckUtils]: 66: Hoare triple {2337#true} [259] #Ultimate.meminitFINAL-->#Ultimate.meminitEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:00,762 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {2337#true} {2375#(not (= task_~t.base 0))} [318] #Ultimate.meminitEXIT-->L91-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (and (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_task_#t~malloc34.offset_4|) (= v_task_~n~1_10 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_task_#t~malloc34.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= (* v_task_~n~1_10 4) |v_#Ultimate.meminit_#productInParam_1|)) InVars {task_#t~malloc34.base=|v_task_#t~malloc34.base_4|, task_~n~1=v_task_~n~1_10, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[task_~n~1, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, task_#t~malloc34.offset, task_#t~malloc34.base, #Ultimate.meminit_#product, #Ultimate.meminit_#ptr.base, #Ultimate.meminit_#ptr.offset] {2375#(not (= task_~t.base 0))} is VALID [2022-04-27 22:37:00,762 INFO L290 TraceCheckUtils]: 68: Hoare triple {2375#(not (= task_~t.base 0))} [247] L91-1-->L92: Formula: (and (= v_task_~x~0.offset_1 |v_task_#t~malloc34.offset_3|) (= |v_task_#t~malloc34.base_3| v_task_~x~0.base_1)) InVars {task_#t~malloc34.base=|v_task_#t~malloc34.base_3|, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_3|} OutVars{task_#t~malloc34.base=|v_task_#t~malloc34.base_3|, task_~x~0.base=v_task_~x~0.base_1, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_3|, task_~x~0.offset=v_task_~x~0.offset_1} AuxVars[] AssignedVars[task_~x~0.base, task_~x~0.offset] {2375#(not (= task_~t.base 0))} is VALID [2022-04-27 22:37:00,763 INFO L272 TraceCheckUtils]: 69: Hoare triple {2375#(not (= task_~t.base 0))} [258] L92-->tree_inorderENTRY: Formula: (and (= v_task_~t.base_9 |v_tree_inorder_#in~t.baseInParam_1|) (= |v_tree_inorder_#in~a.baseInParam_1| v_task_~x~0.base_6) (= |v_tree_inorder_#in~t.offsetInParam_1| v_task_~t.offset_9) (= |v_tree_inorder_#in~a.offsetInParam_1| v_task_~x~0.offset_6) (= v_task_~n~1_11 |v_tree_inorder_#in~iInParam_1|)) InVars {task_~t.offset=v_task_~t.offset_9, task_~x~0.base=v_task_~x~0.base_6, task_~n~1=v_task_~n~1_11, task_~t.base=v_task_~t.base_9, task_~x~0.offset=v_task_~x~0.offset_6} OutVars{tree_inorder_#in~i=|v_tree_inorder_#in~iInParam_1|, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offsetInParam_1|, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.baseInParam_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offsetInParam_1|, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.baseInParam_1|} AuxVars[] AssignedVars[tree_inorder_#in~i, task_~t.offset, tree_inorder_#in~a.offset, task_~x~0.base, task_~n~1, tree_inorder_#in~a.base, tree_inorder_#in~t.base, tree_inorder_#in~t.offset, task_~t.base, task_~x~0.offset] {2432#(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 22:37:00,763 INFO L290 TraceCheckUtils]: 70: Hoare triple {2432#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} [262] tree_inorderENTRY-->L70: Formula: (and (= v_tree_inorder_~i_1 |v_tree_inorder_#in~i_1|) (= v_tree_inorder_~a.base_1 |v_tree_inorder_#in~a.base_1|) (= |v_tree_inorder_#in~t.offset_1| v_tree_inorder_~t.offset_1) (= |v_tree_inorder_#in~a.offset_1| v_tree_inorder_~a.offset_1) (= v_tree_inorder_~t.base_1 |v_tree_inorder_#in~t.base_1|)) InVars {tree_inorder_#in~i=|v_tree_inorder_#in~i_1|, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offset_1|, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.base_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offset_1|, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.base_1|} OutVars{tree_inorder_#in~i=|v_tree_inorder_#in~i_1|, tree_inorder_~a.base=v_tree_inorder_~a.base_1, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offset_1|, tree_inorder_~t.offset=v_tree_inorder_~t.offset_1, tree_inorder_~a.offset=v_tree_inorder_~a.offset_1, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.base_1|, tree_inorder_~t.base=v_tree_inorder_~t.base_1, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.base_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offset_1|, tree_inorder_~i=v_tree_inorder_~i_1} AuxVars[] AssignedVars[tree_inorder_~a.base, tree_inorder_~t.offset, tree_inorder_~a.offset, tree_inorder_~t.base, tree_inorder_~i] {2433#(= |tree_inorder_#in~t.base| tree_inorder_~t.base)} is VALID [2022-04-27 22:37:00,763 INFO L290 TraceCheckUtils]: 71: Hoare triple {2433#(= |tree_inorder_#in~t.base| tree_inorder_~t.base)} [265] L70-->tree_inorderFINAL: Formula: (and (= v_tree_inorder_~i_2 |v_tree_inorder_#res_1|) (= v_tree_inorder_~t.base_2 0) (= v_tree_inorder_~t.offset_2 0)) InVars {tree_inorder_~t.base=v_tree_inorder_~t.base_2, tree_inorder_~t.offset=v_tree_inorder_~t.offset_2, tree_inorder_~i=v_tree_inorder_~i_2} OutVars{tree_inorder_~t.base=v_tree_inorder_~t.base_2, tree_inorder_#res=|v_tree_inorder_#res_1|, tree_inorder_~t.offset=v_tree_inorder_~t.offset_2, tree_inorder_~i=v_tree_inorder_~i_2} AuxVars[] AssignedVars[tree_inorder_#res] {2434#(= |tree_inorder_#in~t.base| 0)} is VALID [2022-04-27 22:37:00,763 INFO L290 TraceCheckUtils]: 72: Hoare triple {2434#(= |tree_inorder_#in~t.base| 0)} [270] tree_inorderFINAL-->tree_inorderEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2434#(= |tree_inorder_#in~t.base| 0)} is VALID [2022-04-27 22:37:00,764 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {2434#(= |tree_inorder_#in~t.base| 0)} {2375#(not (= task_~t.base 0))} [320] tree_inorderEXIT-->L92-1: AOR: Formula: (= |v_tree_inorder_#resOutParam_1| |v_task_#t~ret35_4|) InVars {tree_inorder_#res=|v_tree_inorder_#resOutParam_1|} OutVars{task_#t~ret35=|v_task_#t~ret35_4|} AuxVars[] AssignedVars[task_#t~ret35, tree_inorder_#res] LVA: Formula: (and (= v_task_~t.base_9 |v_tree_inorder_#in~t.baseInParam_1|) (= |v_tree_inorder_#in~a.baseInParam_1| v_task_~x~0.base_6) (= |v_tree_inorder_#in~t.offsetInParam_1| v_task_~t.offset_9) (= |v_tree_inorder_#in~a.offsetInParam_1| v_task_~x~0.offset_6) (= v_task_~n~1_11 |v_tree_inorder_#in~iInParam_1|)) InVars {task_~t.offset=v_task_~t.offset_9, task_~x~0.base=v_task_~x~0.base_6, task_~n~1=v_task_~n~1_11, task_~t.base=v_task_~t.base_9, task_~x~0.offset=v_task_~x~0.offset_6} OutVars{tree_inorder_#in~i=|v_tree_inorder_#in~iInParam_1|, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offsetInParam_1|, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.baseInParam_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offsetInParam_1|, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.baseInParam_1|} AuxVars[] AssignedVars[tree_inorder_#in~i, task_~t.offset, tree_inorder_#in~a.offset, task_~x~0.base, task_~n~1, tree_inorder_#in~a.base, tree_inorder_#in~t.base, tree_inorder_#in~t.offset, task_~t.base, task_~x~0.offset] {2338#false} is VALID [2022-04-27 22:37:00,764 INFO L290 TraceCheckUtils]: 74: Hoare triple {2338#false} [261] L92-1-->L93: Formula: (and (<= 0 (+ |v_task_#t~ret35_3| 2147483648)) (= |v_task_#t~mem36_1| (select (select |v_#memory_int_28| v_task_~x~0.base_3) v_task_~x~0.offset_3)) (<= |v_task_#t~ret35_3| 2147483647)) InVars {#memory_int=|v_#memory_int_28|, task_~x~0.base=v_task_~x~0.base_3, task_#t~ret35=|v_task_#t~ret35_3|, task_~x~0.offset=v_task_~x~0.offset_3} OutVars{#memory_int=|v_#memory_int_28|, task_#t~mem36=|v_task_#t~mem36_1|, task_~x~0.base=v_task_~x~0.base_3, task_~x~0.offset=v_task_~x~0.offset_3} AuxVars[] AssignedVars[task_#t~ret35, task_#t~mem36] {2338#false} is VALID [2022-04-27 22:37:00,764 INFO L272 TraceCheckUtils]: 75: Hoare triple {2338#false} [264] L93-->__VERIFIER_assertENTRY: Formula: (= (ite (= |v_task_#t~mem36_4| v_task_~a~1_4) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {task_#t~mem36=|v_task_#t~mem36_4|, task_~a~1=v_task_~a~1_4} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, task_#t~mem36, task_~a~1] {2338#false} is VALID [2022-04-27 22:37:00,764 INFO L290 TraceCheckUtils]: 76: Hoare triple {2338#false} [269] __VERIFIER_assertENTRY-->L16: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2338#false} is VALID [2022-04-27 22:37:00,764 INFO L290 TraceCheckUtils]: 77: Hoare triple {2338#false} [274] L16-->L16-1: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2338#false} is VALID [2022-04-27 22:37:00,764 INFO L290 TraceCheckUtils]: 78: Hoare triple {2338#false} [280] L16-1-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2338#false} is VALID [2022-04-27 22:37:00,765 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 8 proven. 2 refuted. 0 times theorem prover too weak. 23 trivial. 0 not checked. [2022-04-27 22:37:00,765 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:37:00,767 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [472095378] [2022-04-27 22:37:00,768 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [472095378] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:37:00,768 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1908837553] [2022-04-27 22:37:00,768 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:37:00,768 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:37:00,768 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:37:00,769 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:37:00,770 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-27 22:37:00,863 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:37:00,864 INFO L263 TraceCheckSpWp]: Trace formula consists of 428 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-27 22:37:00,877 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:37:00,880 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:37:01,063 INFO L272 TraceCheckUtils]: 0: Hoare triple {2337#true} [204] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:01,063 INFO L290 TraceCheckUtils]: 1: Hoare triple {2337#true} [206] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_23| 1))) (and (< 0 |v_#StackHeapBarrier_2|) (= (select |v_#valid_15| 1) 1) (= (select |v_#valid_15| 2) 1) (= (select |v_#length_11| 2) 16) (= (select |v_#length_11| 3) 12) (= |v_#NULL.base_1| 0) (= (select |v_#valid_15| 0) 0) (= (select .cse0 0) 48) (= (select |v_#valid_15| 3) 1) (= (select .cse0 1) 0) (= 2 (select |v_#length_11| 1)) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_23|, #StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_11|, #valid=|v_#valid_15|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #valid=|v_#valid_15|, #memory_int=|v_#memory_int_23|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_11|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {2337#true} is VALID [2022-04-27 22:37:01,063 INFO L290 TraceCheckUtils]: 2: Hoare triple {2337#true} [209] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:01,064 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2337#true} {2337#true} [305] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:01,064 INFO L272 TraceCheckUtils]: 4: Hoare triple {2337#true} [205] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:01,064 INFO L272 TraceCheckUtils]: 5: Hoare triple {2337#true} [208] mainENTRY-->nondet_treeENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:01,064 INFO L290 TraceCheckUtils]: 6: Hoare triple {2337#true} [212] nondet_treeENTRY-->L30: Formula: (and (= v_nondet_tree_~n~0.offset_1 0) (= (store |v_#length_6| v_nondet_tree_~n~0.base_1 20) |v_#length_5|) (= (mod |v_nondet_tree_#t~nondet5_4| 256) 0) (<= |v_nondet_tree_#t~nondet7_2| 2147483647) (not (= v_nondet_tree_~n~0.base_1 0)) (= |v_#memory_$Pointer$.base_15| (store |v_#memory_$Pointer$.base_16| v_nondet_tree_~n~0.base_1 (store (select |v_#memory_$Pointer$.base_16| v_nondet_tree_~n~0.base_1) v_nondet_tree_~n~0.offset_1 (select (select |v_#memory_$Pointer$.base_15| v_nondet_tree_~n~0.base_1) v_nondet_tree_~n~0.offset_1)))) (= (store |v_#memory_$Pointer$.offset_16| v_nondet_tree_~n~0.base_1 (store (select |v_#memory_$Pointer$.offset_16| v_nondet_tree_~n~0.base_1) v_nondet_tree_~n~0.offset_1 (select (select |v_#memory_$Pointer$.offset_15| v_nondet_tree_~n~0.base_1) v_nondet_tree_~n~0.offset_1))) |v_#memory_$Pointer$.offset_15|) (= (select |v_#valid_10| v_nondet_tree_~n~0.base_1) 0) (= |v_#memory_int_13| (store |v_#memory_int_14| v_nondet_tree_~n~0.base_1 (store (select |v_#memory_int_14| v_nondet_tree_~n~0.base_1) v_nondet_tree_~n~0.offset_1 |v_nondet_tree_#t~nondet7_2|))) (< v_nondet_tree_~n~0.base_1 |v_#StackHeapBarrier_1|) (<= 0 (+ |v_nondet_tree_#t~nondet7_2| 2147483648)) (= |v_#valid_9| (store |v_#valid_10| v_nondet_tree_~n~0.base_1 1))) InVars {nondet_tree_#t~nondet7=|v_nondet_tree_#t~nondet7_2|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_16|, nondet_tree_#t~nondet5=|v_nondet_tree_#t~nondet5_4|, #valid=|v_#valid_10|, #memory_int=|v_#memory_int_14|, #length=|v_#length_6|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_16|} OutVars{nondet_tree_~n~0.base=v_nondet_tree_~n~0.base_1, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_15|, nondet_tree_#t~malloc6.base=|v_nondet_tree_#t~malloc6.base_1|, nondet_tree_~n~0.offset=v_nondet_tree_~n~0.offset_1, #valid=|v_#valid_9|, #memory_int=|v_#memory_int_13|, #length=|v_#length_5|, nondet_tree_#t~malloc6.offset=|v_nondet_tree_#t~malloc6.offset_1|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_15|} AuxVars[] AssignedVars[nondet_tree_#t~nondet7, nondet_tree_~n~0.base, #memory_$Pointer$.base, nondet_tree_#t~malloc6.base, nondet_tree_#t~nondet5, nondet_tree_~n~0.offset, #valid, #memory_int, #length, nondet_tree_#t~malloc6.offset, #memory_$Pointer$.offset] {2456#(not (= nondet_tree_~n~0.base 0))} is VALID [2022-04-27 22:37:01,064 INFO L272 TraceCheckUtils]: 7: Hoare triple {2456#(not (= nondet_tree_~n~0.base 0))} [216] L30-->nondet_treeENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:01,064 INFO L290 TraceCheckUtils]: 8: Hoare triple {2337#true} [211] nondet_treeENTRY-->nondet_treeFINAL: Formula: (and (= 0 |v_nondet_tree_#res.base_1|) (= |v_nondet_tree_#res.offset_1| 0) (not (= (mod |v_nondet_tree_#t~nondet5_2| 256) 0))) InVars {nondet_tree_#t~nondet5=|v_nondet_tree_#t~nondet5_2|} OutVars{nondet_tree_#res.base=|v_nondet_tree_#res.base_1|, nondet_tree_#res.offset=|v_nondet_tree_#res.offset_1|} AuxVars[] AssignedVars[nondet_tree_#t~nondet5, nondet_tree_#res.base, nondet_tree_#res.offset] {2337#true} is VALID [2022-04-27 22:37:01,064 INFO L290 TraceCheckUtils]: 9: Hoare triple {2337#true} [215] nondet_treeFINAL-->nondet_treeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:01,065 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2337#true} {2456#(not (= nondet_tree_~n~0.base 0))} [307] nondet_treeEXIT-->L30-1: AOR: Formula: (and (= |v_nondet_tree_#res.offsetOutParam_2| |v_nondet_tree_#t~ret8.offset_4|) (= |v_nondet_tree_#res.baseOutParam_2| |v_nondet_tree_#t~ret8.base_4|)) InVars {nondet_tree_#res.base=|v_nondet_tree_#res.baseOutParam_2|, nondet_tree_#res.offset=|v_nondet_tree_#res.offsetOutParam_2|} OutVars{nondet_tree_#t~ret8.base=|v_nondet_tree_#t~ret8.base_4|, nondet_tree_#t~ret8.offset=|v_nondet_tree_#t~ret8.offset_4|} AuxVars[] AssignedVars[nondet_tree_#t~ret8.offset, nondet_tree_#res.base, nondet_tree_#res.offset, nondet_tree_#t~ret8.base] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2456#(not (= nondet_tree_~n~0.base 0))} is VALID [2022-04-27 22:37:01,065 INFO L290 TraceCheckUtils]: 11: Hoare triple {2456#(not (= nondet_tree_~n~0.base 0))} [219] L30-1-->L31: Formula: (let ((.cse0 (+ 4 v_nondet_tree_~n~0.offset_2))) (and (= (store |v_#memory_int_18| v_nondet_tree_~n~0.base_2 (store (select |v_#memory_int_18| v_nondet_tree_~n~0.base_2) .cse0 (select (select |v_#memory_int_17| v_nondet_tree_~n~0.base_2) .cse0))) |v_#memory_int_17|) (= (store |v_#memory_$Pointer$.offset_20| v_nondet_tree_~n~0.base_2 (store (select |v_#memory_$Pointer$.offset_20| v_nondet_tree_~n~0.base_2) .cse0 |v_nondet_tree_#t~ret8.offset_3|)) |v_#memory_$Pointer$.offset_19|) (= |v_#memory_$Pointer$.base_19| (store |v_#memory_$Pointer$.base_20| v_nondet_tree_~n~0.base_2 (store (select |v_#memory_$Pointer$.base_20| v_nondet_tree_~n~0.base_2) .cse0 |v_nondet_tree_#t~ret8.base_3|))))) InVars {nondet_tree_~n~0.base=v_nondet_tree_~n~0.base_2, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_20|, nondet_tree_~n~0.offset=v_nondet_tree_~n~0.offset_2, #memory_int=|v_#memory_int_18|, nondet_tree_#t~ret8.offset=|v_nondet_tree_#t~ret8.offset_3|, nondet_tree_#t~ret8.base=|v_nondet_tree_#t~ret8.base_3|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_20|} OutVars{#memory_int=|v_#memory_int_17|, nondet_tree_~n~0.base=v_nondet_tree_~n~0.base_2, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_19|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_19|, nondet_tree_~n~0.offset=v_nondet_tree_~n~0.offset_2} AuxVars[] AssignedVars[#memory_$Pointer$.base, #memory_int, nondet_tree_#t~ret8.offset, nondet_tree_#t~ret8.base, #memory_$Pointer$.offset] {2456#(not (= nondet_tree_~n~0.base 0))} is VALID [2022-04-27 22:37:01,065 INFO L272 TraceCheckUtils]: 12: Hoare triple {2456#(not (= nondet_tree_~n~0.base 0))} [223] L31-->nondet_treeENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:01,065 INFO L290 TraceCheckUtils]: 13: Hoare triple {2337#true} [211] nondet_treeENTRY-->nondet_treeFINAL: Formula: (and (= 0 |v_nondet_tree_#res.base_1|) (= |v_nondet_tree_#res.offset_1| 0) (not (= (mod |v_nondet_tree_#t~nondet5_2| 256) 0))) InVars {nondet_tree_#t~nondet5=|v_nondet_tree_#t~nondet5_2|} OutVars{nondet_tree_#res.base=|v_nondet_tree_#res.base_1|, nondet_tree_#res.offset=|v_nondet_tree_#res.offset_1|} AuxVars[] AssignedVars[nondet_tree_#t~nondet5, nondet_tree_#res.base, nondet_tree_#res.offset] {2337#true} is VALID [2022-04-27 22:37:01,065 INFO L290 TraceCheckUtils]: 14: Hoare triple {2337#true} [215] nondet_treeFINAL-->nondet_treeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:01,066 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2337#true} {2456#(not (= nondet_tree_~n~0.base 0))} [308] nondet_treeEXIT-->L31-1: AOR: Formula: (and (= |v_nondet_tree_#res.offsetOutParam_3| |v_nondet_tree_#t~ret9.offset_4|) (= |v_nondet_tree_#res.baseOutParam_3| |v_nondet_tree_#t~ret9.base_4|)) InVars {nondet_tree_#res.base=|v_nondet_tree_#res.baseOutParam_3|, nondet_tree_#res.offset=|v_nondet_tree_#res.offsetOutParam_3|} OutVars{nondet_tree_#t~ret9.offset=|v_nondet_tree_#t~ret9.offset_4|, nondet_tree_#t~ret9.base=|v_nondet_tree_#t~ret9.base_4|} AuxVars[] AssignedVars[nondet_tree_#t~ret9.base, nondet_tree_#res.base, nondet_tree_#res.offset, nondet_tree_#t~ret9.offset] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2456#(not (= nondet_tree_~n~0.base 0))} is VALID [2022-04-27 22:37:01,066 INFO L290 TraceCheckUtils]: 16: Hoare triple {2456#(not (= nondet_tree_~n~0.base 0))} [222] L31-1-->nondet_treeFINAL: Formula: (let ((.cse0 (+ 12 v_nondet_tree_~n~0.offset_3))) (and (= |v_nondet_tree_#res.offset_2| v_nondet_tree_~n~0.offset_3) (= (store |v_#memory_$Pointer$.base_24| v_nondet_tree_~n~0.base_3 (store (select |v_#memory_$Pointer$.base_24| v_nondet_tree_~n~0.base_3) .cse0 |v_nondet_tree_#t~ret9.base_3|)) |v_#memory_$Pointer$.base_23|) (= (store |v_#memory_$Pointer$.offset_24| v_nondet_tree_~n~0.base_3 (store (select |v_#memory_$Pointer$.offset_24| v_nondet_tree_~n~0.base_3) .cse0 |v_nondet_tree_#t~ret9.offset_3|)) |v_#memory_$Pointer$.offset_23|) (= (store |v_#memory_int_22| v_nondet_tree_~n~0.base_3 (store (select |v_#memory_int_22| v_nondet_tree_~n~0.base_3) .cse0 (select (select |v_#memory_int_21| v_nondet_tree_~n~0.base_3) .cse0))) |v_#memory_int_21|) (= v_nondet_tree_~n~0.base_3 |v_nondet_tree_#res.base_2|))) InVars {nondet_tree_~n~0.base=v_nondet_tree_~n~0.base_3, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_24|, nondet_tree_~n~0.offset=v_nondet_tree_~n~0.offset_3, #memory_int=|v_#memory_int_22|, nondet_tree_#t~ret9.base=|v_nondet_tree_#t~ret9.base_3|, nondet_tree_#t~ret9.offset=|v_nondet_tree_#t~ret9.offset_3|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_24|} OutVars{nondet_tree_~n~0.base=v_nondet_tree_~n~0.base_3, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_23|, nondet_tree_~n~0.offset=v_nondet_tree_~n~0.offset_3, #memory_int=|v_#memory_int_21|, nondet_tree_#res.base=|v_nondet_tree_#res.base_2|, nondet_tree_#res.offset=|v_nondet_tree_#res.offset_2|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_23|} AuxVars[] AssignedVars[#memory_$Pointer$.base, #memory_int, nondet_tree_#res.base, nondet_tree_#t~ret9.base, nondet_tree_#res.offset, nondet_tree_#t~ret9.offset, #memory_$Pointer$.offset] {2487#(not (= |nondet_tree_#res.base| 0))} is VALID [2022-04-27 22:37:01,066 INFO L290 TraceCheckUtils]: 17: Hoare triple {2487#(not (= |nondet_tree_#res.base| 0))} [215] nondet_treeFINAL-->nondet_treeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2487#(not (= |nondet_tree_#res.base| 0))} is VALID [2022-04-27 22:37:01,067 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2487#(not (= |nondet_tree_#res.base| 0))} {2337#true} [306] nondet_treeEXIT-->L110: AOR: Formula: (and (= |v_nondet_tree_#res.offsetOutParam_1| |v_main_#t~ret45.offset_4|) (= |v_nondet_tree_#res.baseOutParam_1| |v_main_#t~ret45.base_4|)) InVars {nondet_tree_#res.base=|v_nondet_tree_#res.baseOutParam_1|, nondet_tree_#res.offset=|v_nondet_tree_#res.offsetOutParam_1|} OutVars{main_#t~ret45.base=|v_main_#t~ret45.base_4|, main_#t~ret45.offset=|v_main_#t~ret45.offset_4|} AuxVars[] AssignedVars[main_#t~ret45.offset, main_#t~ret45.base, nondet_tree_#res.base, nondet_tree_#res.offset] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2494#(not (= |main_#t~ret45.base| 0))} is VALID [2022-04-27 22:37:01,067 INFO L272 TraceCheckUtils]: 19: Hoare triple {2494#(not (= |main_#t~ret45.base| 0))} [210] L110-->taskENTRY: Formula: (and (= |v_main_#t~ret45.base_5| |v_task_#in~t.baseInParam_1|) (= |v_main_#t~ret45.offset_5| |v_task_#in~t.offsetInParam_1|)) InVars {main_#t~ret45.base=|v_main_#t~ret45.base_5|, main_#t~ret45.offset=|v_main_#t~ret45.offset_5|} OutVars{task_#in~t.base=|v_task_#in~t.baseInParam_1|, task_#in~t.offset=|v_task_#in~t.offsetInParam_1|} AuxVars[] AssignedVars[task_#in~t.offset, main_#t~ret45.offset, main_#t~ret45.base, task_#in~t.base] {2498#(not (= |task_#in~t.base| 0))} is VALID [2022-04-27 22:37:01,067 INFO L290 TraceCheckUtils]: 20: Hoare triple {2498#(not (= |task_#in~t.base| 0))} [214] taskENTRY-->L86: Formula: (and (= v_task_~t.base_4 |v_task_#in~t.base_1|) (= |v_task_#in~t.offset_1| v_task_~t.offset_4)) InVars {task_#in~t.base=|v_task_#in~t.base_1|, task_#in~t.offset=|v_task_#in~t.offset_1|} OutVars{task_~t.offset=v_task_~t.offset_4, task_#in~t.base=|v_task_#in~t.base_1|, task_#in~t.offset=|v_task_#in~t.offset_1|, task_~t.base=v_task_~t.base_4} AuxVars[] AssignedVars[task_~t.offset, task_~t.base] {2375#(not (= task_~t.base 0))} is VALID [2022-04-27 22:37:01,068 INFO L272 TraceCheckUtils]: 21: Hoare triple {2375#(not (= task_~t.base 0))} [218] L86-->minENTRY: Formula: (and (= v_task_~t.base_7 |v_min_#in~n.baseInParam_3|) (= |v_min_#in~n.offsetInParam_3| v_task_~t.offset_7)) InVars {task_~t.offset=v_task_~t.offset_7, task_~t.base=v_task_~t.base_7} OutVars{min_#in~n.base=|v_min_#in~n.baseInParam_3|, min_#in~n.offset=|v_min_#in~n.offsetInParam_3|} AuxVars[] AssignedVars[task_~t.offset, min_#in~n.offset, task_~t.base, min_#in~n.base] {2337#true} is VALID [2022-04-27 22:37:01,068 INFO L290 TraceCheckUtils]: 22: Hoare triple {2337#true} [221] minENTRY-->L37: Formula: (and (= |v_min_#in~n.base_1| v_min_~n.base_3) (= v_min_~n.offset_3 |v_min_#in~n.offset_1|)) InVars {min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} OutVars{min_~n.offset=v_min_~n.offset_3, min_~n.base=v_min_~n.base_3, min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} AuxVars[] AssignedVars[min_~n.offset, min_~n.base] {2337#true} is VALID [2022-04-27 22:37:01,068 INFO L290 TraceCheckUtils]: 23: Hoare triple {2337#true} [226] L37-->L41: Formula: (let ((.cse0 (+ v_min_~n.offset_1 4))) (and (= (select (select |v_#memory_$Pointer$.offset_13| v_min_~n.base_1) .cse0) |v_min_#t~mem11.offset_1|) (= v_min_~a~0_1 (select (select |v_#memory_int_10| v_min_~n.base_1) v_min_~n.offset_1)) (= |v_min_#t~mem11.base_1| (select (select |v_#memory_$Pointer$.base_13| v_min_~n.base_1) .cse0)) (or (not (= v_min_~n.base_1 0)) (not (= v_min_~n.offset_1 0))))) InVars {min_~n.offset=v_min_~n.offset_1, #memory_int=|v_#memory_int_10|, min_~n.base=v_min_~n.base_1, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_13|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_13|} OutVars{min_~n.offset=v_min_~n.offset_1, min_~n.base=v_min_~n.base_1, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_13|, min_~a~0=v_min_~a~0_1, min_#t~mem10=|v_min_#t~mem10_1|, #memory_int=|v_#memory_int_10|, min_#t~mem11.base=|v_min_#t~mem11.base_1|, min_#t~mem11.offset=|v_min_#t~mem11.offset_1|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_13|} AuxVars[] AssignedVars[min_~a~0, min_#t~mem10, min_#t~mem11.base, min_#t~mem11.offset] {2337#true} is VALID [2022-04-27 22:37:01,068 INFO L272 TraceCheckUtils]: 24: Hoare triple {2337#true} [230] L41-->minENTRY: Formula: (and (= |v_min_#t~mem11.offset_4| |v_min_#in~n.offsetInParam_1|) (= |v_min_#in~n.baseInParam_1| |v_min_#t~mem11.base_4|)) InVars {min_#t~mem11.base=|v_min_#t~mem11.base_4|, min_#t~mem11.offset=|v_min_#t~mem11.offset_4|} OutVars{min_#in~n.base=|v_min_#in~n.baseInParam_1|, min_#in~n.offset=|v_min_#in~n.offsetInParam_1|} AuxVars[] AssignedVars[min_#in~n.offset, min_#t~mem11.base, min_#in~n.base, min_#t~mem11.offset] {2337#true} is VALID [2022-04-27 22:37:01,068 INFO L290 TraceCheckUtils]: 25: Hoare triple {2337#true} [221] minENTRY-->L37: Formula: (and (= |v_min_#in~n.base_1| v_min_~n.base_3) (= v_min_~n.offset_3 |v_min_#in~n.offset_1|)) InVars {min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} OutVars{min_~n.offset=v_min_~n.offset_3, min_~n.base=v_min_~n.base_3, min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} AuxVars[] AssignedVars[min_~n.offset, min_~n.base] {2337#true} is VALID [2022-04-27 22:37:01,068 INFO L290 TraceCheckUtils]: 26: Hoare triple {2337#true} [225] L37-->minFINAL: Formula: (and (= 2147483647 |v_min_#res_4|) (= v_min_~n.base_4 0) (= v_min_~n.offset_4 0)) InVars {min_~n.offset=v_min_~n.offset_4, min_~n.base=v_min_~n.base_4} OutVars{min_~n.offset=v_min_~n.offset_4, min_~n.base=v_min_~n.base_4, min_#res=|v_min_#res_4|} AuxVars[] AssignedVars[min_#res] {2337#true} is VALID [2022-04-27 22:37:01,068 INFO L290 TraceCheckUtils]: 27: Hoare triple {2337#true} [229] minFINAL-->minEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:01,068 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2337#true} {2337#true} [310] minEXIT-->L41-1: AOR: Formula: (= |v_min_#resOutParam_1| |v_min_#t~ret12_4|) InVars {min_#res=|v_min_#resOutParam_1|} OutVars{min_#t~ret12=|v_min_#t~ret12_4|} AuxVars[] AssignedVars[min_#res, min_#t~ret12] LVA: Formula: (and (= |v_min_#t~mem11.offset_4| |v_min_#in~n.offsetInParam_1|) (= |v_min_#in~n.baseInParam_1| |v_min_#t~mem11.base_4|)) InVars {min_#t~mem11.base=|v_min_#t~mem11.base_4|, min_#t~mem11.offset=|v_min_#t~mem11.offset_4|} OutVars{min_#in~n.base=|v_min_#in~n.baseInParam_1|, min_#in~n.offset=|v_min_#in~n.offsetInParam_1|} AuxVars[] AssignedVars[min_#in~n.offset, min_#t~mem11.base, min_#in~n.base, min_#t~mem11.offset] {2337#true} is VALID [2022-04-27 22:37:01,068 INFO L290 TraceCheckUtils]: 29: Hoare triple {2337#true} [234] L41-1-->L42: Formula: (let ((.cse0 (+ v_min_~n.offset_2 12))) (and (<= |v_min_#t~ret12_3| 2147483647) (<= 0 (+ |v_min_#t~ret12_3| 2147483648)) (= (select (select |v_#memory_$Pointer$.offset_14| v_min_~n.base_2) .cse0) |v_min_#t~mem13.offset_1|) (= |v_min_#t~mem13.base_1| (select (select |v_#memory_$Pointer$.base_14| v_min_~n.base_2) .cse0)) (= v_min_~b~0_1 |v_min_#t~ret12_3|))) InVars {min_~n.offset=v_min_~n.offset_2, min_~n.base=v_min_~n.base_2, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_14|, min_#t~ret12=|v_min_#t~ret12_3|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_14|} OutVars{min_~n.offset=v_min_~n.offset_2, min_~n.base=v_min_~n.base_2, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_14|, min_~b~0=v_min_~b~0_1, min_#t~mem13.offset=|v_min_#t~mem13.offset_1|, min_#t~mem11.base=|v_min_#t~mem11.base_3|, min_#t~mem13.base=|v_min_#t~mem13.base_1|, min_#t~mem11.offset=|v_min_#t~mem11.offset_3|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_14|} AuxVars[] AssignedVars[min_~b~0, min_#t~mem13.offset, min_#t~mem11.base, min_#t~mem13.base, min_#t~ret12, min_#t~mem11.offset] {2337#true} is VALID [2022-04-27 22:37:01,068 INFO L272 TraceCheckUtils]: 30: Hoare triple {2337#true} [240] L42-->minENTRY: Formula: (and (= |v_min_#t~mem13.base_4| |v_min_#in~n.baseInParam_2|) (= |v_min_#in~n.offsetInParam_2| |v_min_#t~mem13.offset_4|)) InVars {min_#t~mem13.base=|v_min_#t~mem13.base_4|, min_#t~mem13.offset=|v_min_#t~mem13.offset_4|} OutVars{min_#in~n.base=|v_min_#in~n.baseInParam_2|, min_#in~n.offset=|v_min_#in~n.offsetInParam_2|} AuxVars[] AssignedVars[min_#in~n.offset, min_#t~mem13.offset, min_#t~mem13.base, min_#in~n.base] {2337#true} is VALID [2022-04-27 22:37:01,068 INFO L290 TraceCheckUtils]: 31: Hoare triple {2337#true} [221] minENTRY-->L37: Formula: (and (= |v_min_#in~n.base_1| v_min_~n.base_3) (= v_min_~n.offset_3 |v_min_#in~n.offset_1|)) InVars {min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} OutVars{min_~n.offset=v_min_~n.offset_3, min_~n.base=v_min_~n.base_3, min_#in~n.base=|v_min_#in~n.base_1|, min_#in~n.offset=|v_min_#in~n.offset_1|} AuxVars[] AssignedVars[min_~n.offset, min_~n.base] {2337#true} is VALID [2022-04-27 22:37:01,068 INFO L290 TraceCheckUtils]: 32: Hoare triple {2337#true} [225] L37-->minFINAL: Formula: (and (= 2147483647 |v_min_#res_4|) (= v_min_~n.base_4 0) (= v_min_~n.offset_4 0)) InVars {min_~n.offset=v_min_~n.offset_4, min_~n.base=v_min_~n.base_4} OutVars{min_~n.offset=v_min_~n.offset_4, min_~n.base=v_min_~n.base_4, min_#res=|v_min_#res_4|} AuxVars[] AssignedVars[min_#res] {2337#true} is VALID [2022-04-27 22:37:01,068 INFO L290 TraceCheckUtils]: 33: Hoare triple {2337#true} [229] minFINAL-->minEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:01,069 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {2337#true} {2337#true} [311] minEXIT-->L42-1: AOR: Formula: (= |v_min_#resOutParam_2| |v_min_#t~ret14_4|) InVars {min_#res=|v_min_#resOutParam_2|} OutVars{min_#t~ret14=|v_min_#t~ret14_4|} AuxVars[] AssignedVars[min_#res, min_#t~ret14] LVA: Formula: (and (= |v_min_#t~mem13.base_4| |v_min_#in~n.baseInParam_2|) (= |v_min_#in~n.offsetInParam_2| |v_min_#t~mem13.offset_4|)) InVars {min_#t~mem13.base=|v_min_#t~mem13.base_4|, min_#t~mem13.offset=|v_min_#t~mem13.offset_4|} OutVars{min_#in~n.base=|v_min_#in~n.baseInParam_2|, min_#in~n.offset=|v_min_#in~n.offsetInParam_2|} AuxVars[] AssignedVars[min_#in~n.offset, min_#t~mem13.offset, min_#t~mem13.base, min_#in~n.base] {2337#true} is VALID [2022-04-27 22:37:01,069 INFO L290 TraceCheckUtils]: 35: Hoare triple {2337#true} [239] L42-1-->L43: Formula: (and (<= |v_min_#t~ret14_3| 2147483647) (= v_min_~c~0_1 |v_min_#t~ret14_3|) (<= 0 (+ |v_min_#t~ret14_3| 2147483648))) InVars {min_#t~ret14=|v_min_#t~ret14_3|} OutVars{min_~c~0=v_min_~c~0_1, min_#t~mem13.offset=|v_min_#t~mem13.offset_3|, min_#t~mem13.base=|v_min_#t~mem13.base_3|} AuxVars[] AssignedVars[min_~c~0, min_#t~mem13.offset, min_#t~mem13.base, min_#t~ret14] {2337#true} is VALID [2022-04-27 22:37:01,069 INFO L290 TraceCheckUtils]: 36: Hoare triple {2337#true} [245] L43-->minFINAL: Formula: (and (<= v_min_~b~0_2 v_min_~c~0_2) (= v_min_~b~0_2 |v_min_#res_1|) (<= v_min_~b~0_2 v_min_~a~0_2)) InVars {min_~c~0=v_min_~c~0_2, min_~b~0=v_min_~b~0_2, min_~a~0=v_min_~a~0_2} OutVars{min_~c~0=v_min_~c~0_2, min_#res=|v_min_#res_1|, min_~b~0=v_min_~b~0_2, min_~a~0=v_min_~a~0_2} AuxVars[] AssignedVars[min_#res] {2337#true} is VALID [2022-04-27 22:37:01,069 INFO L290 TraceCheckUtils]: 37: Hoare triple {2337#true} [229] minFINAL-->minEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:01,069 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {2337#true} {2375#(not (= task_~t.base 0))} [312] minEXIT-->L86-1: AOR: Formula: (= |v_min_#resOutParam_3| |v_task_#t~ret32_4|) InVars {min_#res=|v_min_#resOutParam_3|} OutVars{task_#t~ret32=|v_task_#t~ret32_4|} AuxVars[] AssignedVars[task_#t~ret32, min_#res] LVA: Formula: (and (= v_task_~t.base_7 |v_min_#in~n.baseInParam_3|) (= |v_min_#in~n.offsetInParam_3| v_task_~t.offset_7)) InVars {task_~t.offset=v_task_~t.offset_7, task_~t.base=v_task_~t.base_7} OutVars{min_#in~n.base=|v_min_#in~n.baseInParam_3|, min_#in~n.offset=|v_min_#in~n.offsetInParam_3|} AuxVars[] AssignedVars[task_~t.offset, min_#in~n.offset, task_~t.base, min_#in~n.base] {2375#(not (= task_~t.base 0))} is VALID [2022-04-27 22:37:01,069 INFO L290 TraceCheckUtils]: 39: Hoare triple {2375#(not (= task_~t.base 0))} [220] L86-1-->L89: Formula: (and (< |v_#StackHeapBarrier_5| |v_task_~#b~1.base_5|) (= |v_#length_16| (store |v_#length_17| |v_task_~#b~1.base_5| 4)) (not (= |v_task_~#b~1.base_5| 0)) (<= |v_task_#t~ret32_3| 2147483647) (= |v_task_#t~ret32_3| v_task_~a~1_3) (= (select |v_#valid_27| |v_task_~#b~1.base_5|) 0) (<= 0 (+ |v_task_#t~ret32_3| 2147483648)) (= |v_task_~#b~1.offset_5| 0) (= (store |v_#valid_27| |v_task_~#b~1.base_5| 1) |v_#valid_26|)) InVars {task_#t~ret32=|v_task_#t~ret32_3|, #StackHeapBarrier=|v_#StackHeapBarrier_5|, #length=|v_#length_17|, #valid=|v_#valid_27|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_5|, task_~#b~1.offset=|v_task_~#b~1.offset_5|, #valid=|v_#valid_26|, task_~#b~1.base=|v_task_~#b~1.base_5|, #length=|v_#length_16|, task_~a~1=v_task_~a~1_3} AuxVars[] AssignedVars[task_#t~ret32, task_~#b~1.offset, #valid, task_~#b~1.base, #length, task_~a~1] {2375#(not (= task_~t.base 0))} is VALID [2022-04-27 22:37:01,070 INFO L272 TraceCheckUtils]: 40: Hoare triple {2375#(not (= task_~t.base 0))} [224] L89-->sizeENTRY: Formula: (and (= v_task_~t.base_8 |v_size_#in~t.baseInParam_1|) (= |v_size_#in~t.offsetInParam_1| v_task_~t.offset_8)) InVars {task_~t.offset=v_task_~t.offset_8, task_~t.base=v_task_~t.base_8} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_1|, size_#in~t.base=|v_size_#in~t.baseInParam_1|} AuxVars[] AssignedVars[task_~t.offset, size_#in~t.offset, size_#in~t.base, task_~t.base] {2337#true} is VALID [2022-04-27 22:37:01,070 INFO L290 TraceCheckUtils]: 41: Hoare triple {2337#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {2337#true} is VALID [2022-04-27 22:37:01,070 INFO L290 TraceCheckUtils]: 42: Hoare triple {2337#true} [233] L81-->L82: Formula: (let ((.cse0 (+ v_size_~t.offset_3 4))) (and (= (select (select |v_#memory_$Pointer$.base_31| v_size_~t.base_3) .cse0) |v_size_#t~mem28.base_1|) (or (not (= v_size_~t.base_3 0)) (not (= v_size_~t.offset_3 0))) (= |v_size_#t~mem28.offset_1| (select (select |v_#memory_$Pointer$.offset_31| v_size_~t.base_3) .cse0)))) InVars {size_~t.base=v_size_~t.base_3, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_31|, size_~t.offset=v_size_~t.offset_3, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_31|} OutVars{size_~t.base=v_size_~t.base_3, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_31|, size_#t~mem28.base=|v_size_#t~mem28.base_1|, size_~t.offset=v_size_~t.offset_3, size_#t~mem28.offset=|v_size_#t~mem28.offset_1|, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_31|} AuxVars[] AssignedVars[size_#t~mem28.base, size_#t~mem28.offset] {2337#true} is VALID [2022-04-27 22:37:01,070 INFO L272 TraceCheckUtils]: 43: Hoare triple {2337#true} [238] L82-->sizeENTRY: Formula: (and (= |v_size_#in~t.offsetInParam_3| |v_size_#t~mem28.offset_4|) (= |v_size_#in~t.baseInParam_3| |v_size_#t~mem28.base_4|)) InVars {size_#t~mem28.offset=|v_size_#t~mem28.offset_4|, size_#t~mem28.base=|v_size_#t~mem28.base_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_3|, size_#in~t.base=|v_size_#in~t.baseInParam_3|} AuxVars[] AssignedVars[size_#in~t.offset, size_#in~t.base, size_#t~mem28.base, size_#t~mem28.offset] {2337#true} is VALID [2022-04-27 22:37:01,070 INFO L290 TraceCheckUtils]: 44: Hoare triple {2337#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {2337#true} is VALID [2022-04-27 22:37:01,070 INFO L290 TraceCheckUtils]: 45: Hoare triple {2337#true} [232] L81-->sizeFINAL: Formula: (and (= v_size_~t.base_2 0) (= |v_size_#res_1| 0) (= v_size_~t.offset_2 0)) InVars {size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2} OutVars{size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2, size_#res=|v_size_#res_1|} AuxVars[] AssignedVars[size_#res] {2337#true} is VALID [2022-04-27 22:37:01,070 INFO L290 TraceCheckUtils]: 46: Hoare triple {2337#true} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:01,070 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {2337#true} {2337#true} [315] sizeEXIT-->L82-1: AOR: Formula: (= |v_size_#t~ret29_5| |v_size_#resOutParam_3|) InVars {size_#res=|v_size_#resOutParam_3|} OutVars{size_#t~ret29=|v_size_#t~ret29_5|} AuxVars[] AssignedVars[size_#t~ret29, size_#res] LVA: Formula: (and (= |v_size_#in~t.offsetInParam_3| |v_size_#t~mem28.offset_4|) (= |v_size_#in~t.baseInParam_3| |v_size_#t~mem28.base_4|)) InVars {size_#t~mem28.offset=|v_size_#t~mem28.offset_4|, size_#t~mem28.base=|v_size_#t~mem28.base_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_3|, size_#in~t.base=|v_size_#in~t.baseInParam_3|} AuxVars[] AssignedVars[size_#in~t.offset, size_#in~t.base, size_#t~mem28.base, size_#t~mem28.offset] {2337#true} is VALID [2022-04-27 22:37:01,070 INFO L290 TraceCheckUtils]: 48: Hoare triple {2337#true} [244] L82-1-->L82-2: Formula: (let ((.cse0 (+ v_size_~t.offset_4 12))) (and (= |v_size_#t~mem30.offset_1| (select (select |v_#memory_$Pointer$.offset_32| v_size_~t.base_4) .cse0)) (<= 0 (+ |v_size_#t~ret29_2| 2147483648)) (<= |v_size_#t~ret29_2| 2147483647) (= |v_size_#t~mem30.base_1| (select (select |v_#memory_$Pointer$.base_32| v_size_~t.base_4) .cse0)))) InVars {size_~t.base=v_size_~t.base_4, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_32|, size_~t.offset=v_size_~t.offset_4, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_32|, size_#t~ret29=|v_size_#t~ret29_2|} OutVars{size_~t.base=v_size_~t.base_4, size_#t~mem30.base=|v_size_#t~mem30.base_1|, #memory_$Pointer$.base=|v_#memory_$Pointer$.base_32|, size_#t~ret29=|v_size_#t~ret29_2|, size_#t~mem30.offset=|v_size_#t~mem30.offset_1|, size_~t.offset=v_size_~t.offset_4, #memory_$Pointer$.offset=|v_#memory_$Pointer$.offset_32|} AuxVars[] AssignedVars[size_#t~mem30.base, size_#t~mem30.offset] {2337#true} is VALID [2022-04-27 22:37:01,070 INFO L272 TraceCheckUtils]: 49: Hoare triple {2337#true} [255] L82-2-->sizeENTRY: Formula: (and (= |v_size_#in~t.offsetInParam_4| |v_size_#t~mem30.offset_4|) (= |v_size_#t~mem30.base_4| |v_size_#in~t.baseInParam_4|)) InVars {size_#t~mem30.base=|v_size_#t~mem30.base_4|, size_#t~mem30.offset=|v_size_#t~mem30.offset_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_4|, size_#in~t.base=|v_size_#in~t.baseInParam_4|} AuxVars[] AssignedVars[size_#in~t.offset, size_#t~mem30.base, size_#in~t.base, size_#t~mem30.offset] {2337#true} is VALID [2022-04-27 22:37:01,070 INFO L290 TraceCheckUtils]: 50: Hoare triple {2337#true} [228] sizeENTRY-->L81: Formula: (and (= v_size_~t.base_1 |v_size_#in~t.base_1|) (= v_size_~t.offset_1 |v_size_#in~t.offset_1|)) InVars {size_#in~t.offset=|v_size_#in~t.offset_1|, size_#in~t.base=|v_size_#in~t.base_1|} OutVars{size_~t.base=v_size_~t.base_1, size_#in~t.offset=|v_size_#in~t.offset_1|, size_~t.offset=v_size_~t.offset_1, size_#in~t.base=|v_size_#in~t.base_1|} AuxVars[] AssignedVars[size_~t.base, size_~t.offset] {2337#true} is VALID [2022-04-27 22:37:01,070 INFO L290 TraceCheckUtils]: 51: Hoare triple {2337#true} [232] L81-->sizeFINAL: Formula: (and (= v_size_~t.base_2 0) (= |v_size_#res_1| 0) (= v_size_~t.offset_2 0)) InVars {size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2} OutVars{size_~t.base=v_size_~t.base_2, size_~t.offset=v_size_~t.offset_2, size_#res=|v_size_#res_1|} AuxVars[] AssignedVars[size_#res] {2337#true} is VALID [2022-04-27 22:37:01,070 INFO L290 TraceCheckUtils]: 52: Hoare triple {2337#true} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:01,070 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {2337#true} {2337#true} [316] sizeEXIT-->L82-3: AOR: Formula: (= |v_size_#t~ret31_4| |v_size_#resOutParam_4|) InVars {size_#res=|v_size_#resOutParam_4|} OutVars{size_#t~ret31=|v_size_#t~ret31_4|} AuxVars[] AssignedVars[size_#res, size_#t~ret31] LVA: Formula: (and (= |v_size_#in~t.offsetInParam_4| |v_size_#t~mem30.offset_4|) (= |v_size_#t~mem30.base_4| |v_size_#in~t.baseInParam_4|)) InVars {size_#t~mem30.base=|v_size_#t~mem30.base_4|, size_#t~mem30.offset=|v_size_#t~mem30.offset_4|} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_4|, size_#in~t.base=|v_size_#in~t.baseInParam_4|} AuxVars[] AssignedVars[size_#in~t.offset, size_#t~mem30.base, size_#in~t.base, size_#t~mem30.offset] {2337#true} is VALID [2022-04-27 22:37:01,071 INFO L290 TraceCheckUtils]: 54: Hoare triple {2337#true} [254] L82-3-->sizeFINAL: Formula: (and (<= |v_size_#t~ret31_3| 2147483647) (<= 0 (+ |v_size_#t~ret31_3| 2147483648)) (= (+ |v_size_#t~ret31_3| |v_size_#t~ret29_4| 1) |v_size_#res_2|)) InVars {size_#t~ret29=|v_size_#t~ret29_4|, size_#t~ret31=|v_size_#t~ret31_3|} OutVars{size_#t~mem30.base=|v_size_#t~mem30.base_3|, size_#t~mem30.offset=|v_size_#t~mem30.offset_3|, size_#t~mem28.offset=|v_size_#t~mem28.offset_3|, size_#res=|v_size_#res_2|, size_#t~mem28.base=|v_size_#t~mem28.base_3|} AuxVars[] AssignedVars[size_#t~mem30.base, size_#t~mem28.base, size_#t~ret29, size_#t~mem30.offset, size_#t~mem28.offset, size_#res, size_#t~ret31] {2337#true} is VALID [2022-04-27 22:37:01,071 INFO L290 TraceCheckUtils]: 55: Hoare triple {2337#true} [237] sizeFINAL-->sizeEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:01,071 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {2337#true} {2375#(not (= task_~t.base 0))} [313] sizeEXIT-->L89-1: AOR: Formula: (= |v_task_#t~ret33_4| |v_size_#resOutParam_1|) InVars {size_#res=|v_size_#resOutParam_1|} OutVars{task_#t~ret33=|v_task_#t~ret33_4|} AuxVars[] AssignedVars[task_#t~ret33, size_#res] LVA: Formula: (and (= v_task_~t.base_8 |v_size_#in~t.baseInParam_1|) (= |v_size_#in~t.offsetInParam_1| v_task_~t.offset_8)) InVars {task_~t.offset=v_task_~t.offset_8, task_~t.base=v_task_~t.base_8} OutVars{size_#in~t.offset=|v_size_#in~t.offsetInParam_1|, size_#in~t.base=|v_size_#in~t.baseInParam_1|} AuxVars[] AssignedVars[task_~t.offset, size_#in~t.offset, size_#in~t.base, task_~t.base] {2375#(not (= task_~t.base 0))} is VALID [2022-04-27 22:37:01,071 INFO L290 TraceCheckUtils]: 57: Hoare triple {2375#(not (= task_~t.base 0))} [227] L89-1-->L90: Formula: (and (<= |v_task_#t~ret33_3| 2147483647) (<= 0 (+ |v_task_#t~ret33_3| 2147483648)) (= |v_task_#t~ret33_3| v_task_~n~1_8)) InVars {task_#t~ret33=|v_task_#t~ret33_3|} OutVars{task_~n~1=v_task_~n~1_8} AuxVars[] AssignedVars[task_#t~ret33, task_~n~1] {2375#(not (= task_~t.base 0))} is VALID [2022-04-27 22:37:01,071 INFO L272 TraceCheckUtils]: 58: Hoare triple {2375#(not (= task_~t.base 0))} [231] L90-->assume_cycle_if_notENTRY: Formula: (= |v_assume_cycle_if_not_#in~condInParam_1| (ite (not (= v_task_~n~1_9 0)) 1 0)) InVars {task_~n~1=v_task_~n~1_9} OutVars{assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[task_~n~1, assume_cycle_if_not_#in~cond] {2337#true} is VALID [2022-04-27 22:37:01,071 INFO L290 TraceCheckUtils]: 59: Hoare triple {2337#true} [236] assume_cycle_if_notENTRY-->L9: Formula: (= v_assume_cycle_if_not_~cond_3 |v_assume_cycle_if_not_#in~cond_1|) InVars {assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~cond_1|} OutVars{assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~cond_1|, assume_cycle_if_not_~cond=v_assume_cycle_if_not_~cond_3} AuxVars[] AssignedVars[assume_cycle_if_not_~cond] {2337#true} is VALID [2022-04-27 22:37:01,071 INFO L290 TraceCheckUtils]: 60: Hoare triple {2337#true} [243] L9-->L9-5: Formula: (not (= v_assume_cycle_if_not_~cond_1 0)) InVars {assume_cycle_if_not_~cond=v_assume_cycle_if_not_~cond_1} OutVars{assume_cycle_if_not_~cond=v_assume_cycle_if_not_~cond_1} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:01,072 INFO L290 TraceCheckUtils]: 61: Hoare triple {2337#true} [252] L9-5-->assume_cycle_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:01,072 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {2337#true} {2375#(not (= task_~t.base 0))} [317] assume_cycle_if_notEXIT-->L90-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_cycle_if_not_#in~condInParam_1| (ite (not (= v_task_~n~1_9 0)) 1 0)) InVars {task_~n~1=v_task_~n~1_9} OutVars{assume_cycle_if_not_#in~cond=|v_assume_cycle_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[task_~n~1, assume_cycle_if_not_#in~cond] {2375#(not (= task_~t.base 0))} is VALID [2022-04-27 22:37:01,073 INFO L290 TraceCheckUtils]: 63: Hoare triple {2375#(not (= task_~t.base 0))} [235] L90-1-->L91: Formula: (and (= (store |v_#length_13| |v_task_#t~malloc34.base_1| (* 4 v_task_~n~1_2)) |v_#length_12|) (< |v_task_#t~malloc34.base_1| |v_#StackHeapBarrier_3|) (= 0 |v_task_#t~malloc34.offset_1|) (= |v_#valid_16| (store |v_#valid_17| |v_task_#t~malloc34.base_1| 1)) (not (= |v_task_#t~malloc34.base_1| 0)) (= (select |v_#valid_17| |v_task_#t~malloc34.base_1|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_3|, #length=|v_#length_13|, task_~n~1=v_task_~n~1_2, #valid=|v_#valid_17|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_3|, task_~n~1=v_task_~n~1_2, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_1|, #valid=|v_#valid_16|, task_#t~malloc34.base=|v_task_#t~malloc34.base_1|, #length=|v_#length_12|} AuxVars[] AssignedVars[task_#t~malloc34.offset, #valid, task_#t~malloc34.base, #length] {2375#(not (= task_~t.base 0))} is VALID [2022-04-27 22:37:01,073 INFO L272 TraceCheckUtils]: 64: Hoare triple {2375#(not (= task_~t.base 0))} [241] L91-->#Ultimate.meminitENTRY: Formula: (and (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_task_#t~malloc34.offset_4|) (= v_task_~n~1_10 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_task_#t~malloc34.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= (* v_task_~n~1_10 4) |v_#Ultimate.meminit_#productInParam_1|)) InVars {task_#t~malloc34.base=|v_task_#t~malloc34.base_4|, task_~n~1=v_task_~n~1_10, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[task_~n~1, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, task_#t~malloc34.offset, task_#t~malloc34.base, #Ultimate.meminit_#product, #Ultimate.meminit_#ptr.base, #Ultimate.meminit_#ptr.offset] {2337#true} is VALID [2022-04-27 22:37:01,073 INFO L290 TraceCheckUtils]: 65: Hoare triple {2337#true} [248] #Ultimate.meminitENTRY-->#Ultimate.meminitFINAL: Formula: (= (store |v_#memory_int_12| |v_#Ultimate.meminit_#ptr.base_1| ((as const (Array Int Int)) 0)) |v_#memory_int_11|) InVars {#memory_int=|v_#memory_int_12|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} OutVars{#memory_int=|v_#memory_int_11|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} AuxVars[] AssignedVars[#memory_int] {2337#true} is VALID [2022-04-27 22:37:01,073 INFO L290 TraceCheckUtils]: 66: Hoare triple {2337#true} [259] #Ultimate.meminitFINAL-->#Ultimate.meminitEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2337#true} is VALID [2022-04-27 22:37:01,073 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {2337#true} {2375#(not (= task_~t.base 0))} [318] #Ultimate.meminitEXIT-->L91-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (and (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_task_#t~malloc34.offset_4|) (= v_task_~n~1_10 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_task_#t~malloc34.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= (* v_task_~n~1_10 4) |v_#Ultimate.meminit_#productInParam_1|)) InVars {task_#t~malloc34.base=|v_task_#t~malloc34.base_4|, task_~n~1=v_task_~n~1_10, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[task_~n~1, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, task_#t~malloc34.offset, task_#t~malloc34.base, #Ultimate.meminit_#product, #Ultimate.meminit_#ptr.base, #Ultimate.meminit_#ptr.offset] {2375#(not (= task_~t.base 0))} is VALID [2022-04-27 22:37:01,074 INFO L290 TraceCheckUtils]: 68: Hoare triple {2375#(not (= task_~t.base 0))} [247] L91-1-->L92: Formula: (and (= v_task_~x~0.offset_1 |v_task_#t~malloc34.offset_3|) (= |v_task_#t~malloc34.base_3| v_task_~x~0.base_1)) InVars {task_#t~malloc34.base=|v_task_#t~malloc34.base_3|, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_3|} OutVars{task_#t~malloc34.base=|v_task_#t~malloc34.base_3|, task_~x~0.base=v_task_~x~0.base_1, task_#t~malloc34.offset=|v_task_#t~malloc34.offset_3|, task_~x~0.offset=v_task_~x~0.offset_1} AuxVars[] AssignedVars[task_~x~0.base, task_~x~0.offset] {2375#(not (= task_~t.base 0))} is VALID [2022-04-27 22:37:01,074 INFO L272 TraceCheckUtils]: 69: Hoare triple {2375#(not (= task_~t.base 0))} [258] L92-->tree_inorderENTRY: Formula: (and (= v_task_~t.base_9 |v_tree_inorder_#in~t.baseInParam_1|) (= |v_tree_inorder_#in~a.baseInParam_1| v_task_~x~0.base_6) (= |v_tree_inorder_#in~t.offsetInParam_1| v_task_~t.offset_9) (= |v_tree_inorder_#in~a.offsetInParam_1| v_task_~x~0.offset_6) (= v_task_~n~1_11 |v_tree_inorder_#in~iInParam_1|)) InVars {task_~t.offset=v_task_~t.offset_9, task_~x~0.base=v_task_~x~0.base_6, task_~n~1=v_task_~n~1_11, task_~t.base=v_task_~t.base_9, task_~x~0.offset=v_task_~x~0.offset_6} OutVars{tree_inorder_#in~i=|v_tree_inorder_#in~iInParam_1|, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offsetInParam_1|, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.baseInParam_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offsetInParam_1|, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.baseInParam_1|} AuxVars[] AssignedVars[tree_inorder_#in~i, task_~t.offset, tree_inorder_#in~a.offset, task_~x~0.base, task_~n~1, tree_inorder_#in~a.base, tree_inorder_#in~t.base, tree_inorder_#in~t.offset, task_~t.base, task_~x~0.offset] {2337#true} is VALID [2022-04-27 22:37:01,074 INFO L290 TraceCheckUtils]: 70: Hoare triple {2337#true} [262] tree_inorderENTRY-->L70: Formula: (and (= v_tree_inorder_~i_1 |v_tree_inorder_#in~i_1|) (= v_tree_inorder_~a.base_1 |v_tree_inorder_#in~a.base_1|) (= |v_tree_inorder_#in~t.offset_1| v_tree_inorder_~t.offset_1) (= |v_tree_inorder_#in~a.offset_1| v_tree_inorder_~a.offset_1) (= v_tree_inorder_~t.base_1 |v_tree_inorder_#in~t.base_1|)) InVars {tree_inorder_#in~i=|v_tree_inorder_#in~i_1|, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offset_1|, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.base_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offset_1|, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.base_1|} OutVars{tree_inorder_#in~i=|v_tree_inorder_#in~i_1|, tree_inorder_~a.base=v_tree_inorder_~a.base_1, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offset_1|, tree_inorder_~t.offset=v_tree_inorder_~t.offset_1, tree_inorder_~a.offset=v_tree_inorder_~a.offset_1, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.base_1|, tree_inorder_~t.base=v_tree_inorder_~t.base_1, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.base_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offset_1|, tree_inorder_~i=v_tree_inorder_~i_1} AuxVars[] AssignedVars[tree_inorder_~a.base, tree_inorder_~t.offset, tree_inorder_~a.offset, tree_inorder_~t.base, tree_inorder_~i] {2433#(= |tree_inorder_#in~t.base| tree_inorder_~t.base)} is VALID [2022-04-27 22:37:01,074 INFO L290 TraceCheckUtils]: 71: Hoare triple {2433#(= |tree_inorder_#in~t.base| tree_inorder_~t.base)} [265] L70-->tree_inorderFINAL: Formula: (and (= v_tree_inorder_~i_2 |v_tree_inorder_#res_1|) (= v_tree_inorder_~t.base_2 0) (= v_tree_inorder_~t.offset_2 0)) InVars {tree_inorder_~t.base=v_tree_inorder_~t.base_2, tree_inorder_~t.offset=v_tree_inorder_~t.offset_2, tree_inorder_~i=v_tree_inorder_~i_2} OutVars{tree_inorder_~t.base=v_tree_inorder_~t.base_2, tree_inorder_#res=|v_tree_inorder_#res_1|, tree_inorder_~t.offset=v_tree_inorder_~t.offset_2, tree_inorder_~i=v_tree_inorder_~i_2} AuxVars[] AssignedVars[tree_inorder_#res] {2434#(= |tree_inorder_#in~t.base| 0)} is VALID [2022-04-27 22:37:01,075 INFO L290 TraceCheckUtils]: 72: Hoare triple {2434#(= |tree_inorder_#in~t.base| 0)} [270] tree_inorderFINAL-->tree_inorderEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2434#(= |tree_inorder_#in~t.base| 0)} is VALID [2022-04-27 22:37:01,075 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {2434#(= |tree_inorder_#in~t.base| 0)} {2375#(not (= task_~t.base 0))} [320] tree_inorderEXIT-->L92-1: AOR: Formula: (= |v_tree_inorder_#resOutParam_1| |v_task_#t~ret35_4|) InVars {tree_inorder_#res=|v_tree_inorder_#resOutParam_1|} OutVars{task_#t~ret35=|v_task_#t~ret35_4|} AuxVars[] AssignedVars[task_#t~ret35, tree_inorder_#res] LVA: Formula: (and (= v_task_~t.base_9 |v_tree_inorder_#in~t.baseInParam_1|) (= |v_tree_inorder_#in~a.baseInParam_1| v_task_~x~0.base_6) (= |v_tree_inorder_#in~t.offsetInParam_1| v_task_~t.offset_9) (= |v_tree_inorder_#in~a.offsetInParam_1| v_task_~x~0.offset_6) (= v_task_~n~1_11 |v_tree_inorder_#in~iInParam_1|)) InVars {task_~t.offset=v_task_~t.offset_9, task_~x~0.base=v_task_~x~0.base_6, task_~n~1=v_task_~n~1_11, task_~t.base=v_task_~t.base_9, task_~x~0.offset=v_task_~x~0.offset_6} OutVars{tree_inorder_#in~i=|v_tree_inorder_#in~iInParam_1|, tree_inorder_#in~a.offset=|v_tree_inorder_#in~a.offsetInParam_1|, tree_inorder_#in~t.base=|v_tree_inorder_#in~t.baseInParam_1|, tree_inorder_#in~t.offset=|v_tree_inorder_#in~t.offsetInParam_1|, tree_inorder_#in~a.base=|v_tree_inorder_#in~a.baseInParam_1|} AuxVars[] AssignedVars[tree_inorder_#in~i, task_~t.offset, tree_inorder_#in~a.offset, task_~x~0.base, task_~n~1, tree_inorder_#in~a.base, tree_inorder_#in~t.base, tree_inorder_#in~t.offset, task_~t.base, task_~x~0.offset] {2338#false} is VALID [2022-04-27 22:37:01,075 INFO L290 TraceCheckUtils]: 74: Hoare triple {2338#false} [261] L92-1-->L93: Formula: (and (<= 0 (+ |v_task_#t~ret35_3| 2147483648)) (= |v_task_#t~mem36_1| (select (select |v_#memory_int_28| v_task_~x~0.base_3) v_task_~x~0.offset_3)) (<= |v_task_#t~ret35_3| 2147483647)) InVars {#memory_int=|v_#memory_int_28|, task_~x~0.base=v_task_~x~0.base_3, task_#t~ret35=|v_task_#t~ret35_3|, task_~x~0.offset=v_task_~x~0.offset_3} OutVars{#memory_int=|v_#memory_int_28|, task_#t~mem36=|v_task_#t~mem36_1|, task_~x~0.base=v_task_~x~0.base_3, task_~x~0.offset=v_task_~x~0.offset_3} AuxVars[] AssignedVars[task_#t~ret35, task_#t~mem36] {2338#false} is VALID [2022-04-27 22:37:01,075 INFO L272 TraceCheckUtils]: 75: Hoare triple {2338#false} [264] L93-->__VERIFIER_assertENTRY: Formula: (= (ite (= |v_task_#t~mem36_4| v_task_~a~1_4) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {task_#t~mem36=|v_task_#t~mem36_4|, task_~a~1=v_task_~a~1_4} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, task_#t~mem36, task_~a~1] {2338#false} is VALID [2022-04-27 22:37:01,076 INFO L290 TraceCheckUtils]: 76: Hoare triple {2338#false} [269] __VERIFIER_assertENTRY-->L16: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2338#false} is VALID [2022-04-27 22:37:01,076 INFO L290 TraceCheckUtils]: 77: Hoare triple {2338#false} [274] L16-->L16-1: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2338#false} is VALID [2022-04-27 22:37:01,076 INFO L290 TraceCheckUtils]: 78: Hoare triple {2338#false} [280] L16-1-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2338#false} is VALID [2022-04-27 22:37:01,076 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 22:37:01,076 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 22:37:01,076 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1908837553] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 22:37:01,076 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-27 22:37:01,076 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [16] total 20 [2022-04-27 22:37:01,076 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1324666215] [2022-04-27 22:37:01,076 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 22:37:01,077 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 4.75) internal successors, (38), 7 states have internal predecessors, (38), 5 states have call successors, (16), 3 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 22:37:01,077 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:37:01,077 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 4.75) internal successors, (38), 7 states have internal predecessors, (38), 5 states have call successors, (16), 3 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 22:37:01,117 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 22:37:01,117 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-27 22:37:01,118 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:37:01,118 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-27 22:37:01,118 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=40, Invalid=340, Unknown=0, NotChecked=0, Total=380 [2022-04-27 22:37:01,118 INFO L87 Difference]: Start difference. First operand 95 states and 121 transitions. Second operand has 9 states, 8 states have (on average 4.75) internal successors, (38), 7 states have internal predecessors, (38), 5 states have call successors, (16), 3 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 22:37:01,722 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:37:01,722 INFO L93 Difference]: Finished difference Result 150 states and 192 transitions. [2022-04-27 22:37:01,723 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-27 22:37:01,723 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 4.75) internal successors, (38), 7 states have internal predecessors, (38), 5 states have call successors, (16), 3 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 22:37:01,723 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:37:01,723 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 4.75) internal successors, (38), 7 states have internal predecessors, (38), 5 states have call successors, (16), 3 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 22:37:01,725 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 181 transitions. [2022-04-27 22:37:01,726 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 4.75) internal successors, (38), 7 states have internal predecessors, (38), 5 states have call successors, (16), 3 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 22:37:01,728 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 181 transitions. [2022-04-27 22:37:01,728 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 181 transitions. [2022-04-27 22:37:01,844 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 22:37:01,846 INFO L225 Difference]: With dead ends: 150 [2022-04-27 22:37:01,846 INFO L226 Difference]: Without dead ends: 97 [2022-04-27 22:37:01,847 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 117 GetRequests, 96 SyntacticMatches, 0 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 24 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=52, Invalid=454, Unknown=0, NotChecked=0, Total=506 [2022-04-27 22:37:01,848 INFO L413 NwaCegarLoop]: 104 mSDtfsCounter, 35 mSDsluCounter, 602 mSDsCounter, 0 mSdLazyCounter, 127 mSolverCounterSat, 24 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 39 SdHoareTripleChecker+Valid, 706 SdHoareTripleChecker+Invalid, 151 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 24 IncrementalHoareTripleChecker+Valid, 127 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 22:37:01,848 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [39 Valid, 706 Invalid, 151 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [24 Valid, 127 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 22:37:01,848 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 97 states. [2022-04-27 22:37:01,861 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 97 to 97. [2022-04-27 22:37:01,861 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:37:01,863 INFO L82 GeneralOperation]: Start isEquivalent. First operand 97 states. Second operand has 97 states, 58 states have (on average 1.1551724137931034) internal successors, (67), 62 states have internal predecessors, (67), 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 22:37:01,865 INFO L74 IsIncluded]: Start isIncluded. First operand 97 states. Second operand has 97 states, 58 states have (on average 1.1551724137931034) internal successors, (67), 62 states have internal predecessors, (67), 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 22:37:01,866 INFO L87 Difference]: Start difference. First operand 97 states. Second operand has 97 states, 58 states have (on average 1.1551724137931034) internal successors, (67), 62 states have internal predecessors, (67), 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 22:37:01,868 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:37:01,869 INFO L93 Difference]: Finished difference Result 97 states and 125 transitions. [2022-04-27 22:37:01,869 INFO L276 IsEmpty]: Start isEmpty. Operand 97 states and 125 transitions. [2022-04-27 22:37:01,869 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:37:01,869 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:37:01,869 INFO L74 IsIncluded]: Start isIncluded. First operand has 97 states, 58 states have (on average 1.1551724137931034) internal successors, (67), 62 states have internal predecessors, (67), 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 97 states. [2022-04-27 22:37:01,870 INFO L87 Difference]: Start difference. First operand has 97 states, 58 states have (on average 1.1551724137931034) internal successors, (67), 62 states have internal predecessors, (67), 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 97 states. [2022-04-27 22:37:01,872 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:37:01,872 INFO L93 Difference]: Finished difference Result 97 states and 125 transitions. [2022-04-27 22:37:01,872 INFO L276 IsEmpty]: Start isEmpty. Operand 97 states and 125 transitions. [2022-04-27 22:37:01,873 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:37:01,873 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:37:01,873 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:37:01,873 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:37:01,873 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 97 states, 58 states have (on average 1.1551724137931034) internal successors, (67), 62 states have internal predecessors, (67), 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 22:37:01,875 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 97 states to 97 states and 125 transitions. [2022-04-27 22:37:01,875 INFO L78 Accepts]: Start accepts. Automaton has 97 states and 125 transitions. Word has length 79 [2022-04-27 22:37:01,876 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:37:01,876 INFO L495 AbstractCegarLoop]: Abstraction has 97 states and 125 transitions. [2022-04-27 22:37:01,876 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 4.75) internal successors, (38), 7 states have internal predecessors, (38), 5 states have call successors, (16), 3 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 22:37:01,876 INFO L276 IsEmpty]: Start isEmpty. Operand 97 states and 125 transitions. [2022-04-27 22:37:01,876 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-04-27 22:37:01,877 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:37:01,877 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 22:37:01,915 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-27 22:37:02,115 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable3 [2022-04-27 22:37:02,115 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:37:02,116 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:37:02,116 INFO L85 PathProgramCache]: Analyzing trace with hash 407791861, now seen corresponding path program 1 times [2022-04-27 22:37:02,116 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:37:02,116 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2039550952] [2022-04-27 22:37:02,116 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:37:02,116 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:37:02,174 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-04-27 22:37:02,175 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-04-27 22:37:02,218 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-04-27 22:37:02,246 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-04-27 22:37:02,246 INFO L271 BasicCegarLoop]: Counterexample is feasible [2022-04-27 22:37:02,247 INFO L805 garLoopResultBuilder]: Registering result UNSAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-27 22:37:02,248 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2022-04-27 22:37:02,251 INFO L356 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1, 1] [2022-04-27 22:37:02,253 INFO L176 ceAbstractionStarter]: Computing trace abstraction results [2022-04-27 22:37:02,301 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-04-27 22:37:02,301 WARN L170 areAnnotationChecker]: ULTIMATE.initENTRY has no Hoare annotation [2022-04-27 22:37:02,301 WARN L170 areAnnotationChecker]: mainENTRY has no Hoare annotation [2022-04-27 22:37:02,301 WARN L170 areAnnotationChecker]: nondet_treeENTRY has no Hoare annotation [2022-04-27 22:37:02,301 WARN L170 areAnnotationChecker]: nondet_treeENTRY has no Hoare annotation [2022-04-27 22:37:02,301 WARN L170 areAnnotationChecker]: taskENTRY has no Hoare annotation [2022-04-27 22:37:02,301 WARN L170 areAnnotationChecker]: minENTRY has no Hoare annotation [2022-04-27 22:37:02,302 WARN L170 areAnnotationChecker]: sizeENTRY has no Hoare annotation [2022-04-27 22:37:02,302 WARN L170 areAnnotationChecker]: assume_cycle_if_notENTRY has no Hoare annotation [2022-04-27 22:37:02,302 WARN L170 areAnnotationChecker]: #Ultimate.meminitENTRY has no Hoare annotation [2022-04-27 22:37:02,302 WARN L170 areAnnotationChecker]: tree_inorderENTRY has no Hoare annotation [2022-04-27 22:37:02,302 WARN L170 areAnnotationChecker]: __VERIFIER_assertENTRY has no Hoare annotation [2022-04-27 22:37:02,302 WARN L170 areAnnotationChecker]: tree_delENTRY has no Hoare annotation [2022-04-27 22:37:02,302 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-27 22:37:02,302 WARN L170 areAnnotationChecker]: nondet_treeFINAL has no Hoare annotation [2022-04-27 22:37:02,302 WARN L170 areAnnotationChecker]: L30 has no Hoare annotation [2022-04-27 22:37:02,302 WARN L170 areAnnotationChecker]: L86 has no Hoare annotation [2022-04-27 22:37:02,302 WARN L170 areAnnotationChecker]: L37 has no Hoare annotation [2022-04-27 22:37:02,302 WARN L170 areAnnotationChecker]: L37 has no Hoare annotation [2022-04-27 22:37:02,302 WARN L170 areAnnotationChecker]: L81 has no Hoare annotation [2022-04-27 22:37:02,302 WARN L170 areAnnotationChecker]: L81 has no Hoare annotation [2022-04-27 22:37:02,302 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2022-04-27 22:37:02,302 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2022-04-27 22:37:02,302 WARN L170 areAnnotationChecker]: #Ultimate.meminitFINAL has no Hoare annotation [2022-04-27 22:37:02,302 WARN L170 areAnnotationChecker]: L70 has no Hoare annotation [2022-04-27 22:37:02,302 WARN L170 areAnnotationChecker]: L70 has no Hoare annotation [2022-04-27 22:37:02,302 WARN L170 areAnnotationChecker]: L16 has no Hoare annotation [2022-04-27 22:37:02,302 WARN L170 areAnnotationChecker]: L16 has no Hoare annotation [2022-04-27 22:37:02,302 WARN L170 areAnnotationChecker]: L55 has no Hoare annotation [2022-04-27 22:37:02,302 WARN L170 areAnnotationChecker]: L55 has no Hoare annotation [2022-04-27 22:37:02,302 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-27 22:37:02,302 WARN L170 areAnnotationChecker]: nondet_treeEXIT has no Hoare annotation [2022-04-27 22:37:02,302 WARN L170 areAnnotationChecker]: nondet_treeEXIT has no Hoare annotation [2022-04-27 22:37:02,302 WARN L170 areAnnotationChecker]: nondet_treeEXIT has no Hoare annotation [2022-04-27 22:37:02,302 WARN L170 areAnnotationChecker]: minFINAL has no Hoare annotation [2022-04-27 22:37:02,302 WARN L170 areAnnotationChecker]: L41 has no Hoare annotation [2022-04-27 22:37:02,302 WARN L170 areAnnotationChecker]: sizeFINAL has no Hoare annotation [2022-04-27 22:37:02,302 WARN L170 areAnnotationChecker]: L82 has no Hoare annotation [2022-04-27 22:37:02,303 WARN L170 areAnnotationChecker]: L9-3 has no Hoare annotation [2022-04-27 22:37:02,303 WARN L170 areAnnotationChecker]: L9-3 has no Hoare annotation [2022-04-27 22:37:02,303 WARN L170 areAnnotationChecker]: L9-3 has no Hoare annotation [2022-04-27 22:37:02,303 WARN L170 areAnnotationChecker]: L9-5 has no Hoare annotation [2022-04-27 22:37:02,303 WARN L170 areAnnotationChecker]: #Ultimate.meminitEXIT has no Hoare annotation [2022-04-27 22:37:02,303 WARN L170 areAnnotationChecker]: #Ultimate.meminitEXIT has no Hoare annotation [2022-04-27 22:37:02,303 WARN L170 areAnnotationChecker]: tree_inorderFINAL has no Hoare annotation [2022-04-27 22:37:02,303 WARN L170 areAnnotationChecker]: L73 has no Hoare annotation [2022-04-27 22:37:02,303 WARN L170 areAnnotationChecker]: L16-1 has no Hoare annotation [2022-04-27 22:37:02,303 WARN L170 areAnnotationChecker]: L16-1 has no Hoare annotation [2022-04-27 22:37:02,303 WARN L170 areAnnotationChecker]: L16-3 has no Hoare annotation [2022-04-27 22:37:02,303 WARN L170 areAnnotationChecker]: L55-2 has no Hoare annotation [2022-04-27 22:37:02,303 WARN L170 areAnnotationChecker]: L59-2 has no Hoare annotation [2022-04-27 22:37:02,303 WARN L170 areAnnotationChecker]: L59-2 has no Hoare annotation [2022-04-27 22:37:02,303 WARN L170 areAnnotationChecker]: L59-2 has no Hoare annotation [2022-04-27 22:37:02,303 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-04-27 22:37:02,303 WARN L170 areAnnotationChecker]: L110 has no Hoare annotation [2022-04-27 22:37:02,303 WARN L170 areAnnotationChecker]: L30-1 has no Hoare annotation [2022-04-27 22:37:02,303 WARN L170 areAnnotationChecker]: L31-1 has no Hoare annotation [2022-04-27 22:37:02,303 WARN L170 areAnnotationChecker]: minEXIT has no Hoare annotation [2022-04-27 22:37:02,303 WARN L170 areAnnotationChecker]: minEXIT has no Hoare annotation [2022-04-27 22:37:02,303 WARN L170 areAnnotationChecker]: minEXIT has no Hoare annotation [2022-04-27 22:37:02,303 WARN L170 areAnnotationChecker]: sizeEXIT has no Hoare annotation [2022-04-27 22:37:02,303 WARN L170 areAnnotationChecker]: sizeEXIT has no Hoare annotation [2022-04-27 22:37:02,303 WARN L170 areAnnotationChecker]: sizeEXIT has no Hoare annotation [2022-04-27 22:37:02,303 WARN L170 areAnnotationChecker]: sizeEXIT has no Hoare annotation [2022-04-27 22:37:02,303 WARN L170 areAnnotationChecker]: assume_cycle_if_notEXIT has no Hoare annotation [2022-04-27 22:37:02,303 WARN L170 areAnnotationChecker]: L91-1 has no Hoare annotation [2022-04-27 22:37:02,303 WARN L170 areAnnotationChecker]: L98-1 has no Hoare annotation [2022-04-27 22:37:02,303 WARN L170 areAnnotationChecker]: tree_inorderEXIT has no Hoare annotation [2022-04-27 22:37:02,303 WARN L170 areAnnotationChecker]: tree_inorderEXIT has no Hoare annotation [2022-04-27 22:37:02,303 WARN L170 areAnnotationChecker]: tree_inorderEXIT has no Hoare annotation [2022-04-27 22:37:02,304 WARN L170 areAnnotationChecker]: tree_inorderEXIT has no Hoare annotation [2022-04-27 22:37:02,304 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 22:37:02,304 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 22:37:02,304 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 22:37:02,304 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 22:37:02,304 WARN L170 areAnnotationChecker]: tree_delFINAL has no Hoare annotation [2022-04-27 22:37:02,304 WARN L170 areAnnotationChecker]: L59-3 has no Hoare annotation [2022-04-27 22:37:02,304 WARN L170 areAnnotationChecker]: L31 has no Hoare annotation [2022-04-27 22:37:02,304 WARN L170 areAnnotationChecker]: L41-1 has no Hoare annotation [2022-04-27 22:37:02,304 WARN L170 areAnnotationChecker]: L42-1 has no Hoare annotation [2022-04-27 22:37:02,304 WARN L170 areAnnotationChecker]: L86-1 has no Hoare annotation [2022-04-27 22:37:02,304 WARN L170 areAnnotationChecker]: L89-1 has no Hoare annotation [2022-04-27 22:37:02,304 WARN L170 areAnnotationChecker]: L97-1 has no Hoare annotation [2022-04-27 22:37:02,304 WARN L170 areAnnotationChecker]: L82-1 has no Hoare annotation [2022-04-27 22:37:02,304 WARN L170 areAnnotationChecker]: L82-3 has no Hoare annotation [2022-04-27 22:37:02,304 WARN L170 areAnnotationChecker]: L90-1 has no Hoare annotation [2022-04-27 22:37:02,304 WARN L170 areAnnotationChecker]: L92 has no Hoare annotation [2022-04-27 22:37:02,304 WARN L170 areAnnotationChecker]: L99 has no Hoare annotation [2022-04-27 22:37:02,304 WARN L170 areAnnotationChecker]: L92-1 has no Hoare annotation [2022-04-27 22:37:02,304 WARN L170 areAnnotationChecker]: L99-1 has no Hoare annotation [2022-04-27 22:37:02,304 WARN L170 areAnnotationChecker]: L73-1 has no Hoare annotation [2022-04-27 22:37:02,304 WARN L170 areAnnotationChecker]: L75-1 has no Hoare annotation [2022-04-27 22:37:02,304 WARN L170 areAnnotationChecker]: L93-1 has no Hoare annotation [2022-04-27 22:37:02,304 WARN L170 areAnnotationChecker]: L96-1 has no Hoare annotation [2022-04-27 22:37:02,304 WARN L170 areAnnotationChecker]: L101-1 has no Hoare annotation [2022-04-27 22:37:02,304 WARN L170 areAnnotationChecker]: L104-1 has no Hoare annotation [2022-04-27 22:37:02,304 WARN L170 areAnnotationChecker]: tree_delEXIT has no Hoare annotation [2022-04-27 22:37:02,304 WARN L170 areAnnotationChecker]: L42 has no Hoare annotation [2022-04-27 22:37:02,304 WARN L170 areAnnotationChecker]: L43 has no Hoare annotation [2022-04-27 22:37:02,304 WARN L170 areAnnotationChecker]: L43 has no Hoare annotation [2022-04-27 22:37:02,305 WARN L170 areAnnotationChecker]: L89 has no Hoare annotation [2022-04-27 22:37:02,305 WARN L170 areAnnotationChecker]: L90 has no Hoare annotation [2022-04-27 22:37:02,305 WARN L170 areAnnotationChecker]: L98 has no Hoare annotation [2022-04-27 22:37:02,305 WARN L170 areAnnotationChecker]: L82-2 has no Hoare annotation [2022-04-27 22:37:02,305 WARN L170 areAnnotationChecker]: L91 has no Hoare annotation [2022-04-27 22:37:02,305 WARN L170 areAnnotationChecker]: L93 has no Hoare annotation [2022-04-27 22:37:02,305 WARN L170 areAnnotationChecker]: L101 has no Hoare annotation [2022-04-27 22:37:02,305 WARN L170 areAnnotationChecker]: L75 has no Hoare annotation [2022-04-27 22:37:02,305 WARN L170 areAnnotationChecker]: L95 has no Hoare annotation [2022-04-27 22:37:02,305 WARN L170 areAnnotationChecker]: L97 has no Hoare annotation [2022-04-27 22:37:02,305 WARN L170 areAnnotationChecker]: L103-3 has no Hoare annotation [2022-04-27 22:37:02,305 WARN L170 areAnnotationChecker]: L103-3 has no Hoare annotation [2022-04-27 22:37:02,305 WARN L170 areAnnotationChecker]: L103-3 has no Hoare annotation [2022-04-27 22:37:02,305 WARN L170 areAnnotationChecker]: L103-2 has no Hoare annotation [2022-04-27 22:37:02,305 WARN L170 areAnnotationChecker]: L95-1 has no Hoare annotation [2022-04-27 22:37:02,305 WARN L170 areAnnotationChecker]: L44 has no Hoare annotation [2022-04-27 22:37:02,305 WARN L170 areAnnotationChecker]: L44 has no Hoare annotation [2022-04-27 22:37:02,305 WARN L170 areAnnotationChecker]: L103-4 has no Hoare annotation [2022-04-27 22:37:02,305 WARN L170 areAnnotationChecker]: L104 has no Hoare annotation [2022-04-27 22:37:02,305 WARN L170 areAnnotationChecker]: L96 has no Hoare annotation [2022-04-27 22:37:02,305 WARN L170 areAnnotationChecker]: taskFINAL has no Hoare annotation [2022-04-27 22:37:02,305 WARN L170 areAnnotationChecker]: taskEXIT has no Hoare annotation [2022-04-27 22:37:02,305 WARN L170 areAnnotationChecker]: L110-1 has no Hoare annotation [2022-04-27 22:37:02,305 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2022-04-27 22:37:02,305 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-27 22:37:02,305 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-27 22:37:02,305 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 22:37:02,307 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 27.04 10:37:02 BasicIcfg [2022-04-27 22:37:02,307 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-27 22:37:02,308 INFO L158 Benchmark]: Toolchain (without parser) took 12321.53ms. Allocated memory was 209.7MB in the beginning and 312.5MB in the end (delta: 102.8MB). Free memory was 158.9MB in the beginning and 265.2MB in the end (delta: -106.3MB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-27 22:37:02,310 INFO L158 Benchmark]: CDTParser took 0.09ms. Allocated memory is still 209.7MB. Free memory was 175.7MB in the beginning and 175.5MB in the end (delta: 150.3kB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-27 22:37:02,310 INFO L158 Benchmark]: CACSL2BoogieTranslator took 272.50ms. Allocated memory is still 209.7MB. Free memory was 158.7MB in the beginning and 183.5MB in the end (delta: -24.8MB). Peak memory consumption was 9.1MB. Max. memory is 8.0GB. [2022-04-27 22:37:02,310 INFO L158 Benchmark]: Boogie Preprocessor took 50.60ms. Allocated memory is still 209.7MB. Free memory was 183.0MB in the beginning and 180.1MB in the end (delta: 2.9MB). Peak memory consumption was 3.1MB. Max. memory is 8.0GB. [2022-04-27 22:37:02,311 INFO L158 Benchmark]: RCFGBuilder took 507.93ms. Allocated memory is still 209.7MB. Free memory was 180.1MB in the beginning and 156.5MB in the end (delta: 23.6MB). Peak memory consumption was 23.1MB. Max. memory is 8.0GB. [2022-04-27 22:37:02,311 INFO L158 Benchmark]: IcfgTransformer took 60.12ms. Allocated memory is still 209.7MB. Free memory was 156.0MB in the beginning and 152.3MB in the end (delta: 3.7MB). Peak memory consumption was 3.1MB. Max. memory is 8.0GB. [2022-04-27 22:37:02,312 INFO L158 Benchmark]: TraceAbstraction took 11426.03ms. Allocated memory was 209.7MB in the beginning and 312.5MB in the end (delta: 102.8MB). Free memory was 151.8MB in the beginning and 265.2MB in the end (delta: -113.4MB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-27 22:37:02,313 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.09ms. Allocated memory is still 209.7MB. Free memory was 175.7MB in the beginning and 175.5MB in the end (delta: 150.3kB). There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 272.50ms. Allocated memory is still 209.7MB. Free memory was 158.7MB in the beginning and 183.5MB in the end (delta: -24.8MB). Peak memory consumption was 9.1MB. Max. memory is 8.0GB. * Boogie Preprocessor took 50.60ms. Allocated memory is still 209.7MB. Free memory was 183.0MB in the beginning and 180.1MB in the end (delta: 2.9MB). Peak memory consumption was 3.1MB. Max. memory is 8.0GB. * RCFGBuilder took 507.93ms. Allocated memory is still 209.7MB. Free memory was 180.1MB in the beginning and 156.5MB in the end (delta: 23.6MB). Peak memory consumption was 23.1MB. Max. memory is 8.0GB. * IcfgTransformer took 60.12ms. Allocated memory is still 209.7MB. Free memory was 156.0MB in the beginning and 152.3MB in the end (delta: 3.7MB). Peak memory consumption was 3.1MB. Max. memory is 8.0GB. * TraceAbstraction took 11426.03ms. Allocated memory was 209.7MB in the beginning and 312.5MB in the end (delta: 102.8MB). Free memory was 151.8MB in the beginning and 265.2MB in the end (delta: -113.4MB). 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: [L110] 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={-1: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={-1:0}, nondet_tree()={0:0}] [L31] n->right = nondet_tree() [L32] return n; VAL [\result={-1:0}, n={-1:0}] [L110] RET, EXPR nondet_tree() VAL [nondet_tree()={-1:0}] [L110] CALL task(nondet_tree()) VAL [t={-1:0}] [L86] CALL, EXPR min(t) VAL [n={-1:0}] [L37] COND FALSE !(!n) [L40] EXPR n->data [L40] int a = n->data; [L41] EXPR n->left VAL [a=2147483647, n={-1:0}, n={-1:0}, n->left={0:0}] [L41] 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}] [L41] RET, EXPR min(n->left) VAL [a=2147483647, min(n->left)=2147483647, n={-1:0}, n={-1:0}, n->left={0:0}] [L41] int b = min(n->left); [L42] EXPR n->right VAL [a=2147483647, b=2147483647, n={-1:0}, n={-1:0}, n->right={0:0}] [L42] 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}] [L42] RET, EXPR min(n->right) VAL [a=2147483647, b=2147483647, min(n->right)=2147483647, n={-1:0}, n={-1:0}, n->right={0:0}] [L42] int c = min(n->right); [L43] COND TRUE b <= a && b <= c [L43] return b; VAL [\result=2147483647, a=2147483647, b=2147483647, c=2147483647, n={-1:0}, n={-1:0}] [L86] RET, EXPR min(t) VAL [min(t)=2147483647, t={-1:0}, t={-1:0}] [L86] int a = min(t); [L87] int b; VAL [a=2147483647, b={5:0}, t={-1:0}, t={-1:0}] [L89] CALL, EXPR size(t) VAL [t={-1:0}] [L81] COND FALSE !(!t) [L82] EXPR t->left VAL [t={-1:0}, t={-1:0}, t->left={0:0}] [L82] CALL, EXPR size(t->left) VAL [t={0:0}] [L81] COND TRUE !t [L81] return 0; VAL [\result=0, t={0:0}, t={0:0}] [L82] RET, EXPR size(t->left) VAL [size(t->left)=0, t={-1:0}, t={-1:0}, t->left={0:0}] [L82] EXPR t->right VAL [size(t->left)=0, t={-1:0}, t={-1:0}, t->left={0:0}, t->right={0:0}] [L82] CALL, EXPR size(t->right) VAL [t={0:0}] [L81] COND TRUE !t [L81] return 0; VAL [\result=0, t={0:0}, t={0:0}] [L82] RET, EXPR size(t->right) VAL [size(t->left)=0, size(t->right)=0, t={-1:0}, t={-1:0}, t->left={0:0}, t->right={0:0}] [L82] return size(t->left) + size(t->right) + 1; [L89] RET, EXPR size(t) VAL [a=2147483647, b={5:0}, size(t)=1, t={-1:0}, t={-1:0}] [L89] int n = size(t); [L90] CALL assume_cycle_if_not(n != 0) VAL [\old(cond)=1] [L9] COND FALSE !(!cond) VAL [\old(cond)=1, cond=1] [L90] RET assume_cycle_if_not(n != 0) VAL [a=2147483647, b={5:0}, n=1, t={-1:0}, t={-1:0}] [L91] EXPR, FCALL calloc(n, sizeof(int)) VAL [a=2147483647, b={5:0}, calloc(n, sizeof(int))={-2:0}, n=1, t={-1:0}, t={-1:0}] [L91] int *x = calloc(n, sizeof(int)); VAL [a=2147483647, b={5:0}, calloc(n, sizeof(int))={-2:0}, n=1, t={-1:0}, t={-1:0}, x={-2:0}] [L92] CALL tree_inorder(t, x, n) VAL [\old(i)=1, a={-2:0}, t={-1:0}] [L70] COND FALSE !(!t) [L73] EXPR t->left VAL [\old(i)=1, a={-2:0}, a={-2:0}, i=1, t={-1:0}, t={-1:0}, t->left={0:0}] [L73] CALL, EXPR tree_inorder(t->left, a, i) VAL [\old(i)=1, a={-2:0}, t={0:0}] [L70] COND TRUE !t [L71] return i; VAL [\old(i)=1, \result=1, a={-2:0}, a={-2:0}, i=1, t={0:0}, t={0:0}] [L73] RET, EXPR tree_inorder(t->left, a, i) VAL [\old(i)=1, a={-2:0}, a={-2:0}, i=1, t={-1:0}, t={-1:0}, t->left={0:0}, tree_inorder(t->left, a, i)=1] [L73] i = tree_inorder(t->left, a, i) [L74] EXPR i++ [L74] EXPR t->data [L74] a[i++] = t->data [L75] EXPR t->right VAL [\old(i)=1, a={-2:0}, a={-2:0}, i=2, t={-1:0}, t={-1:0}, t->right={0:0}] [L75] CALL, EXPR tree_inorder(t->right, a, i) VAL [\old(i)=2, a={-2:0}, t={0:0}] [L70] COND TRUE !t [L71] return i; VAL [\old(i)=2, \result=2, a={-2:0}, a={-2:0}, i=2, t={0:0}, t={0:0}] [L75] RET, EXPR tree_inorder(t->right, a, i) VAL [\old(i)=1, a={-2:0}, a={-2:0}, i=2, t={-1:0}, t={-1:0}, t->right={0:0}, tree_inorder(t->right, a, i)=2] [L75] i = tree_inorder(t->right, a, i) [L76] return i; VAL [\old(i)=1, \result=2, a={-2:0}, a={-2:0}, i=2, t={-1:0}, t={-1:0}] [L92] RET tree_inorder(t, x, n) VAL [a=2147483647, b={5:0}, calloc(n, sizeof(int))={-2:0}, n=1, t={-1:0}, t={-1:0}, tree_inorder(t, x, n)=2, x={-2:0}] [L93] EXPR x[0] VAL [a=2147483647, b={5:0}, calloc(n, sizeof(int))={-2:0}, n=1, t={-1:0}, t={-1:0}, x={-2:0}, x[0]=0] [L93] 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 12 procedures, 98 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 11.3s, OverallIterations: 5, TraceHistogramMax: 3, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 7.9s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 551 SdHoareTripleChecker+Valid, 3.1s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 509 mSDsluCounter, 975 SdHoareTripleChecker+Invalid, 3.0s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 650 mSDsCounter, 456 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 2662 IncrementalHoareTripleChecker+Invalid, 3118 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 456 mSolverCounterUnsat, 325 mSDtfsCounter, 2662 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 335 GetRequests, 251 SyntacticMatches, 3 SemanticMatches, 81 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 151 ImplicationChecksByTransitivity, 0.7s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=98occurred in iteration=0, InterpolantAutomatonStates: 48, 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, 4 MinimizatonAttempts, 15 StatesRemovedByMinimization, 3 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.2s SatisfiabilityAnalysisTime, 2.0s InterpolantComputationTime, 471 NumberOfCodeBlocks, 471 NumberOfCodeBlocksAsserted, 7 NumberOfCheckSat, 429 ConstructedInterpolants, 0 QuantifiedInterpolants, 1212 SizeOfPredicates, 7 NumberOfNonLiveVariables, 708 ConjunctsInSsa, 40 ConjunctsInUnsatCore, 7 InterpolantComputations, 3 PerfectInterpolantSequences, 115/123 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 22:37:02,334 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Ended with exit code 0 Received shutdown request...