/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata ./data -tc ../../../trunk/examples/toolchains/AutomizerC.xml --traceabstraction.compute.interpolants.along.a.counterexample Craig_NestedInterpolation --traceabstraction.use.separate.solver.for.trace.checks true -s ../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationFastUPR_32.epf -i ../../../trunk/examples/svcomp/verifythis/tree_del_rec.c -------------------------------------------------------------------------------- This is Ultimate 0.1.25-267fbe0 [2020-07-18 04:59:48,579 INFO L177 SettingsManager]: Resetting all preferences to default values... [2020-07-18 04:59:48,582 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2020-07-18 04:59:48,595 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2020-07-18 04:59:48,596 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2020-07-18 04:59:48,597 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2020-07-18 04:59:48,599 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2020-07-18 04:59:48,601 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2020-07-18 04:59:48,602 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2020-07-18 04:59:48,603 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2020-07-18 04:59:48,604 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2020-07-18 04:59:48,606 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2020-07-18 04:59:48,606 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2020-07-18 04:59:48,607 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2020-07-18 04:59:48,608 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2020-07-18 04:59:48,609 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2020-07-18 04:59:48,610 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2020-07-18 04:59:48,611 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2020-07-18 04:59:48,613 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2020-07-18 04:59:48,615 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2020-07-18 04:59:48,617 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2020-07-18 04:59:48,618 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2020-07-18 04:59:48,619 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2020-07-18 04:59:48,620 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2020-07-18 04:59:48,624 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2020-07-18 04:59:48,624 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2020-07-18 04:59:48,624 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2020-07-18 04:59:48,625 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2020-07-18 04:59:48,626 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2020-07-18 04:59:48,627 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2020-07-18 04:59:48,627 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2020-07-18 04:59:48,628 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2020-07-18 04:59:48,629 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2020-07-18 04:59:48,630 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2020-07-18 04:59:48,631 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2020-07-18 04:59:48,631 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2020-07-18 04:59:48,632 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2020-07-18 04:59:48,632 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2020-07-18 04:59:48,632 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2020-07-18 04:59:48,633 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2020-07-18 04:59:48,634 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2020-07-18 04:59:48,635 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationFastUPR_32.epf [2020-07-18 04:59:48,645 INFO L113 SettingsManager]: Loading preferences was successful [2020-07-18 04:59:48,645 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2020-07-18 04:59:48,646 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2020-07-18 04:59:48,647 INFO L138 SettingsManager]: * sizeof long=4 [2020-07-18 04:59:48,647 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2020-07-18 04:59:48,647 INFO L138 SettingsManager]: * sizeof POINTER=4 [2020-07-18 04:59:48,647 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2020-07-18 04:59:48,648 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2020-07-18 04:59:48,648 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2020-07-18 04:59:48,648 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2020-07-18 04:59:48,648 INFO L138 SettingsManager]: * sizeof long double=12 [2020-07-18 04:59:48,648 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2020-07-18 04:59:48,648 INFO L138 SettingsManager]: * Use constant arrays=true [2020-07-18 04:59:48,649 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2020-07-18 04:59:48,649 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2020-07-18 04:59:48,649 INFO L138 SettingsManager]: * Size of a code block=SingleStatement [2020-07-18 04:59:48,649 INFO L138 SettingsManager]: * To the following directory=./dump/ [2020-07-18 04:59:48,650 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2020-07-18 04:59:48,650 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2020-07-18 04:59:48,650 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2020-07-18 04:59:48,650 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=AcceleratedInterpolation [2020-07-18 04:59:48,650 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2020-07-18 04:59:48,651 INFO L138 SettingsManager]: * Use separate solver for trace checks=false Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: Compute Interpolants along a Counterexample -> Craig_NestedInterpolation Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: Use separate solver for trace checks -> true [2020-07-18 04:59:49,008 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2020-07-18 04:59:49,031 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2020-07-18 04:59:49,036 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2020-07-18 04:59:49,038 INFO L271 PluginConnector]: Initializing CDTParser... [2020-07-18 04:59:49,038 INFO L275 PluginConnector]: CDTParser initialized [2020-07-18 04:59:49,039 INFO L429 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/verifythis/tree_del_rec.c [2020-07-18 04:59:49,117 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/20f510d6b/9415c071eaf84da1b0da488f5c090ab9/FLAG777070542 [2020-07-18 04:59:49,591 INFO L306 CDTParser]: Found 1 translation units. [2020-07-18 04:59:49,592 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/verifythis/tree_del_rec.c [2020-07-18 04:59:49,603 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/20f510d6b/9415c071eaf84da1b0da488f5c090ab9/FLAG777070542 [2020-07-18 04:59:49,909 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/20f510d6b/9415c071eaf84da1b0da488f5c090ab9 [2020-07-18 04:59:49,921 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2020-07-18 04:59:49,925 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2020-07-18 04:59:49,929 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2020-07-18 04:59:49,930 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2020-07-18 04:59:49,934 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2020-07-18 04:59:49,935 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 18.07 04:59:49" (1/1) ... [2020-07-18 04:59:49,939 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@156e68a1 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 04:59:49, skipping insertion in model container [2020-07-18 04:59:49,939 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 18.07 04:59:49" (1/1) ... [2020-07-18 04:59:49,948 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2020-07-18 04:59:49,979 INFO L178 MainTranslator]: Built tables and reachable declarations [2020-07-18 04:59:50,211 WARN L1484 CHandler]: Possible shadowing of function min [2020-07-18 04:59:50,214 WARN L1484 CHandler]: Possible shadowing of function min [2020-07-18 04:59:50,231 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-07-18 04:59:50,249 INFO L203 MainTranslator]: Completed pre-run [2020-07-18 04:59:50,383 WARN L1484 CHandler]: Possible shadowing of function min [2020-07-18 04:59:50,386 WARN L1484 CHandler]: Possible shadowing of function min [2020-07-18 04:59:50,420 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-07-18 04:59:50,457 INFO L208 MainTranslator]: Completed translation [2020-07-18 04:59:50,458 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 04:59:50 WrapperNode [2020-07-18 04:59:50,458 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2020-07-18 04:59:50,459 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2020-07-18 04:59:50,459 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2020-07-18 04:59:50,459 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2020-07-18 04:59:50,473 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 04:59:50" (1/1) ... [2020-07-18 04:59:50,473 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 04:59:50" (1/1) ... [2020-07-18 04:59:50,489 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 04:59:50" (1/1) ... [2020-07-18 04:59:50,490 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 04:59:50" (1/1) ... [2020-07-18 04:59:50,515 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 04:59:50" (1/1) ... [2020-07-18 04:59:50,523 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 04:59:50" (1/1) ... [2020-07-18 04:59:50,526 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 04:59:50" (1/1) ... [2020-07-18 04:59:50,530 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2020-07-18 04:59:50,531 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2020-07-18 04:59:50,531 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2020-07-18 04:59:50,531 INFO L275 PluginConnector]: RCFGBuilder initialized [2020-07-18 04:59:50,532 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 04:59:50" (1/1) ... No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2020-07-18 04:59:50,607 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2020-07-18 04:59:50,607 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2020-07-18 04:59:50,607 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_cycle_if_not [2020-07-18 04:59:50,607 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2020-07-18 04:59:50,607 INFO L138 BoogieDeclarations]: Found implementation of procedure nondet_tree [2020-07-18 04:59:50,607 INFO L138 BoogieDeclarations]: Found implementation of procedure min [2020-07-18 04:59:50,608 INFO L138 BoogieDeclarations]: Found implementation of procedure tree_del [2020-07-18 04:59:50,608 INFO L138 BoogieDeclarations]: Found implementation of procedure tree_inorder [2020-07-18 04:59:50,608 INFO L138 BoogieDeclarations]: Found implementation of procedure size [2020-07-18 04:59:50,608 INFO L138 BoogieDeclarations]: Found implementation of procedure task [2020-07-18 04:59:50,608 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2020-07-18 04:59:50,608 INFO L138 BoogieDeclarations]: Found implementation of procedure #Ultimate.meminit [2020-07-18 04:59:50,609 INFO L130 BoogieDeclarations]: Found specification of procedure calloc [2020-07-18 04:59:50,609 INFO L130 BoogieDeclarations]: Found specification of procedure malloc [2020-07-18 04:59:50,609 INFO L130 BoogieDeclarations]: Found specification of procedure free [2020-07-18 04:59:50,610 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2020-07-18 04:59:50,610 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_bool [2020-07-18 04:59:50,610 INFO L130 BoogieDeclarations]: Found specification of procedure assume_cycle_if_not [2020-07-18 04:59:50,612 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_error [2020-07-18 04:59:50,612 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2020-07-18 04:59:50,612 INFO L130 BoogieDeclarations]: Found specification of procedure nondet_tree [2020-07-18 04:59:50,613 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2020-07-18 04:59:50,613 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2020-07-18 04:59:50,613 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2020-07-18 04:59:50,613 INFO L130 BoogieDeclarations]: Found specification of procedure min [2020-07-18 04:59:50,613 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2020-07-18 04:59:50,614 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2020-07-18 04:59:50,614 INFO L130 BoogieDeclarations]: Found specification of procedure tree_del [2020-07-18 04:59:50,615 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2020-07-18 04:59:50,615 INFO L130 BoogieDeclarations]: Found specification of procedure tree_inorder [2020-07-18 04:59:50,615 INFO L130 BoogieDeclarations]: Found specification of procedure size [2020-07-18 04:59:50,615 INFO L130 BoogieDeclarations]: Found specification of procedure task [2020-07-18 04:59:50,615 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2020-07-18 04:59:50,615 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.meminit [2020-07-18 04:59:50,615 INFO L130 BoogieDeclarations]: Found specification of procedure main [2020-07-18 04:59:50,615 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2020-07-18 04:59:50,615 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2020-07-18 04:59:51,506 INFO L290 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2020-07-18 04:59:51,507 INFO L295 CfgBuilder]: Removed 2 assume(true) statements. [2020-07-18 04:59:51,513 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 18.07 04:59:51 BoogieIcfgContainer [2020-07-18 04:59:51,513 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2020-07-18 04:59:51,514 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2020-07-18 04:59:51,515 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2020-07-18 04:59:51,518 INFO L275 PluginConnector]: TraceAbstraction initialized [2020-07-18 04:59:51,518 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 18.07 04:59:49" (1/3) ... [2020-07-18 04:59:51,519 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@911bf6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 18.07 04:59:51, skipping insertion in model container [2020-07-18 04:59:51,519 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 04:59:50" (2/3) ... [2020-07-18 04:59:51,520 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@911bf6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 18.07 04:59:51, skipping insertion in model container [2020-07-18 04:59:51,520 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 18.07 04:59:51" (3/3) ... [2020-07-18 04:59:51,522 INFO L109 eAbstractionObserver]: Analyzing ICFG tree_del_rec.c [2020-07-18 04:59:51,531 INFO L157 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2020-07-18 04:59:51,539 INFO L169 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2020-07-18 04:59:51,551 INFO L251 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2020-07-18 04:59:51,570 INFO L375 AbstractCegarLoop]: Interprodecural is true [2020-07-18 04:59:51,571 INFO L376 AbstractCegarLoop]: Hoare is true [2020-07-18 04:59:51,571 INFO L377 AbstractCegarLoop]: Compute interpolants for Craig_NestedInterpolation [2020-07-18 04:59:51,571 INFO L378 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2020-07-18 04:59:51,571 INFO L379 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2020-07-18 04:59:51,571 INFO L380 AbstractCegarLoop]: Difference is false [2020-07-18 04:59:51,572 INFO L381 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2020-07-18 04:59:51,572 INFO L385 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2020-07-18 04:59:51,592 INFO L276 IsEmpty]: Start isEmpty. Operand 190 states. [2020-07-18 04:59:51,607 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 61 [2020-07-18 04:59:51,608 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 04:59:51,609 INFO L422 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-18 04:59:51,609 INFO L427 AbstractCegarLoop]: === Iteration 1 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 04:59:51,614 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 04:59:51,615 INFO L82 PathProgramCache]: Analyzing trace with hash -2147081424, now seen corresponding path program 1 times [2020-07-18 04:59:51,623 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 04:59:51,624 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1761011293] [2020-07-18 04:59:51,624 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 04:59:51,811 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 04:59:51,945 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 04:59:51,958 INFO L280 TraceCheckUtils]: 0: Hoare triple {231#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {193#true} is VALID [2020-07-18 04:59:51,959 INFO L280 TraceCheckUtils]: 1: Hoare triple {193#true} #valid := #valid[0 := 0]; {193#true} is VALID [2020-07-18 04:59:51,960 INFO L280 TraceCheckUtils]: 2: Hoare triple {193#true} assume 0 < #StackHeapBarrier; {193#true} is VALID [2020-07-18 04:59:51,960 INFO L280 TraceCheckUtils]: 3: Hoare triple {193#true} assume true; {193#true} is VALID [2020-07-18 04:59:51,961 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {193#true} {193#true} #276#return; {193#true} is VALID [2020-07-18 04:59:51,985 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 04:59:51,993 INFO L280 TraceCheckUtils]: 0: Hoare triple {232#(and (= |#valid| |old(#valid)|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} assume 0 != #t~nondet1 % 256; {193#true} is VALID [2020-07-18 04:59:51,994 INFO L280 TraceCheckUtils]: 1: Hoare triple {193#true} havoc #t~nondet1; {193#true} is VALID [2020-07-18 04:59:51,994 INFO L280 TraceCheckUtils]: 2: Hoare triple {193#true} #res.base, #res.offset := 0, 0; {193#true} is VALID [2020-07-18 04:59:51,994 INFO L280 TraceCheckUtils]: 3: Hoare triple {193#true} assume true; {193#true} is VALID [2020-07-18 04:59:51,995 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {193#true} {193#true} #232#return; {193#true} is VALID [2020-07-18 04:59:51,997 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 04:59:52,002 INFO L280 TraceCheckUtils]: 0: Hoare triple {193#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {193#true} is VALID [2020-07-18 04:59:52,003 INFO L280 TraceCheckUtils]: 1: Hoare triple {193#true} assume ~n.base == 0 && ~n.offset == 0; {193#true} is VALID [2020-07-18 04:59:52,003 INFO L280 TraceCheckUtils]: 2: Hoare triple {193#true} #res := 2147483647; {193#true} is VALID [2020-07-18 04:59:52,004 INFO L280 TraceCheckUtils]: 3: Hoare triple {193#true} assume true; {193#true} is VALID [2020-07-18 04:59:52,004 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {193#true} {193#true} #246#return; {193#true} is VALID [2020-07-18 04:59:52,008 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 04:59:52,029 INFO L280 TraceCheckUtils]: 0: Hoare triple {193#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {193#true} is VALID [2020-07-18 04:59:52,029 INFO L280 TraceCheckUtils]: 1: Hoare triple {193#true} assume ~t.base == 0 && ~t.offset == 0; {193#true} is VALID [2020-07-18 04:59:52,030 INFO L280 TraceCheckUtils]: 2: Hoare triple {193#true} #res := 0; {233#(= 0 |size_#res|)} is VALID [2020-07-18 04:59:52,031 INFO L280 TraceCheckUtils]: 3: Hoare triple {233#(= 0 |size_#res|)} assume true; {233#(= 0 |size_#res|)} is VALID [2020-07-18 04:59:52,033 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {233#(= 0 |size_#res|)} {193#true} #248#return; {215#(= 0 |task_#t~ret27|)} is VALID [2020-07-18 04:59:52,036 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 04:59:52,083 INFO L280 TraceCheckUtils]: 0: Hoare triple {193#true} ~cond := #in~cond; {234#(= assume_cycle_if_not_~cond |assume_cycle_if_not_#in~cond|)} is VALID [2020-07-18 04:59:52,084 INFO L280 TraceCheckUtils]: 1: Hoare triple {234#(= assume_cycle_if_not_~cond |assume_cycle_if_not_#in~cond|)} assume !(0 == ~cond); {235#(not (= 0 |assume_cycle_if_not_#in~cond|))} is VALID [2020-07-18 04:59:52,085 INFO L280 TraceCheckUtils]: 2: Hoare triple {235#(not (= 0 |assume_cycle_if_not_#in~cond|))} assume true; {235#(not (= 0 |assume_cycle_if_not_#in~cond|))} is VALID [2020-07-18 04:59:52,086 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {235#(not (= 0 |assume_cycle_if_not_#in~cond|))} {216#(= 0 task_~n~1)} #250#return; {194#false} is VALID [2020-07-18 04:59:52,103 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 04:59:52,108 INFO L280 TraceCheckUtils]: 0: Hoare triple {236#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {193#true} is VALID [2020-07-18 04:59:52,109 INFO L280 TraceCheckUtils]: 1: Hoare triple {193#true} assume true; {193#true} is VALID [2020-07-18 04:59:52,109 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {193#true} {194#false} #252#return; {194#false} is VALID [2020-07-18 04:59:52,134 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 04:59:52,141 INFO L280 TraceCheckUtils]: 0: Hoare triple {237#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {193#true} is VALID [2020-07-18 04:59:52,141 INFO L280 TraceCheckUtils]: 1: Hoare triple {193#true} ~a.base, ~a.offset := #in~a.base, #in~a.offset; {193#true} is VALID [2020-07-18 04:59:52,142 INFO L280 TraceCheckUtils]: 2: Hoare triple {193#true} ~i := #in~i; {193#true} is VALID [2020-07-18 04:59:52,142 INFO L280 TraceCheckUtils]: 3: Hoare triple {193#true} assume ~t.base == 0 && ~t.offset == 0; {193#true} is VALID [2020-07-18 04:59:52,142 INFO L280 TraceCheckUtils]: 4: Hoare triple {193#true} #res := ~i; {193#true} is VALID [2020-07-18 04:59:52,143 INFO L280 TraceCheckUtils]: 5: Hoare triple {193#true} assume true; {193#true} is VALID [2020-07-18 04:59:52,143 INFO L275 TraceCheckUtils]: 6: Hoare quadruple {193#true} {194#false} #254#return; {194#false} is VALID [2020-07-18 04:59:52,145 INFO L263 TraceCheckUtils]: 0: Hoare triple {193#true} call ULTIMATE.init(); {231#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 04:59:52,145 INFO L280 TraceCheckUtils]: 1: Hoare triple {231#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {193#true} is VALID [2020-07-18 04:59:52,145 INFO L280 TraceCheckUtils]: 2: Hoare triple {193#true} #valid := #valid[0 := 0]; {193#true} is VALID [2020-07-18 04:59:52,146 INFO L280 TraceCheckUtils]: 3: Hoare triple {193#true} assume 0 < #StackHeapBarrier; {193#true} is VALID [2020-07-18 04:59:52,146 INFO L280 TraceCheckUtils]: 4: Hoare triple {193#true} assume true; {193#true} is VALID [2020-07-18 04:59:52,146 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {193#true} {193#true} #276#return; {193#true} is VALID [2020-07-18 04:59:52,147 INFO L263 TraceCheckUtils]: 6: Hoare triple {193#true} call #t~ret40 := main(); {193#true} is VALID [2020-07-18 04:59:52,148 INFO L263 TraceCheckUtils]: 7: Hoare triple {193#true} call #t~ret39.base, #t~ret39.offset := nondet_tree(); {232#(and (= |#valid| |old(#valid)|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-18 04:59:52,149 INFO L280 TraceCheckUtils]: 8: Hoare triple {232#(and (= |#valid| |old(#valid)|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} assume 0 != #t~nondet1 % 256; {193#true} is VALID [2020-07-18 04:59:52,149 INFO L280 TraceCheckUtils]: 9: Hoare triple {193#true} havoc #t~nondet1; {193#true} is VALID [2020-07-18 04:59:52,149 INFO L280 TraceCheckUtils]: 10: Hoare triple {193#true} #res.base, #res.offset := 0, 0; {193#true} is VALID [2020-07-18 04:59:52,150 INFO L280 TraceCheckUtils]: 11: Hoare triple {193#true} assume true; {193#true} is VALID [2020-07-18 04:59:52,150 INFO L275 TraceCheckUtils]: 12: Hoare quadruple {193#true} {193#true} #232#return; {193#true} is VALID [2020-07-18 04:59:52,150 INFO L263 TraceCheckUtils]: 13: Hoare triple {193#true} call task(#t~ret39.base, #t~ret39.offset); {193#true} is VALID [2020-07-18 04:59:52,151 INFO L280 TraceCheckUtils]: 14: Hoare triple {193#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {193#true} is VALID [2020-07-18 04:59:52,151 INFO L263 TraceCheckUtils]: 15: Hoare triple {193#true} call #t~ret26 := min(~t.base, ~t.offset); {193#true} is VALID [2020-07-18 04:59:52,152 INFO L280 TraceCheckUtils]: 16: Hoare triple {193#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {193#true} is VALID [2020-07-18 04:59:52,152 INFO L280 TraceCheckUtils]: 17: Hoare triple {193#true} assume ~n.base == 0 && ~n.offset == 0; {193#true} is VALID [2020-07-18 04:59:52,152 INFO L280 TraceCheckUtils]: 18: Hoare triple {193#true} #res := 2147483647; {193#true} is VALID [2020-07-18 04:59:52,153 INFO L280 TraceCheckUtils]: 19: Hoare triple {193#true} assume true; {193#true} is VALID [2020-07-18 04:59:52,153 INFO L275 TraceCheckUtils]: 20: Hoare quadruple {193#true} {193#true} #246#return; {193#true} is VALID [2020-07-18 04:59:52,153 INFO L280 TraceCheckUtils]: 21: Hoare triple {193#true} assume -2147483648 <= #t~ret26 && #t~ret26 <= 2147483647; {193#true} is VALID [2020-07-18 04:59:52,154 INFO L280 TraceCheckUtils]: 22: Hoare triple {193#true} ~a~1 := #t~ret26; {193#true} is VALID [2020-07-18 04:59:52,154 INFO L280 TraceCheckUtils]: 23: Hoare triple {193#true} havoc #t~ret26; {193#true} is VALID [2020-07-18 04:59:52,154 INFO L280 TraceCheckUtils]: 24: Hoare triple {193#true} SUMMARY for call ~#b~1.base, ~#b~1.offset := #Ultimate.allocOnStack(4); srcloc: L77 {193#true} is VALID [2020-07-18 04:59:52,155 INFO L263 TraceCheckUtils]: 25: Hoare triple {193#true} call #t~ret27 := size(~t.base, ~t.offset); {193#true} is VALID [2020-07-18 04:59:52,155 INFO L280 TraceCheckUtils]: 26: Hoare triple {193#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {193#true} is VALID [2020-07-18 04:59:52,155 INFO L280 TraceCheckUtils]: 27: Hoare triple {193#true} assume ~t.base == 0 && ~t.offset == 0; {193#true} is VALID [2020-07-18 04:59:52,156 INFO L280 TraceCheckUtils]: 28: Hoare triple {193#true} #res := 0; {233#(= 0 |size_#res|)} is VALID [2020-07-18 04:59:52,157 INFO L280 TraceCheckUtils]: 29: Hoare triple {233#(= 0 |size_#res|)} assume true; {233#(= 0 |size_#res|)} is VALID [2020-07-18 04:59:52,159 INFO L275 TraceCheckUtils]: 30: Hoare quadruple {233#(= 0 |size_#res|)} {193#true} #248#return; {215#(= 0 |task_#t~ret27|)} is VALID [2020-07-18 04:59:52,160 INFO L280 TraceCheckUtils]: 31: Hoare triple {215#(= 0 |task_#t~ret27|)} assume -2147483648 <= #t~ret27 && #t~ret27 <= 2147483647; {215#(= 0 |task_#t~ret27|)} is VALID [2020-07-18 04:59:52,161 INFO L280 TraceCheckUtils]: 32: Hoare triple {215#(= 0 |task_#t~ret27|)} ~n~1 := #t~ret27; {216#(= 0 task_~n~1)} is VALID [2020-07-18 04:59:52,162 INFO L280 TraceCheckUtils]: 33: Hoare triple {216#(= 0 task_~n~1)} havoc #t~ret27; {216#(= 0 task_~n~1)} is VALID [2020-07-18 04:59:52,163 INFO L263 TraceCheckUtils]: 34: Hoare triple {216#(= 0 task_~n~1)} call assume_cycle_if_not((if 0 != ~n~1 then 1 else 0)); {193#true} is VALID [2020-07-18 04:59:52,164 INFO L280 TraceCheckUtils]: 35: Hoare triple {193#true} ~cond := #in~cond; {234#(= assume_cycle_if_not_~cond |assume_cycle_if_not_#in~cond|)} is VALID [2020-07-18 04:59:52,165 INFO L280 TraceCheckUtils]: 36: Hoare triple {234#(= assume_cycle_if_not_~cond |assume_cycle_if_not_#in~cond|)} assume !(0 == ~cond); {235#(not (= 0 |assume_cycle_if_not_#in~cond|))} is VALID [2020-07-18 04:59:52,166 INFO L280 TraceCheckUtils]: 37: Hoare triple {235#(not (= 0 |assume_cycle_if_not_#in~cond|))} assume true; {235#(not (= 0 |assume_cycle_if_not_#in~cond|))} is VALID [2020-07-18 04:59:52,168 INFO L275 TraceCheckUtils]: 38: Hoare quadruple {235#(not (= 0 |assume_cycle_if_not_#in~cond|))} {216#(= 0 task_~n~1)} #250#return; {194#false} is VALID [2020-07-18 04:59:52,168 INFO L280 TraceCheckUtils]: 39: Hoare triple {194#false} SUMMARY for call #t~malloc28.base, #t~malloc28.offset := #Ultimate.allocOnHeap(4 * ~n~1); srcloc: L80-1 {194#false} is VALID [2020-07-18 04:59:52,169 INFO L263 TraceCheckUtils]: 40: Hoare triple {194#false} call #Ultimate.meminit(#t~malloc28.base, #t~malloc28.offset, ~n~1, 4, 4 * ~n~1); {236#(= |#memory_int| |old(#memory_int)|)} is VALID [2020-07-18 04:59:52,169 INFO L280 TraceCheckUtils]: 41: Hoare triple {236#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {193#true} is VALID [2020-07-18 04:59:52,169 INFO L280 TraceCheckUtils]: 42: Hoare triple {193#true} assume true; {193#true} is VALID [2020-07-18 04:59:52,170 INFO L275 TraceCheckUtils]: 43: Hoare quadruple {193#true} {194#false} #252#return; {194#false} is VALID [2020-07-18 04:59:52,170 INFO L280 TraceCheckUtils]: 44: Hoare triple {194#false} ~x~0.base, ~x~0.offset := #t~malloc28.base, #t~malloc28.offset; {194#false} is VALID [2020-07-18 04:59:52,170 INFO L263 TraceCheckUtils]: 45: Hoare triple {194#false} call #t~ret29 := tree_inorder(~t.base, ~t.offset, ~x~0.base, ~x~0.offset, ~n~1); {237#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-18 04:59:52,171 INFO L280 TraceCheckUtils]: 46: Hoare triple {237#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {193#true} is VALID [2020-07-18 04:59:52,171 INFO L280 TraceCheckUtils]: 47: Hoare triple {193#true} ~a.base, ~a.offset := #in~a.base, #in~a.offset; {193#true} is VALID [2020-07-18 04:59:52,171 INFO L280 TraceCheckUtils]: 48: Hoare triple {193#true} ~i := #in~i; {193#true} is VALID [2020-07-18 04:59:52,172 INFO L280 TraceCheckUtils]: 49: Hoare triple {193#true} assume ~t.base == 0 && ~t.offset == 0; {193#true} is VALID [2020-07-18 04:59:52,172 INFO L280 TraceCheckUtils]: 50: Hoare triple {193#true} #res := ~i; {193#true} is VALID [2020-07-18 04:59:52,172 INFO L280 TraceCheckUtils]: 51: Hoare triple {193#true} assume true; {193#true} is VALID [2020-07-18 04:59:52,173 INFO L275 TraceCheckUtils]: 52: Hoare quadruple {193#true} {194#false} #254#return; {194#false} is VALID [2020-07-18 04:59:52,173 INFO L280 TraceCheckUtils]: 53: Hoare triple {194#false} assume -2147483648 <= #t~ret29 && #t~ret29 <= 2147483647; {194#false} is VALID [2020-07-18 04:59:52,173 INFO L280 TraceCheckUtils]: 54: Hoare triple {194#false} havoc #t~ret29; {194#false} is VALID [2020-07-18 04:59:52,174 INFO L280 TraceCheckUtils]: 55: Hoare triple {194#false} SUMMARY for call #t~mem30 := read~int(~x~0.base, ~x~0.offset, 4); srcloc: L83 {194#false} is VALID [2020-07-18 04:59:52,174 INFO L263 TraceCheckUtils]: 56: Hoare triple {194#false} call __VERIFIER_assert((if ~a~1 == #t~mem30 then 1 else 0)); {194#false} is VALID [2020-07-18 04:59:52,175 INFO L280 TraceCheckUtils]: 57: Hoare triple {194#false} ~cond := #in~cond; {194#false} is VALID [2020-07-18 04:59:52,175 INFO L280 TraceCheckUtils]: 58: Hoare triple {194#false} assume 0 == ~cond; {194#false} is VALID [2020-07-18 04:59:52,175 INFO L280 TraceCheckUtils]: 59: Hoare triple {194#false} assume !false; {194#false} is VALID [2020-07-18 04:59:52,185 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-18 04:59:52,186 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1761011293] [2020-07-18 04:59:52,189 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-18 04:59:52,189 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2020-07-18 04:59:52,190 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [817195019] [2020-07-18 04:59:52,198 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 60 [2020-07-18 04:59:52,201 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 04:59:52,206 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states. [2020-07-18 04:59:52,302 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 04:59:52,303 INFO L459 AbstractCegarLoop]: Interpolant automaton has 11 states [2020-07-18 04:59:52,303 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 04:59:52,314 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2020-07-18 04:59:52,315 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=88, Unknown=0, NotChecked=0, Total=110 [2020-07-18 04:59:52,317 INFO L87 Difference]: Start difference. First operand 190 states. Second operand 11 states. [2020-07-18 04:59:56,529 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 04:59:56,530 INFO L93 Difference]: Finished difference Result 333 states and 391 transitions. [2020-07-18 04:59:56,530 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2020-07-18 04:59:56,530 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 60 [2020-07-18 04:59:56,531 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 04:59:56,532 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2020-07-18 04:59:56,559 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 391 transitions. [2020-07-18 04:59:56,560 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2020-07-18 04:59:56,577 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 391 transitions. [2020-07-18 04:59:56,578 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states and 391 transitions. [2020-07-18 04:59:57,106 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 391 edges. 391 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 04:59:57,162 INFO L225 Difference]: With dead ends: 333 [2020-07-18 04:59:57,162 INFO L226 Difference]: Without dead ends: 193 [2020-07-18 04:59:57,180 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 28 GetRequests, 12 SyntacticMatches, 0 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 16 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=72, Invalid=234, Unknown=0, NotChecked=0, Total=306 [2020-07-18 04:59:57,205 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 193 states. [2020-07-18 04:59:57,532 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 193 to 180. [2020-07-18 04:59:57,532 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 04:59:57,533 INFO L82 GeneralOperation]: Start isEquivalent. First operand 193 states. Second operand 180 states. [2020-07-18 04:59:57,536 INFO L74 IsIncluded]: Start isIncluded. First operand 193 states. Second operand 180 states. [2020-07-18 04:59:57,537 INFO L87 Difference]: Start difference. First operand 193 states. Second operand 180 states. [2020-07-18 04:59:57,576 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 04:59:57,577 INFO L93 Difference]: Finished difference Result 193 states and 222 transitions. [2020-07-18 04:59:57,577 INFO L276 IsEmpty]: Start isEmpty. Operand 193 states and 222 transitions. [2020-07-18 04:59:57,590 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 04:59:57,590 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 04:59:57,590 INFO L74 IsIncluded]: Start isIncluded. First operand 180 states. Second operand 193 states. [2020-07-18 04:59:57,591 INFO L87 Difference]: Start difference. First operand 180 states. Second operand 193 states. [2020-07-18 04:59:57,614 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 04:59:57,614 INFO L93 Difference]: Finished difference Result 193 states and 222 transitions. [2020-07-18 04:59:57,614 INFO L276 IsEmpty]: Start isEmpty. Operand 193 states and 222 transitions. [2020-07-18 04:59:57,616 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 04:59:57,616 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 04:59:57,616 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 04:59:57,617 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 04:59:57,617 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 180 states. [2020-07-18 04:59:57,637 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 180 states to 180 states and 204 transitions. [2020-07-18 04:59:57,639 INFO L78 Accepts]: Start accepts. Automaton has 180 states and 204 transitions. Word has length 60 [2020-07-18 04:59:57,639 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 04:59:57,639 INFO L479 AbstractCegarLoop]: Abstraction has 180 states and 204 transitions. [2020-07-18 04:59:57,639 INFO L480 AbstractCegarLoop]: Interpolant automaton has 11 states. [2020-07-18 04:59:57,640 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 180 states and 204 transitions. [2020-07-18 04:59:57,967 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 204 edges. 204 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 04:59:57,968 INFO L276 IsEmpty]: Start isEmpty. Operand 180 states and 204 transitions. [2020-07-18 04:59:57,972 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 81 [2020-07-18 04:59:57,972 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 04:59:57,972 INFO L422 BasicCegarLoop]: trace histogram [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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-18 04:59:57,973 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2020-07-18 04:59:57,973 INFO L427 AbstractCegarLoop]: === Iteration 2 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 04:59:57,973 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 04:59:57,973 INFO L82 PathProgramCache]: Analyzing trace with hash 394479658, now seen corresponding path program 1 times [2020-07-18 04:59:57,974 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 04:59:57,974 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [346611138] [2020-07-18 04:59:57,974 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 04:59:58,023 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 04:59:58,108 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 04:59:58,112 INFO L280 TraceCheckUtils]: 0: Hoare triple {1726#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {1667#true} is VALID [2020-07-18 04:59:58,113 INFO L280 TraceCheckUtils]: 1: Hoare triple {1667#true} #valid := #valid[0 := 0]; {1667#true} is VALID [2020-07-18 04:59:58,113 INFO L280 TraceCheckUtils]: 2: Hoare triple {1667#true} assume 0 < #StackHeapBarrier; {1667#true} is VALID [2020-07-18 04:59:58,113 INFO L280 TraceCheckUtils]: 3: Hoare triple {1667#true} assume true; {1667#true} is VALID [2020-07-18 04:59:58,113 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {1667#true} {1667#true} #276#return; {1667#true} is VALID [2020-07-18 04:59:58,137 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 04:59:58,171 INFO L280 TraceCheckUtils]: 0: Hoare triple {1727#(and (= |#valid| |old(#valid)|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} assume 0 != #t~nondet1 % 256; {1667#true} is VALID [2020-07-18 04:59:58,172 INFO L280 TraceCheckUtils]: 1: Hoare triple {1667#true} havoc #t~nondet1; {1667#true} is VALID [2020-07-18 04:59:58,173 INFO L280 TraceCheckUtils]: 2: Hoare triple {1667#true} #res.base, #res.offset := 0, 0; {1728#(and (<= |nondet_tree_#res.base| 0) (<= 0 |nondet_tree_#res.offset|) (<= |nondet_tree_#res.offset| 0) (<= 0 |nondet_tree_#res.base|))} is VALID [2020-07-18 04:59:58,173 INFO L280 TraceCheckUtils]: 3: Hoare triple {1728#(and (<= |nondet_tree_#res.base| 0) (<= 0 |nondet_tree_#res.offset|) (<= |nondet_tree_#res.offset| 0) (<= 0 |nondet_tree_#res.base|))} assume true; {1728#(and (<= |nondet_tree_#res.base| 0) (<= 0 |nondet_tree_#res.offset|) (<= |nondet_tree_#res.offset| 0) (<= 0 |nondet_tree_#res.base|))} is VALID [2020-07-18 04:59:58,175 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {1728#(and (<= |nondet_tree_#res.base| 0) (<= 0 |nondet_tree_#res.offset|) (<= |nondet_tree_#res.offset| 0) (<= 0 |nondet_tree_#res.base|))} {1667#true} #232#return; {1679#(and (= 0 |main_#t~ret39.base|) (= 0 |main_#t~ret39.offset|))} is VALID [2020-07-18 04:59:58,178 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 04:59:58,182 INFO L280 TraceCheckUtils]: 0: Hoare triple {1667#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {1667#true} is VALID [2020-07-18 04:59:58,183 INFO L280 TraceCheckUtils]: 1: Hoare triple {1667#true} assume ~n.base == 0 && ~n.offset == 0; {1667#true} is VALID [2020-07-18 04:59:58,183 INFO L280 TraceCheckUtils]: 2: Hoare triple {1667#true} #res := 2147483647; {1667#true} is VALID [2020-07-18 04:59:58,183 INFO L280 TraceCheckUtils]: 3: Hoare triple {1667#true} assume true; {1667#true} is VALID [2020-07-18 04:59:58,184 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {1667#true} {1681#(and (= 0 task_~t.offset) (= 0 task_~t.base))} #246#return; {1681#(and (= 0 task_~t.offset) (= 0 task_~t.base))} is VALID [2020-07-18 04:59:58,191 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 04:59:58,245 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 04:59:58,255 INFO L280 TraceCheckUtils]: 0: Hoare triple {1667#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1667#true} is VALID [2020-07-18 04:59:58,255 INFO L280 TraceCheckUtils]: 1: Hoare triple {1667#true} assume ~t.base == 0 && ~t.offset == 0; {1667#true} is VALID [2020-07-18 04:59:58,255 INFO L280 TraceCheckUtils]: 2: Hoare triple {1667#true} #res := 0; {1667#true} is VALID [2020-07-18 04:59:58,256 INFO L280 TraceCheckUtils]: 3: Hoare triple {1667#true} assume true; {1667#true} is VALID [2020-07-18 04:59:58,257 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {1667#true} {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} #272#return; {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} is VALID [2020-07-18 04:59:58,259 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 04:59:58,263 INFO L280 TraceCheckUtils]: 0: Hoare triple {1667#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1667#true} is VALID [2020-07-18 04:59:58,264 INFO L280 TraceCheckUtils]: 1: Hoare triple {1667#true} assume ~t.base == 0 && ~t.offset == 0; {1667#true} is VALID [2020-07-18 04:59:58,264 INFO L280 TraceCheckUtils]: 2: Hoare triple {1667#true} #res := 0; {1667#true} is VALID [2020-07-18 04:59:58,264 INFO L280 TraceCheckUtils]: 3: Hoare triple {1667#true} assume true; {1667#true} is VALID [2020-07-18 04:59:58,266 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {1667#true} {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} #274#return; {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} is VALID [2020-07-18 04:59:58,266 INFO L280 TraceCheckUtils]: 0: Hoare triple {1667#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1729#(and (= |size_#in~t.base| size_~t.base) (= |size_#in~t.offset| size_~t.offset))} is VALID [2020-07-18 04:59:58,267 INFO L280 TraceCheckUtils]: 1: Hoare triple {1729#(and (= |size_#in~t.base| size_~t.base) (= |size_#in~t.offset| size_~t.offset))} assume !(~t.base == 0 && ~t.offset == 0); {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} is VALID [2020-07-18 04:59:58,268 INFO L280 TraceCheckUtils]: 2: Hoare triple {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} SUMMARY for call #t~mem22.base, #t~mem22.offset := read~$Pointer$(~t.base, 4 + ~t.offset, 4); srcloc: L72 {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} is VALID [2020-07-18 04:59:58,268 INFO L263 TraceCheckUtils]: 3: Hoare triple {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} call #t~ret23 := size(#t~mem22.base, #t~mem22.offset); {1667#true} is VALID [2020-07-18 04:59:58,269 INFO L280 TraceCheckUtils]: 4: Hoare triple {1667#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1667#true} is VALID [2020-07-18 04:59:58,269 INFO L280 TraceCheckUtils]: 5: Hoare triple {1667#true} assume ~t.base == 0 && ~t.offset == 0; {1667#true} is VALID [2020-07-18 04:59:58,269 INFO L280 TraceCheckUtils]: 6: Hoare triple {1667#true} #res := 0; {1667#true} is VALID [2020-07-18 04:59:58,269 INFO L280 TraceCheckUtils]: 7: Hoare triple {1667#true} assume true; {1667#true} is VALID [2020-07-18 04:59:58,271 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {1667#true} {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} #272#return; {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} is VALID [2020-07-18 04:59:58,271 INFO L280 TraceCheckUtils]: 9: Hoare triple {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} assume -2147483648 <= #t~ret23 && #t~ret23 <= 2147483647; {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} is VALID [2020-07-18 04:59:58,272 INFO L280 TraceCheckUtils]: 10: Hoare triple {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} SUMMARY for call #t~mem24.base, #t~mem24.offset := read~$Pointer$(~t.base, 8 + ~t.offset, 4); srcloc: L72-3 {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} is VALID [2020-07-18 04:59:58,272 INFO L263 TraceCheckUtils]: 11: Hoare triple {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} call #t~ret25 := size(#t~mem24.base, #t~mem24.offset); {1667#true} is VALID [2020-07-18 04:59:58,273 INFO L280 TraceCheckUtils]: 12: Hoare triple {1667#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1667#true} is VALID [2020-07-18 04:59:58,273 INFO L280 TraceCheckUtils]: 13: Hoare triple {1667#true} assume ~t.base == 0 && ~t.offset == 0; {1667#true} is VALID [2020-07-18 04:59:58,273 INFO L280 TraceCheckUtils]: 14: Hoare triple {1667#true} #res := 0; {1667#true} is VALID [2020-07-18 04:59:58,273 INFO L280 TraceCheckUtils]: 15: Hoare triple {1667#true} assume true; {1667#true} is VALID [2020-07-18 04:59:58,275 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {1667#true} {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} #274#return; {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} is VALID [2020-07-18 04:59:58,275 INFO L280 TraceCheckUtils]: 17: Hoare triple {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} assume -2147483648 <= #t~ret25 && #t~ret25 <= 2147483647; {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} is VALID [2020-07-18 04:59:58,276 INFO L280 TraceCheckUtils]: 18: Hoare triple {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} #res := 1 + (#t~ret23 + #t~ret25); {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} is VALID [2020-07-18 04:59:58,277 INFO L280 TraceCheckUtils]: 19: Hoare triple {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} havoc #t~ret23; {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} is VALID [2020-07-18 04:59:58,277 INFO L280 TraceCheckUtils]: 20: Hoare triple {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} havoc #t~mem24.base, #t~mem24.offset; {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} is VALID [2020-07-18 04:59:58,278 INFO L280 TraceCheckUtils]: 21: Hoare triple {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} havoc #t~mem22.base, #t~mem22.offset; {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} is VALID [2020-07-18 04:59:58,278 INFO L280 TraceCheckUtils]: 22: Hoare triple {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} havoc #t~ret25; {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} is VALID [2020-07-18 04:59:58,279 INFO L280 TraceCheckUtils]: 23: Hoare triple {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} assume true; {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} is VALID [2020-07-18 04:59:58,280 INFO L275 TraceCheckUtils]: 24: Hoare quadruple {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} {1681#(and (= 0 task_~t.offset) (= 0 task_~t.base))} #248#return; {1668#false} is VALID [2020-07-18 04:59:58,283 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 04:59:58,286 INFO L280 TraceCheckUtils]: 0: Hoare triple {1667#true} ~cond := #in~cond; {1667#true} is VALID [2020-07-18 04:59:58,286 INFO L280 TraceCheckUtils]: 1: Hoare triple {1667#true} assume !(0 == ~cond); {1667#true} is VALID [2020-07-18 04:59:58,287 INFO L280 TraceCheckUtils]: 2: Hoare triple {1667#true} assume true; {1667#true} is VALID [2020-07-18 04:59:58,287 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {1667#true} {1668#false} #250#return; {1668#false} is VALID [2020-07-18 04:59:58,301 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 04:59:58,307 INFO L280 TraceCheckUtils]: 0: Hoare triple {1741#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {1667#true} is VALID [2020-07-18 04:59:58,307 INFO L280 TraceCheckUtils]: 1: Hoare triple {1667#true} assume true; {1667#true} is VALID [2020-07-18 04:59:58,307 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {1667#true} {1668#false} #252#return; {1668#false} is VALID [2020-07-18 04:59:58,327 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 04:59:58,332 INFO L280 TraceCheckUtils]: 0: Hoare triple {1742#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1667#true} is VALID [2020-07-18 04:59:58,332 INFO L280 TraceCheckUtils]: 1: Hoare triple {1667#true} ~a.base, ~a.offset := #in~a.base, #in~a.offset; {1667#true} is VALID [2020-07-18 04:59:58,332 INFO L280 TraceCheckUtils]: 2: Hoare triple {1667#true} ~i := #in~i; {1667#true} is VALID [2020-07-18 04:59:58,332 INFO L280 TraceCheckUtils]: 3: Hoare triple {1667#true} assume ~t.base == 0 && ~t.offset == 0; {1667#true} is VALID [2020-07-18 04:59:58,332 INFO L280 TraceCheckUtils]: 4: Hoare triple {1667#true} #res := ~i; {1667#true} is VALID [2020-07-18 04:59:58,333 INFO L280 TraceCheckUtils]: 5: Hoare triple {1667#true} assume true; {1667#true} is VALID [2020-07-18 04:59:58,333 INFO L275 TraceCheckUtils]: 6: Hoare quadruple {1667#true} {1668#false} #254#return; {1668#false} is VALID [2020-07-18 04:59:58,334 INFO L263 TraceCheckUtils]: 0: Hoare triple {1667#true} call ULTIMATE.init(); {1726#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 04:59:58,334 INFO L280 TraceCheckUtils]: 1: Hoare triple {1726#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {1667#true} is VALID [2020-07-18 04:59:58,334 INFO L280 TraceCheckUtils]: 2: Hoare triple {1667#true} #valid := #valid[0 := 0]; {1667#true} is VALID [2020-07-18 04:59:58,334 INFO L280 TraceCheckUtils]: 3: Hoare triple {1667#true} assume 0 < #StackHeapBarrier; {1667#true} is VALID [2020-07-18 04:59:58,334 INFO L280 TraceCheckUtils]: 4: Hoare triple {1667#true} assume true; {1667#true} is VALID [2020-07-18 04:59:58,335 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {1667#true} {1667#true} #276#return; {1667#true} is VALID [2020-07-18 04:59:58,335 INFO L263 TraceCheckUtils]: 6: Hoare triple {1667#true} call #t~ret40 := main(); {1667#true} is VALID [2020-07-18 04:59:58,336 INFO L263 TraceCheckUtils]: 7: Hoare triple {1667#true} call #t~ret39.base, #t~ret39.offset := nondet_tree(); {1727#(and (= |#valid| |old(#valid)|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-18 04:59:58,336 INFO L280 TraceCheckUtils]: 8: Hoare triple {1727#(and (= |#valid| |old(#valid)|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} assume 0 != #t~nondet1 % 256; {1667#true} is VALID [2020-07-18 04:59:58,336 INFO L280 TraceCheckUtils]: 9: Hoare triple {1667#true} havoc #t~nondet1; {1667#true} is VALID [2020-07-18 04:59:58,341 INFO L280 TraceCheckUtils]: 10: Hoare triple {1667#true} #res.base, #res.offset := 0, 0; {1728#(and (<= |nondet_tree_#res.base| 0) (<= 0 |nondet_tree_#res.offset|) (<= |nondet_tree_#res.offset| 0) (<= 0 |nondet_tree_#res.base|))} is VALID [2020-07-18 04:59:58,345 INFO L280 TraceCheckUtils]: 11: Hoare triple {1728#(and (<= |nondet_tree_#res.base| 0) (<= 0 |nondet_tree_#res.offset|) (<= |nondet_tree_#res.offset| 0) (<= 0 |nondet_tree_#res.base|))} assume true; {1728#(and (<= |nondet_tree_#res.base| 0) (<= 0 |nondet_tree_#res.offset|) (<= |nondet_tree_#res.offset| 0) (<= 0 |nondet_tree_#res.base|))} is VALID [2020-07-18 04:59:58,347 INFO L275 TraceCheckUtils]: 12: Hoare quadruple {1728#(and (<= |nondet_tree_#res.base| 0) (<= 0 |nondet_tree_#res.offset|) (<= |nondet_tree_#res.offset| 0) (<= 0 |nondet_tree_#res.base|))} {1667#true} #232#return; {1679#(and (= 0 |main_#t~ret39.base|) (= 0 |main_#t~ret39.offset|))} is VALID [2020-07-18 04:59:58,348 INFO L263 TraceCheckUtils]: 13: Hoare triple {1679#(and (= 0 |main_#t~ret39.base|) (= 0 |main_#t~ret39.offset|))} call task(#t~ret39.base, #t~ret39.offset); {1680#(and (= 0 |task_#in~t.offset|) (= |task_#in~t.base| 0))} is VALID [2020-07-18 04:59:58,348 INFO L280 TraceCheckUtils]: 14: Hoare triple {1680#(and (= 0 |task_#in~t.offset|) (= |task_#in~t.base| 0))} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1681#(and (= 0 task_~t.offset) (= 0 task_~t.base))} is VALID [2020-07-18 04:59:58,349 INFO L263 TraceCheckUtils]: 15: Hoare triple {1681#(and (= 0 task_~t.offset) (= 0 task_~t.base))} call #t~ret26 := min(~t.base, ~t.offset); {1667#true} is VALID [2020-07-18 04:59:58,349 INFO L280 TraceCheckUtils]: 16: Hoare triple {1667#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {1667#true} is VALID [2020-07-18 04:59:58,349 INFO L280 TraceCheckUtils]: 17: Hoare triple {1667#true} assume ~n.base == 0 && ~n.offset == 0; {1667#true} is VALID [2020-07-18 04:59:58,349 INFO L280 TraceCheckUtils]: 18: Hoare triple {1667#true} #res := 2147483647; {1667#true} is VALID [2020-07-18 04:59:58,349 INFO L280 TraceCheckUtils]: 19: Hoare triple {1667#true} assume true; {1667#true} is VALID [2020-07-18 04:59:58,351 INFO L275 TraceCheckUtils]: 20: Hoare quadruple {1667#true} {1681#(and (= 0 task_~t.offset) (= 0 task_~t.base))} #246#return; {1681#(and (= 0 task_~t.offset) (= 0 task_~t.base))} is VALID [2020-07-18 04:59:58,352 INFO L280 TraceCheckUtils]: 21: Hoare triple {1681#(and (= 0 task_~t.offset) (= 0 task_~t.base))} assume -2147483648 <= #t~ret26 && #t~ret26 <= 2147483647; {1681#(and (= 0 task_~t.offset) (= 0 task_~t.base))} is VALID [2020-07-18 04:59:58,353 INFO L280 TraceCheckUtils]: 22: Hoare triple {1681#(and (= 0 task_~t.offset) (= 0 task_~t.base))} ~a~1 := #t~ret26; {1681#(and (= 0 task_~t.offset) (= 0 task_~t.base))} is VALID [2020-07-18 04:59:58,353 INFO L280 TraceCheckUtils]: 23: Hoare triple {1681#(and (= 0 task_~t.offset) (= 0 task_~t.base))} havoc #t~ret26; {1681#(and (= 0 task_~t.offset) (= 0 task_~t.base))} is VALID [2020-07-18 04:59:58,357 INFO L280 TraceCheckUtils]: 24: Hoare triple {1681#(and (= 0 task_~t.offset) (= 0 task_~t.base))} SUMMARY for call ~#b~1.base, ~#b~1.offset := #Ultimate.allocOnStack(4); srcloc: L77 {1681#(and (= 0 task_~t.offset) (= 0 task_~t.base))} is VALID [2020-07-18 04:59:58,357 INFO L263 TraceCheckUtils]: 25: Hoare triple {1681#(and (= 0 task_~t.offset) (= 0 task_~t.base))} call #t~ret27 := size(~t.base, ~t.offset); {1667#true} is VALID [2020-07-18 04:59:58,358 INFO L280 TraceCheckUtils]: 26: Hoare triple {1667#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1729#(and (= |size_#in~t.base| size_~t.base) (= |size_#in~t.offset| size_~t.offset))} is VALID [2020-07-18 04:59:58,360 INFO L280 TraceCheckUtils]: 27: Hoare triple {1729#(and (= |size_#in~t.base| size_~t.base) (= |size_#in~t.offset| size_~t.offset))} assume !(~t.base == 0 && ~t.offset == 0); {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} is VALID [2020-07-18 04:59:58,362 INFO L280 TraceCheckUtils]: 28: Hoare triple {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} SUMMARY for call #t~mem22.base, #t~mem22.offset := read~$Pointer$(~t.base, 4 + ~t.offset, 4); srcloc: L72 {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} is VALID [2020-07-18 04:59:58,363 INFO L263 TraceCheckUtils]: 29: Hoare triple {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} call #t~ret23 := size(#t~mem22.base, #t~mem22.offset); {1667#true} is VALID [2020-07-18 04:59:58,363 INFO L280 TraceCheckUtils]: 30: Hoare triple {1667#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1667#true} is VALID [2020-07-18 04:59:58,363 INFO L280 TraceCheckUtils]: 31: Hoare triple {1667#true} assume ~t.base == 0 && ~t.offset == 0; {1667#true} is VALID [2020-07-18 04:59:58,363 INFO L280 TraceCheckUtils]: 32: Hoare triple {1667#true} #res := 0; {1667#true} is VALID [2020-07-18 04:59:58,364 INFO L280 TraceCheckUtils]: 33: Hoare triple {1667#true} assume true; {1667#true} is VALID [2020-07-18 04:59:58,365 INFO L275 TraceCheckUtils]: 34: Hoare quadruple {1667#true} {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} #272#return; {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} is VALID [2020-07-18 04:59:58,365 INFO L280 TraceCheckUtils]: 35: Hoare triple {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} assume -2147483648 <= #t~ret23 && #t~ret23 <= 2147483647; {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} is VALID [2020-07-18 04:59:58,366 INFO L280 TraceCheckUtils]: 36: Hoare triple {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} SUMMARY for call #t~mem24.base, #t~mem24.offset := read~$Pointer$(~t.base, 8 + ~t.offset, 4); srcloc: L72-3 {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} is VALID [2020-07-18 04:59:58,366 INFO L263 TraceCheckUtils]: 37: Hoare triple {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} call #t~ret25 := size(#t~mem24.base, #t~mem24.offset); {1667#true} is VALID [2020-07-18 04:59:58,366 INFO L280 TraceCheckUtils]: 38: Hoare triple {1667#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1667#true} is VALID [2020-07-18 04:59:58,367 INFO L280 TraceCheckUtils]: 39: Hoare triple {1667#true} assume ~t.base == 0 && ~t.offset == 0; {1667#true} is VALID [2020-07-18 04:59:58,367 INFO L280 TraceCheckUtils]: 40: Hoare triple {1667#true} #res := 0; {1667#true} is VALID [2020-07-18 04:59:58,367 INFO L280 TraceCheckUtils]: 41: Hoare triple {1667#true} assume true; {1667#true} is VALID [2020-07-18 04:59:58,368 INFO L275 TraceCheckUtils]: 42: Hoare quadruple {1667#true} {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} #274#return; {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} is VALID [2020-07-18 04:59:58,369 INFO L280 TraceCheckUtils]: 43: Hoare triple {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} assume -2147483648 <= #t~ret25 && #t~ret25 <= 2147483647; {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} is VALID [2020-07-18 04:59:58,369 INFO L280 TraceCheckUtils]: 44: Hoare triple {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} #res := 1 + (#t~ret23 + #t~ret25); {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} is VALID [2020-07-18 04:59:58,370 INFO L280 TraceCheckUtils]: 45: Hoare triple {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} havoc #t~ret23; {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} is VALID [2020-07-18 04:59:58,370 INFO L280 TraceCheckUtils]: 46: Hoare triple {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} havoc #t~mem24.base, #t~mem24.offset; {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} is VALID [2020-07-18 04:59:58,371 INFO L280 TraceCheckUtils]: 47: Hoare triple {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} havoc #t~mem22.base, #t~mem22.offset; {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} is VALID [2020-07-18 04:59:58,372 INFO L280 TraceCheckUtils]: 48: Hoare triple {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} havoc #t~ret25; {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} is VALID [2020-07-18 04:59:58,372 INFO L280 TraceCheckUtils]: 49: Hoare triple {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} assume true; {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} is VALID [2020-07-18 04:59:58,373 INFO L275 TraceCheckUtils]: 50: Hoare quadruple {1730#(or (not (= |size_#in~t.offset| 0)) (not (= 0 |size_#in~t.base|)))} {1681#(and (= 0 task_~t.offset) (= 0 task_~t.base))} #248#return; {1668#false} is VALID [2020-07-18 04:59:58,374 INFO L280 TraceCheckUtils]: 51: Hoare triple {1668#false} assume -2147483648 <= #t~ret27 && #t~ret27 <= 2147483647; {1668#false} is VALID [2020-07-18 04:59:58,374 INFO L280 TraceCheckUtils]: 52: Hoare triple {1668#false} ~n~1 := #t~ret27; {1668#false} is VALID [2020-07-18 04:59:58,374 INFO L280 TraceCheckUtils]: 53: Hoare triple {1668#false} havoc #t~ret27; {1668#false} is VALID [2020-07-18 04:59:58,374 INFO L263 TraceCheckUtils]: 54: Hoare triple {1668#false} call assume_cycle_if_not((if 0 != ~n~1 then 1 else 0)); {1667#true} is VALID [2020-07-18 04:59:58,374 INFO L280 TraceCheckUtils]: 55: Hoare triple {1667#true} ~cond := #in~cond; {1667#true} is VALID [2020-07-18 04:59:58,375 INFO L280 TraceCheckUtils]: 56: Hoare triple {1667#true} assume !(0 == ~cond); {1667#true} is VALID [2020-07-18 04:59:58,375 INFO L280 TraceCheckUtils]: 57: Hoare triple {1667#true} assume true; {1667#true} is VALID [2020-07-18 04:59:58,375 INFO L275 TraceCheckUtils]: 58: Hoare quadruple {1667#true} {1668#false} #250#return; {1668#false} is VALID [2020-07-18 04:59:58,375 INFO L280 TraceCheckUtils]: 59: Hoare triple {1668#false} SUMMARY for call #t~malloc28.base, #t~malloc28.offset := #Ultimate.allocOnHeap(4 * ~n~1); srcloc: L80-1 {1668#false} is VALID [2020-07-18 04:59:58,376 INFO L263 TraceCheckUtils]: 60: Hoare triple {1668#false} call #Ultimate.meminit(#t~malloc28.base, #t~malloc28.offset, ~n~1, 4, 4 * ~n~1); {1741#(= |#memory_int| |old(#memory_int)|)} is VALID [2020-07-18 04:59:58,376 INFO L280 TraceCheckUtils]: 61: Hoare triple {1741#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {1667#true} is VALID [2020-07-18 04:59:58,376 INFO L280 TraceCheckUtils]: 62: Hoare triple {1667#true} assume true; {1667#true} is VALID [2020-07-18 04:59:58,376 INFO L275 TraceCheckUtils]: 63: Hoare quadruple {1667#true} {1668#false} #252#return; {1668#false} is VALID [2020-07-18 04:59:58,377 INFO L280 TraceCheckUtils]: 64: Hoare triple {1668#false} ~x~0.base, ~x~0.offset := #t~malloc28.base, #t~malloc28.offset; {1668#false} is VALID [2020-07-18 04:59:58,377 INFO L263 TraceCheckUtils]: 65: Hoare triple {1668#false} call #t~ret29 := tree_inorder(~t.base, ~t.offset, ~x~0.base, ~x~0.offset, ~n~1); {1742#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-18 04:59:58,377 INFO L280 TraceCheckUtils]: 66: Hoare triple {1742#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {1667#true} is VALID [2020-07-18 04:59:58,377 INFO L280 TraceCheckUtils]: 67: Hoare triple {1667#true} ~a.base, ~a.offset := #in~a.base, #in~a.offset; {1667#true} is VALID [2020-07-18 04:59:58,378 INFO L280 TraceCheckUtils]: 68: Hoare triple {1667#true} ~i := #in~i; {1667#true} is VALID [2020-07-18 04:59:58,378 INFO L280 TraceCheckUtils]: 69: Hoare triple {1667#true} assume ~t.base == 0 && ~t.offset == 0; {1667#true} is VALID [2020-07-18 04:59:58,378 INFO L280 TraceCheckUtils]: 70: Hoare triple {1667#true} #res := ~i; {1667#true} is VALID [2020-07-18 04:59:58,378 INFO L280 TraceCheckUtils]: 71: Hoare triple {1667#true} assume true; {1667#true} is VALID [2020-07-18 04:59:58,379 INFO L275 TraceCheckUtils]: 72: Hoare quadruple {1667#true} {1668#false} #254#return; {1668#false} is VALID [2020-07-18 04:59:58,379 INFO L280 TraceCheckUtils]: 73: Hoare triple {1668#false} assume -2147483648 <= #t~ret29 && #t~ret29 <= 2147483647; {1668#false} is VALID [2020-07-18 04:59:58,379 INFO L280 TraceCheckUtils]: 74: Hoare triple {1668#false} havoc #t~ret29; {1668#false} is VALID [2020-07-18 04:59:58,379 INFO L280 TraceCheckUtils]: 75: Hoare triple {1668#false} SUMMARY for call #t~mem30 := read~int(~x~0.base, ~x~0.offset, 4); srcloc: L83 {1668#false} is VALID [2020-07-18 04:59:58,380 INFO L263 TraceCheckUtils]: 76: Hoare triple {1668#false} call __VERIFIER_assert((if ~a~1 == #t~mem30 then 1 else 0)); {1668#false} is VALID [2020-07-18 04:59:58,380 INFO L280 TraceCheckUtils]: 77: Hoare triple {1668#false} ~cond := #in~cond; {1668#false} is VALID [2020-07-18 04:59:58,380 INFO L280 TraceCheckUtils]: 78: Hoare triple {1668#false} assume 0 == ~cond; {1668#false} is VALID [2020-07-18 04:59:58,380 INFO L280 TraceCheckUtils]: 79: Hoare triple {1668#false} assume !false; {1668#false} is VALID [2020-07-18 04:59:58,391 INFO L134 CoverageAnalysis]: Checked inductivity of 13 backedges. 4 proven. 2 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2020-07-18 04:59:58,391 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [346611138] [2020-07-18 04:59:58,392 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2020-07-18 04:59:58,392 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12] total 12 [2020-07-18 04:59:58,392 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [263513852] [2020-07-18 04:59:58,394 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 80 [2020-07-18 04:59:58,394 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 04:59:58,395 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states. [2020-07-18 04:59:58,472 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 76 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 04:59:58,472 INFO L459 AbstractCegarLoop]: Interpolant automaton has 12 states [2020-07-18 04:59:58,473 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 04:59:58,473 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2020-07-18 04:59:58,473 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=108, Unknown=0, NotChecked=0, Total=132 [2020-07-18 04:59:58,473 INFO L87 Difference]: Start difference. First operand 180 states and 204 transitions. Second operand 12 states. [2020-07-18 05:00:03,271 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:00:03,272 INFO L93 Difference]: Finished difference Result 321 states and 367 transitions. [2020-07-18 05:00:03,272 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2020-07-18 05:00:03,272 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 80 [2020-07-18 05:00:03,273 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 05:00:03,273 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2020-07-18 05:00:03,283 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 363 transitions. [2020-07-18 05:00:03,283 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2020-07-18 05:00:03,292 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 363 transitions. [2020-07-18 05:00:03,292 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 363 transitions. [2020-07-18 05:00:03,833 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 363 edges. 363 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:00:03,841 INFO L225 Difference]: With dead ends: 321 [2020-07-18 05:00:03,841 INFO L226 Difference]: Without dead ends: 192 [2020-07-18 05:00:03,843 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 35 GetRequests, 17 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 20 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=89, Invalid=291, Unknown=0, NotChecked=0, Total=380 [2020-07-18 05:00:03,844 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 192 states. [2020-07-18 05:00:04,196 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 192 to 182. [2020-07-18 05:00:04,197 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 05:00:04,197 INFO L82 GeneralOperation]: Start isEquivalent. First operand 192 states. Second operand 182 states. [2020-07-18 05:00:04,197 INFO L74 IsIncluded]: Start isIncluded. First operand 192 states. Second operand 182 states. [2020-07-18 05:00:04,197 INFO L87 Difference]: Start difference. First operand 192 states. Second operand 182 states. [2020-07-18 05:00:04,209 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:00:04,209 INFO L93 Difference]: Finished difference Result 192 states and 220 transitions. [2020-07-18 05:00:04,209 INFO L276 IsEmpty]: Start isEmpty. Operand 192 states and 220 transitions. [2020-07-18 05:00:04,211 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 05:00:04,211 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 05:00:04,211 INFO L74 IsIncluded]: Start isIncluded. First operand 182 states. Second operand 192 states. [2020-07-18 05:00:04,212 INFO L87 Difference]: Start difference. First operand 182 states. Second operand 192 states. [2020-07-18 05:00:04,222 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:00:04,222 INFO L93 Difference]: Finished difference Result 192 states and 220 transitions. [2020-07-18 05:00:04,222 INFO L276 IsEmpty]: Start isEmpty. Operand 192 states and 220 transitions. [2020-07-18 05:00:04,224 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 05:00:04,224 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 05:00:04,224 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 05:00:04,224 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 05:00:04,225 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 182 states. [2020-07-18 05:00:04,234 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 182 states to 182 states and 207 transitions. [2020-07-18 05:00:04,234 INFO L78 Accepts]: Start accepts. Automaton has 182 states and 207 transitions. Word has length 80 [2020-07-18 05:00:04,235 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 05:00:04,235 INFO L479 AbstractCegarLoop]: Abstraction has 182 states and 207 transitions. [2020-07-18 05:00:04,235 INFO L480 AbstractCegarLoop]: Interpolant automaton has 12 states. [2020-07-18 05:00:04,235 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 182 states and 207 transitions. [2020-07-18 05:00:04,552 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 207 edges. 207 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:00:04,552 INFO L276 IsEmpty]: Start isEmpty. Operand 182 states and 207 transitions. [2020-07-18 05:00:04,557 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 102 [2020-07-18 05:00:04,558 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 05:00:04,558 INFO L422 BasicCegarLoop]: trace histogram [3, 3, 3, 2, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-18 05:00:04,558 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2020-07-18 05:00:04,559 INFO L427 AbstractCegarLoop]: === Iteration 3 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 05:00:04,559 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 05:00:04,560 INFO L82 PathProgramCache]: Analyzing trace with hash 1011523, now seen corresponding path program 1 times [2020-07-18 05:00:04,560 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 05:00:04,560 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [942775452] [2020-07-18 05:00:04,560 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 05:00:04,610 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:00:04,701 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:00:04,709 INFO L280 TraceCheckUtils]: 0: Hoare triple {3233#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {3153#true} is VALID [2020-07-18 05:00:04,709 INFO L280 TraceCheckUtils]: 1: Hoare triple {3153#true} #valid := #valid[0 := 0]; {3153#true} is VALID [2020-07-18 05:00:04,710 INFO L280 TraceCheckUtils]: 2: Hoare triple {3153#true} assume 0 < #StackHeapBarrier; {3153#true} is VALID [2020-07-18 05:00:04,710 INFO L280 TraceCheckUtils]: 3: Hoare triple {3153#true} assume true; {3153#true} is VALID [2020-07-18 05:00:04,710 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {3153#true} {3153#true} #276#return; {3153#true} is VALID [2020-07-18 05:00:04,740 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:00:04,819 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:00:04,830 INFO L280 TraceCheckUtils]: 0: Hoare triple {3234#(and (= |#valid| |old(#valid)|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} assume 0 != #t~nondet1 % 256; {3153#true} is VALID [2020-07-18 05:00:04,830 INFO L280 TraceCheckUtils]: 1: Hoare triple {3153#true} havoc #t~nondet1; {3153#true} is VALID [2020-07-18 05:00:04,831 INFO L280 TraceCheckUtils]: 2: Hoare triple {3153#true} #res.base, #res.offset := 0, 0; {3153#true} is VALID [2020-07-18 05:00:04,831 INFO L280 TraceCheckUtils]: 3: Hoare triple {3153#true} assume true; {3153#true} is VALID [2020-07-18 05:00:04,832 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {3153#true} {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} #242#return; {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:04,834 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:00:04,842 INFO L280 TraceCheckUtils]: 0: Hoare triple {3234#(and (= |#valid| |old(#valid)|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} assume 0 != #t~nondet1 % 256; {3153#true} is VALID [2020-07-18 05:00:04,843 INFO L280 TraceCheckUtils]: 1: Hoare triple {3153#true} havoc #t~nondet1; {3153#true} is VALID [2020-07-18 05:00:04,843 INFO L280 TraceCheckUtils]: 2: Hoare triple {3153#true} #res.base, #res.offset := 0, 0; {3153#true} is VALID [2020-07-18 05:00:04,843 INFO L280 TraceCheckUtils]: 3: Hoare triple {3153#true} assume true; {3153#true} is VALID [2020-07-18 05:00:04,844 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {3153#true} {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} #244#return; {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:04,844 INFO L280 TraceCheckUtils]: 0: Hoare triple {3234#(and (= |#valid| |old(#valid)|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} assume !(0 != #t~nondet1 % 256); {3153#true} is VALID [2020-07-18 05:00:04,845 INFO L280 TraceCheckUtils]: 1: Hoare triple {3153#true} havoc #t~nondet1; {3153#true} is VALID [2020-07-18 05:00:04,848 INFO L280 TraceCheckUtils]: 2: Hoare triple {3153#true} SUMMARY for call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(12); srcloc: L26 {3235#(or (< 0 |nondet_tree_#t~malloc2.base|) (<= (+ |nondet_tree_#t~malloc2.base| 1) 0))} is VALID [2020-07-18 05:00:04,849 INFO L280 TraceCheckUtils]: 3: Hoare triple {3235#(or (< 0 |nondet_tree_#t~malloc2.base|) (<= (+ |nondet_tree_#t~malloc2.base| 1) 0))} ~n~0.base, ~n~0.offset := #t~malloc2.base, #t~malloc2.offset; {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:04,850 INFO L280 TraceCheckUtils]: 4: Hoare triple {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:04,850 INFO L280 TraceCheckUtils]: 5: Hoare triple {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} SUMMARY for call write~int(#t~nondet3, ~n~0.base, ~n~0.offset, 4); srcloc: L27-1 {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:04,851 INFO L280 TraceCheckUtils]: 6: Hoare triple {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} havoc #t~nondet3; {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:04,851 INFO L263 TraceCheckUtils]: 7: Hoare triple {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} call #t~ret4.base, #t~ret4.offset := nondet_tree(); {3234#(and (= |#valid| |old(#valid)|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-18 05:00:04,852 INFO L280 TraceCheckUtils]: 8: Hoare triple {3234#(and (= |#valid| |old(#valid)|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} assume 0 != #t~nondet1 % 256; {3153#true} is VALID [2020-07-18 05:00:04,852 INFO L280 TraceCheckUtils]: 9: Hoare triple {3153#true} havoc #t~nondet1; {3153#true} is VALID [2020-07-18 05:00:04,852 INFO L280 TraceCheckUtils]: 10: Hoare triple {3153#true} #res.base, #res.offset := 0, 0; {3153#true} is VALID [2020-07-18 05:00:04,852 INFO L280 TraceCheckUtils]: 11: Hoare triple {3153#true} assume true; {3153#true} is VALID [2020-07-18 05:00:04,853 INFO L275 TraceCheckUtils]: 12: Hoare quadruple {3153#true} {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} #242#return; {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:04,853 INFO L280 TraceCheckUtils]: 13: Hoare triple {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} SUMMARY for call write~$Pointer$(#t~ret4.base, #t~ret4.offset, ~n~0.base, 4 + ~n~0.offset, 4); srcloc: L28-1 {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:04,854 INFO L280 TraceCheckUtils]: 14: Hoare triple {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} havoc #t~ret4.base, #t~ret4.offset; {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:04,855 INFO L263 TraceCheckUtils]: 15: Hoare triple {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} call #t~ret5.base, #t~ret5.offset := nondet_tree(); {3234#(and (= |#valid| |old(#valid)|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-18 05:00:04,855 INFO L280 TraceCheckUtils]: 16: Hoare triple {3234#(and (= |#valid| |old(#valid)|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} assume 0 != #t~nondet1 % 256; {3153#true} is VALID [2020-07-18 05:00:04,855 INFO L280 TraceCheckUtils]: 17: Hoare triple {3153#true} havoc #t~nondet1; {3153#true} is VALID [2020-07-18 05:00:04,856 INFO L280 TraceCheckUtils]: 18: Hoare triple {3153#true} #res.base, #res.offset := 0, 0; {3153#true} is VALID [2020-07-18 05:00:04,856 INFO L280 TraceCheckUtils]: 19: Hoare triple {3153#true} assume true; {3153#true} is VALID [2020-07-18 05:00:04,857 INFO L275 TraceCheckUtils]: 20: Hoare quadruple {3153#true} {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} #244#return; {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:04,857 INFO L280 TraceCheckUtils]: 21: Hoare triple {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} SUMMARY for call write~$Pointer$(#t~ret5.base, #t~ret5.offset, ~n~0.base, 8 + ~n~0.offset, 4); srcloc: L29-1 {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:04,858 INFO L280 TraceCheckUtils]: 22: Hoare triple {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} havoc #t~ret5.base, #t~ret5.offset; {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:04,858 INFO L280 TraceCheckUtils]: 23: Hoare triple {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} #res.base, #res.offset := ~n~0.base, ~n~0.offset; {3247#(or (<= (+ |nondet_tree_#res.base| 1) 0) (<= 1 |nondet_tree_#res.base|))} is VALID [2020-07-18 05:00:04,859 INFO L280 TraceCheckUtils]: 24: Hoare triple {3247#(or (<= (+ |nondet_tree_#res.base| 1) 0) (<= 1 |nondet_tree_#res.base|))} assume true; {3247#(or (<= (+ |nondet_tree_#res.base| 1) 0) (<= 1 |nondet_tree_#res.base|))} is VALID [2020-07-18 05:00:04,860 INFO L275 TraceCheckUtils]: 25: Hoare quadruple {3247#(or (<= (+ |nondet_tree_#res.base| 1) 0) (<= 1 |nondet_tree_#res.base|))} {3153#true} #232#return; {3186#(not (= 0 |main_#t~ret39.base|))} is VALID [2020-07-18 05:00:04,863 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:00:04,901 INFO L280 TraceCheckUtils]: 0: Hoare triple {3153#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {3248#(= min_~n.base |min_#in~n.base|)} is VALID [2020-07-18 05:00:04,902 INFO L280 TraceCheckUtils]: 1: Hoare triple {3248#(= min_~n.base |min_#in~n.base|)} assume ~n.base == 0 && ~n.offset == 0; {3249#(= 0 |min_#in~n.base|)} is VALID [2020-07-18 05:00:04,903 INFO L280 TraceCheckUtils]: 2: Hoare triple {3249#(= 0 |min_#in~n.base|)} #res := 2147483647; {3249#(= 0 |min_#in~n.base|)} is VALID [2020-07-18 05:00:04,904 INFO L280 TraceCheckUtils]: 3: Hoare triple {3249#(= 0 |min_#in~n.base|)} assume true; {3249#(= 0 |min_#in~n.base|)} is VALID [2020-07-18 05:00:04,904 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {3249#(= 0 |min_#in~n.base|)} {3188#(not (= 0 task_~t.base))} #246#return; {3154#false} is VALID [2020-07-18 05:00:04,908 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:00:04,926 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:00:04,929 INFO L280 TraceCheckUtils]: 0: Hoare triple {3153#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {3153#true} is VALID [2020-07-18 05:00:04,929 INFO L280 TraceCheckUtils]: 1: Hoare triple {3153#true} assume ~t.base == 0 && ~t.offset == 0; {3153#true} is VALID [2020-07-18 05:00:04,930 INFO L280 TraceCheckUtils]: 2: Hoare triple {3153#true} #res := 0; {3153#true} is VALID [2020-07-18 05:00:04,930 INFO L280 TraceCheckUtils]: 3: Hoare triple {3153#true} assume true; {3153#true} is VALID [2020-07-18 05:00:04,930 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {3153#true} {3153#true} #272#return; {3153#true} is VALID [2020-07-18 05:00:04,931 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:00:04,934 INFO L280 TraceCheckUtils]: 0: Hoare triple {3153#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {3153#true} is VALID [2020-07-18 05:00:04,934 INFO L280 TraceCheckUtils]: 1: Hoare triple {3153#true} assume ~t.base == 0 && ~t.offset == 0; {3153#true} is VALID [2020-07-18 05:00:04,935 INFO L280 TraceCheckUtils]: 2: Hoare triple {3153#true} #res := 0; {3153#true} is VALID [2020-07-18 05:00:04,935 INFO L280 TraceCheckUtils]: 3: Hoare triple {3153#true} assume true; {3153#true} is VALID [2020-07-18 05:00:04,935 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {3153#true} {3153#true} #274#return; {3153#true} is VALID [2020-07-18 05:00:04,935 INFO L280 TraceCheckUtils]: 0: Hoare triple {3153#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {3153#true} is VALID [2020-07-18 05:00:04,936 INFO L280 TraceCheckUtils]: 1: Hoare triple {3153#true} assume !(~t.base == 0 && ~t.offset == 0); {3153#true} is VALID [2020-07-18 05:00:04,936 INFO L280 TraceCheckUtils]: 2: Hoare triple {3153#true} SUMMARY for call #t~mem22.base, #t~mem22.offset := read~$Pointer$(~t.base, 4 + ~t.offset, 4); srcloc: L72 {3153#true} is VALID [2020-07-18 05:00:04,936 INFO L263 TraceCheckUtils]: 3: Hoare triple {3153#true} call #t~ret23 := size(#t~mem22.base, #t~mem22.offset); {3153#true} is VALID [2020-07-18 05:00:04,937 INFO L280 TraceCheckUtils]: 4: Hoare triple {3153#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {3153#true} is VALID [2020-07-18 05:00:04,937 INFO L280 TraceCheckUtils]: 5: Hoare triple {3153#true} assume ~t.base == 0 && ~t.offset == 0; {3153#true} is VALID [2020-07-18 05:00:04,937 INFO L280 TraceCheckUtils]: 6: Hoare triple {3153#true} #res := 0; {3153#true} is VALID [2020-07-18 05:00:04,937 INFO L280 TraceCheckUtils]: 7: Hoare triple {3153#true} assume true; {3153#true} is VALID [2020-07-18 05:00:04,938 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {3153#true} {3153#true} #272#return; {3153#true} is VALID [2020-07-18 05:00:04,938 INFO L280 TraceCheckUtils]: 9: Hoare triple {3153#true} assume -2147483648 <= #t~ret23 && #t~ret23 <= 2147483647; {3153#true} is VALID [2020-07-18 05:00:04,938 INFO L280 TraceCheckUtils]: 10: Hoare triple {3153#true} SUMMARY for call #t~mem24.base, #t~mem24.offset := read~$Pointer$(~t.base, 8 + ~t.offset, 4); srcloc: L72-3 {3153#true} is VALID [2020-07-18 05:00:04,938 INFO L263 TraceCheckUtils]: 11: Hoare triple {3153#true} call #t~ret25 := size(#t~mem24.base, #t~mem24.offset); {3153#true} is VALID [2020-07-18 05:00:04,939 INFO L280 TraceCheckUtils]: 12: Hoare triple {3153#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {3153#true} is VALID [2020-07-18 05:00:04,939 INFO L280 TraceCheckUtils]: 13: Hoare triple {3153#true} assume ~t.base == 0 && ~t.offset == 0; {3153#true} is VALID [2020-07-18 05:00:04,939 INFO L280 TraceCheckUtils]: 14: Hoare triple {3153#true} #res := 0; {3153#true} is VALID [2020-07-18 05:00:04,939 INFO L280 TraceCheckUtils]: 15: Hoare triple {3153#true} assume true; {3153#true} is VALID [2020-07-18 05:00:04,939 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {3153#true} {3153#true} #274#return; {3153#true} is VALID [2020-07-18 05:00:04,940 INFO L280 TraceCheckUtils]: 17: Hoare triple {3153#true} assume -2147483648 <= #t~ret25 && #t~ret25 <= 2147483647; {3153#true} is VALID [2020-07-18 05:00:04,940 INFO L280 TraceCheckUtils]: 18: Hoare triple {3153#true} #res := 1 + (#t~ret23 + #t~ret25); {3153#true} is VALID [2020-07-18 05:00:04,940 INFO L280 TraceCheckUtils]: 19: Hoare triple {3153#true} havoc #t~ret23; {3153#true} is VALID [2020-07-18 05:00:04,940 INFO L280 TraceCheckUtils]: 20: Hoare triple {3153#true} havoc #t~mem24.base, #t~mem24.offset; {3153#true} is VALID [2020-07-18 05:00:04,941 INFO L280 TraceCheckUtils]: 21: Hoare triple {3153#true} havoc #t~mem22.base, #t~mem22.offset; {3153#true} is VALID [2020-07-18 05:00:04,941 INFO L280 TraceCheckUtils]: 22: Hoare triple {3153#true} havoc #t~ret25; {3153#true} is VALID [2020-07-18 05:00:04,941 INFO L280 TraceCheckUtils]: 23: Hoare triple {3153#true} assume true; {3153#true} is VALID [2020-07-18 05:00:04,942 INFO L275 TraceCheckUtils]: 24: Hoare quadruple {3153#true} {3154#false} #248#return; {3154#false} is VALID [2020-07-18 05:00:04,943 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:00:04,952 INFO L280 TraceCheckUtils]: 0: Hoare triple {3153#true} ~cond := #in~cond; {3153#true} is VALID [2020-07-18 05:00:04,952 INFO L280 TraceCheckUtils]: 1: Hoare triple {3153#true} assume !(0 == ~cond); {3153#true} is VALID [2020-07-18 05:00:04,952 INFO L280 TraceCheckUtils]: 2: Hoare triple {3153#true} assume true; {3153#true} is VALID [2020-07-18 05:00:04,953 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {3153#true} {3154#false} #250#return; {3154#false} is VALID [2020-07-18 05:00:04,970 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:00:04,973 INFO L280 TraceCheckUtils]: 0: Hoare triple {3260#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {3153#true} is VALID [2020-07-18 05:00:04,974 INFO L280 TraceCheckUtils]: 1: Hoare triple {3153#true} assume true; {3153#true} is VALID [2020-07-18 05:00:04,974 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {3153#true} {3154#false} #252#return; {3154#false} is VALID [2020-07-18 05:00:04,999 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:00:05,002 INFO L280 TraceCheckUtils]: 0: Hoare triple {3261#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {3153#true} is VALID [2020-07-18 05:00:05,003 INFO L280 TraceCheckUtils]: 1: Hoare triple {3153#true} ~a.base, ~a.offset := #in~a.base, #in~a.offset; {3153#true} is VALID [2020-07-18 05:00:05,003 INFO L280 TraceCheckUtils]: 2: Hoare triple {3153#true} ~i := #in~i; {3153#true} is VALID [2020-07-18 05:00:05,003 INFO L280 TraceCheckUtils]: 3: Hoare triple {3153#true} assume ~t.base == 0 && ~t.offset == 0; {3153#true} is VALID [2020-07-18 05:00:05,004 INFO L280 TraceCheckUtils]: 4: Hoare triple {3153#true} #res := ~i; {3153#true} is VALID [2020-07-18 05:00:05,004 INFO L280 TraceCheckUtils]: 5: Hoare triple {3153#true} assume true; {3153#true} is VALID [2020-07-18 05:00:05,004 INFO L275 TraceCheckUtils]: 6: Hoare quadruple {3153#true} {3154#false} #254#return; {3154#false} is VALID [2020-07-18 05:00:05,005 INFO L263 TraceCheckUtils]: 0: Hoare triple {3153#true} call ULTIMATE.init(); {3233#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 05:00:05,005 INFO L280 TraceCheckUtils]: 1: Hoare triple {3233#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {3153#true} is VALID [2020-07-18 05:00:05,006 INFO L280 TraceCheckUtils]: 2: Hoare triple {3153#true} #valid := #valid[0 := 0]; {3153#true} is VALID [2020-07-18 05:00:05,006 INFO L280 TraceCheckUtils]: 3: Hoare triple {3153#true} assume 0 < #StackHeapBarrier; {3153#true} is VALID [2020-07-18 05:00:05,006 INFO L280 TraceCheckUtils]: 4: Hoare triple {3153#true} assume true; {3153#true} is VALID [2020-07-18 05:00:05,006 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {3153#true} {3153#true} #276#return; {3153#true} is VALID [2020-07-18 05:00:05,007 INFO L263 TraceCheckUtils]: 6: Hoare triple {3153#true} call #t~ret40 := main(); {3153#true} is VALID [2020-07-18 05:00:05,008 INFO L263 TraceCheckUtils]: 7: Hoare triple {3153#true} call #t~ret39.base, #t~ret39.offset := nondet_tree(); {3234#(and (= |#valid| |old(#valid)|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-18 05:00:05,008 INFO L280 TraceCheckUtils]: 8: Hoare triple {3234#(and (= |#valid| |old(#valid)|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} assume !(0 != #t~nondet1 % 256); {3153#true} is VALID [2020-07-18 05:00:05,008 INFO L280 TraceCheckUtils]: 9: Hoare triple {3153#true} havoc #t~nondet1; {3153#true} is VALID [2020-07-18 05:00:05,009 INFO L280 TraceCheckUtils]: 10: Hoare triple {3153#true} SUMMARY for call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(12); srcloc: L26 {3235#(or (< 0 |nondet_tree_#t~malloc2.base|) (<= (+ |nondet_tree_#t~malloc2.base| 1) 0))} is VALID [2020-07-18 05:00:05,010 INFO L280 TraceCheckUtils]: 11: Hoare triple {3235#(or (< 0 |nondet_tree_#t~malloc2.base|) (<= (+ |nondet_tree_#t~malloc2.base| 1) 0))} ~n~0.base, ~n~0.offset := #t~malloc2.base, #t~malloc2.offset; {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:05,011 INFO L280 TraceCheckUtils]: 12: Hoare triple {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:05,012 INFO L280 TraceCheckUtils]: 13: Hoare triple {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} SUMMARY for call write~int(#t~nondet3, ~n~0.base, ~n~0.offset, 4); srcloc: L27-1 {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:05,012 INFO L280 TraceCheckUtils]: 14: Hoare triple {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} havoc #t~nondet3; {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:05,014 INFO L263 TraceCheckUtils]: 15: Hoare triple {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} call #t~ret4.base, #t~ret4.offset := nondet_tree(); {3234#(and (= |#valid| |old(#valid)|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-18 05:00:05,014 INFO L280 TraceCheckUtils]: 16: Hoare triple {3234#(and (= |#valid| |old(#valid)|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} assume 0 != #t~nondet1 % 256; {3153#true} is VALID [2020-07-18 05:00:05,014 INFO L280 TraceCheckUtils]: 17: Hoare triple {3153#true} havoc #t~nondet1; {3153#true} is VALID [2020-07-18 05:00:05,014 INFO L280 TraceCheckUtils]: 18: Hoare triple {3153#true} #res.base, #res.offset := 0, 0; {3153#true} is VALID [2020-07-18 05:00:05,015 INFO L280 TraceCheckUtils]: 19: Hoare triple {3153#true} assume true; {3153#true} is VALID [2020-07-18 05:00:05,016 INFO L275 TraceCheckUtils]: 20: Hoare quadruple {3153#true} {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} #242#return; {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:05,016 INFO L280 TraceCheckUtils]: 21: Hoare triple {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} SUMMARY for call write~$Pointer$(#t~ret4.base, #t~ret4.offset, ~n~0.base, 4 + ~n~0.offset, 4); srcloc: L28-1 {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:05,017 INFO L280 TraceCheckUtils]: 22: Hoare triple {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} havoc #t~ret4.base, #t~ret4.offset; {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:05,018 INFO L263 TraceCheckUtils]: 23: Hoare triple {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} call #t~ret5.base, #t~ret5.offset := nondet_tree(); {3234#(and (= |#valid| |old(#valid)|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-18 05:00:05,018 INFO L280 TraceCheckUtils]: 24: Hoare triple {3234#(and (= |#valid| |old(#valid)|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} assume 0 != #t~nondet1 % 256; {3153#true} is VALID [2020-07-18 05:00:05,019 INFO L280 TraceCheckUtils]: 25: Hoare triple {3153#true} havoc #t~nondet1; {3153#true} is VALID [2020-07-18 05:00:05,019 INFO L280 TraceCheckUtils]: 26: Hoare triple {3153#true} #res.base, #res.offset := 0, 0; {3153#true} is VALID [2020-07-18 05:00:05,019 INFO L280 TraceCheckUtils]: 27: Hoare triple {3153#true} assume true; {3153#true} is VALID [2020-07-18 05:00:05,020 INFO L275 TraceCheckUtils]: 28: Hoare quadruple {3153#true} {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} #244#return; {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:05,021 INFO L280 TraceCheckUtils]: 29: Hoare triple {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} SUMMARY for call write~$Pointer$(#t~ret5.base, #t~ret5.offset, ~n~0.base, 8 + ~n~0.offset, 4); srcloc: L29-1 {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:05,021 INFO L280 TraceCheckUtils]: 30: Hoare triple {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} havoc #t~ret5.base, #t~ret5.offset; {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:05,022 INFO L280 TraceCheckUtils]: 31: Hoare triple {3236#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} #res.base, #res.offset := ~n~0.base, ~n~0.offset; {3247#(or (<= (+ |nondet_tree_#res.base| 1) 0) (<= 1 |nondet_tree_#res.base|))} is VALID [2020-07-18 05:00:05,023 INFO L280 TraceCheckUtils]: 32: Hoare triple {3247#(or (<= (+ |nondet_tree_#res.base| 1) 0) (<= 1 |nondet_tree_#res.base|))} assume true; {3247#(or (<= (+ |nondet_tree_#res.base| 1) 0) (<= 1 |nondet_tree_#res.base|))} is VALID [2020-07-18 05:00:05,024 INFO L275 TraceCheckUtils]: 33: Hoare quadruple {3247#(or (<= (+ |nondet_tree_#res.base| 1) 0) (<= 1 |nondet_tree_#res.base|))} {3153#true} #232#return; {3186#(not (= 0 |main_#t~ret39.base|))} is VALID [2020-07-18 05:00:05,025 INFO L263 TraceCheckUtils]: 34: Hoare triple {3186#(not (= 0 |main_#t~ret39.base|))} call task(#t~ret39.base, #t~ret39.offset); {3187#(not (= |task_#in~t.base| 0))} is VALID [2020-07-18 05:00:05,025 INFO L280 TraceCheckUtils]: 35: Hoare triple {3187#(not (= |task_#in~t.base| 0))} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {3188#(not (= 0 task_~t.base))} is VALID [2020-07-18 05:00:05,026 INFO L263 TraceCheckUtils]: 36: Hoare triple {3188#(not (= 0 task_~t.base))} call #t~ret26 := min(~t.base, ~t.offset); {3153#true} is VALID [2020-07-18 05:00:05,026 INFO L280 TraceCheckUtils]: 37: Hoare triple {3153#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {3248#(= min_~n.base |min_#in~n.base|)} is VALID [2020-07-18 05:00:05,027 INFO L280 TraceCheckUtils]: 38: Hoare triple {3248#(= min_~n.base |min_#in~n.base|)} assume ~n.base == 0 && ~n.offset == 0; {3249#(= 0 |min_#in~n.base|)} is VALID [2020-07-18 05:00:05,028 INFO L280 TraceCheckUtils]: 39: Hoare triple {3249#(= 0 |min_#in~n.base|)} #res := 2147483647; {3249#(= 0 |min_#in~n.base|)} is VALID [2020-07-18 05:00:05,028 INFO L280 TraceCheckUtils]: 40: Hoare triple {3249#(= 0 |min_#in~n.base|)} assume true; {3249#(= 0 |min_#in~n.base|)} is VALID [2020-07-18 05:00:05,029 INFO L275 TraceCheckUtils]: 41: Hoare quadruple {3249#(= 0 |min_#in~n.base|)} {3188#(not (= 0 task_~t.base))} #246#return; {3154#false} is VALID [2020-07-18 05:00:05,029 INFO L280 TraceCheckUtils]: 42: Hoare triple {3154#false} assume -2147483648 <= #t~ret26 && #t~ret26 <= 2147483647; {3154#false} is VALID [2020-07-18 05:00:05,030 INFO L280 TraceCheckUtils]: 43: Hoare triple {3154#false} ~a~1 := #t~ret26; {3154#false} is VALID [2020-07-18 05:00:05,030 INFO L280 TraceCheckUtils]: 44: Hoare triple {3154#false} havoc #t~ret26; {3154#false} is VALID [2020-07-18 05:00:05,030 INFO L280 TraceCheckUtils]: 45: Hoare triple {3154#false} SUMMARY for call ~#b~1.base, ~#b~1.offset := #Ultimate.allocOnStack(4); srcloc: L77 {3154#false} is VALID [2020-07-18 05:00:05,030 INFO L263 TraceCheckUtils]: 46: Hoare triple {3154#false} call #t~ret27 := size(~t.base, ~t.offset); {3153#true} is VALID [2020-07-18 05:00:05,031 INFO L280 TraceCheckUtils]: 47: Hoare triple {3153#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {3153#true} is VALID [2020-07-18 05:00:05,031 INFO L280 TraceCheckUtils]: 48: Hoare triple {3153#true} assume !(~t.base == 0 && ~t.offset == 0); {3153#true} is VALID [2020-07-18 05:00:05,031 INFO L280 TraceCheckUtils]: 49: Hoare triple {3153#true} SUMMARY for call #t~mem22.base, #t~mem22.offset := read~$Pointer$(~t.base, 4 + ~t.offset, 4); srcloc: L72 {3153#true} is VALID [2020-07-18 05:00:05,031 INFO L263 TraceCheckUtils]: 50: Hoare triple {3153#true} call #t~ret23 := size(#t~mem22.base, #t~mem22.offset); {3153#true} is VALID [2020-07-18 05:00:05,031 INFO L280 TraceCheckUtils]: 51: Hoare triple {3153#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {3153#true} is VALID [2020-07-18 05:00:05,032 INFO L280 TraceCheckUtils]: 52: Hoare triple {3153#true} assume ~t.base == 0 && ~t.offset == 0; {3153#true} is VALID [2020-07-18 05:00:05,032 INFO L280 TraceCheckUtils]: 53: Hoare triple {3153#true} #res := 0; {3153#true} is VALID [2020-07-18 05:00:05,032 INFO L280 TraceCheckUtils]: 54: Hoare triple {3153#true} assume true; {3153#true} is VALID [2020-07-18 05:00:05,032 INFO L275 TraceCheckUtils]: 55: Hoare quadruple {3153#true} {3153#true} #272#return; {3153#true} is VALID [2020-07-18 05:00:05,033 INFO L280 TraceCheckUtils]: 56: Hoare triple {3153#true} assume -2147483648 <= #t~ret23 && #t~ret23 <= 2147483647; {3153#true} is VALID [2020-07-18 05:00:05,033 INFO L280 TraceCheckUtils]: 57: Hoare triple {3153#true} SUMMARY for call #t~mem24.base, #t~mem24.offset := read~$Pointer$(~t.base, 8 + ~t.offset, 4); srcloc: L72-3 {3153#true} is VALID [2020-07-18 05:00:05,033 INFO L263 TraceCheckUtils]: 58: Hoare triple {3153#true} call #t~ret25 := size(#t~mem24.base, #t~mem24.offset); {3153#true} is VALID [2020-07-18 05:00:05,033 INFO L280 TraceCheckUtils]: 59: Hoare triple {3153#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {3153#true} is VALID [2020-07-18 05:00:05,033 INFO L280 TraceCheckUtils]: 60: Hoare triple {3153#true} assume ~t.base == 0 && ~t.offset == 0; {3153#true} is VALID [2020-07-18 05:00:05,034 INFO L280 TraceCheckUtils]: 61: Hoare triple {3153#true} #res := 0; {3153#true} is VALID [2020-07-18 05:00:05,034 INFO L280 TraceCheckUtils]: 62: Hoare triple {3153#true} assume true; {3153#true} is VALID [2020-07-18 05:00:05,034 INFO L275 TraceCheckUtils]: 63: Hoare quadruple {3153#true} {3153#true} #274#return; {3153#true} is VALID [2020-07-18 05:00:05,034 INFO L280 TraceCheckUtils]: 64: Hoare triple {3153#true} assume -2147483648 <= #t~ret25 && #t~ret25 <= 2147483647; {3153#true} is VALID [2020-07-18 05:00:05,035 INFO L280 TraceCheckUtils]: 65: Hoare triple {3153#true} #res := 1 + (#t~ret23 + #t~ret25); {3153#true} is VALID [2020-07-18 05:00:05,035 INFO L280 TraceCheckUtils]: 66: Hoare triple {3153#true} havoc #t~ret23; {3153#true} is VALID [2020-07-18 05:00:05,035 INFO L280 TraceCheckUtils]: 67: Hoare triple {3153#true} havoc #t~mem24.base, #t~mem24.offset; {3153#true} is VALID [2020-07-18 05:00:05,035 INFO L280 TraceCheckUtils]: 68: Hoare triple {3153#true} havoc #t~mem22.base, #t~mem22.offset; {3153#true} is VALID [2020-07-18 05:00:05,035 INFO L280 TraceCheckUtils]: 69: Hoare triple {3153#true} havoc #t~ret25; {3153#true} is VALID [2020-07-18 05:00:05,036 INFO L280 TraceCheckUtils]: 70: Hoare triple {3153#true} assume true; {3153#true} is VALID [2020-07-18 05:00:05,036 INFO L275 TraceCheckUtils]: 71: Hoare quadruple {3153#true} {3154#false} #248#return; {3154#false} is VALID [2020-07-18 05:00:05,036 INFO L280 TraceCheckUtils]: 72: Hoare triple {3154#false} assume -2147483648 <= #t~ret27 && #t~ret27 <= 2147483647; {3154#false} is VALID [2020-07-18 05:00:05,036 INFO L280 TraceCheckUtils]: 73: Hoare triple {3154#false} ~n~1 := #t~ret27; {3154#false} is VALID [2020-07-18 05:00:05,036 INFO L280 TraceCheckUtils]: 74: Hoare triple {3154#false} havoc #t~ret27; {3154#false} is VALID [2020-07-18 05:00:05,037 INFO L263 TraceCheckUtils]: 75: Hoare triple {3154#false} call assume_cycle_if_not((if 0 != ~n~1 then 1 else 0)); {3153#true} is VALID [2020-07-18 05:00:05,037 INFO L280 TraceCheckUtils]: 76: Hoare triple {3153#true} ~cond := #in~cond; {3153#true} is VALID [2020-07-18 05:00:05,037 INFO L280 TraceCheckUtils]: 77: Hoare triple {3153#true} assume !(0 == ~cond); {3153#true} is VALID [2020-07-18 05:00:05,037 INFO L280 TraceCheckUtils]: 78: Hoare triple {3153#true} assume true; {3153#true} is VALID [2020-07-18 05:00:05,037 INFO L275 TraceCheckUtils]: 79: Hoare quadruple {3153#true} {3154#false} #250#return; {3154#false} is VALID [2020-07-18 05:00:05,038 INFO L280 TraceCheckUtils]: 80: Hoare triple {3154#false} SUMMARY for call #t~malloc28.base, #t~malloc28.offset := #Ultimate.allocOnHeap(4 * ~n~1); srcloc: L80-1 {3154#false} is VALID [2020-07-18 05:00:05,038 INFO L263 TraceCheckUtils]: 81: Hoare triple {3154#false} call #Ultimate.meminit(#t~malloc28.base, #t~malloc28.offset, ~n~1, 4, 4 * ~n~1); {3260#(= |#memory_int| |old(#memory_int)|)} is VALID [2020-07-18 05:00:05,038 INFO L280 TraceCheckUtils]: 82: Hoare triple {3260#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {3153#true} is VALID [2020-07-18 05:00:05,038 INFO L280 TraceCheckUtils]: 83: Hoare triple {3153#true} assume true; {3153#true} is VALID [2020-07-18 05:00:05,039 INFO L275 TraceCheckUtils]: 84: Hoare quadruple {3153#true} {3154#false} #252#return; {3154#false} is VALID [2020-07-18 05:00:05,039 INFO L280 TraceCheckUtils]: 85: Hoare triple {3154#false} ~x~0.base, ~x~0.offset := #t~malloc28.base, #t~malloc28.offset; {3154#false} is VALID [2020-07-18 05:00:05,039 INFO L263 TraceCheckUtils]: 86: Hoare triple {3154#false} call #t~ret29 := tree_inorder(~t.base, ~t.offset, ~x~0.base, ~x~0.offset, ~n~1); {3261#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-18 05:00:05,039 INFO L280 TraceCheckUtils]: 87: Hoare triple {3261#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {3153#true} is VALID [2020-07-18 05:00:05,040 INFO L280 TraceCheckUtils]: 88: Hoare triple {3153#true} ~a.base, ~a.offset := #in~a.base, #in~a.offset; {3153#true} is VALID [2020-07-18 05:00:05,040 INFO L280 TraceCheckUtils]: 89: Hoare triple {3153#true} ~i := #in~i; {3153#true} is VALID [2020-07-18 05:00:05,040 INFO L280 TraceCheckUtils]: 90: Hoare triple {3153#true} assume ~t.base == 0 && ~t.offset == 0; {3153#true} is VALID [2020-07-18 05:00:05,040 INFO L280 TraceCheckUtils]: 91: Hoare triple {3153#true} #res := ~i; {3153#true} is VALID [2020-07-18 05:00:05,040 INFO L280 TraceCheckUtils]: 92: Hoare triple {3153#true} assume true; {3153#true} is VALID [2020-07-18 05:00:05,041 INFO L275 TraceCheckUtils]: 93: Hoare quadruple {3153#true} {3154#false} #254#return; {3154#false} is VALID [2020-07-18 05:00:05,041 INFO L280 TraceCheckUtils]: 94: Hoare triple {3154#false} assume -2147483648 <= #t~ret29 && #t~ret29 <= 2147483647; {3154#false} is VALID [2020-07-18 05:00:05,041 INFO L280 TraceCheckUtils]: 95: Hoare triple {3154#false} havoc #t~ret29; {3154#false} is VALID [2020-07-18 05:00:05,041 INFO L280 TraceCheckUtils]: 96: Hoare triple {3154#false} SUMMARY for call #t~mem30 := read~int(~x~0.base, ~x~0.offset, 4); srcloc: L83 {3154#false} is VALID [2020-07-18 05:00:05,041 INFO L263 TraceCheckUtils]: 97: Hoare triple {3154#false} call __VERIFIER_assert((if ~a~1 == #t~mem30 then 1 else 0)); {3154#false} is VALID [2020-07-18 05:00:05,042 INFO L280 TraceCheckUtils]: 98: Hoare triple {3154#false} ~cond := #in~cond; {3154#false} is VALID [2020-07-18 05:00:05,042 INFO L280 TraceCheckUtils]: 99: Hoare triple {3154#false} assume 0 == ~cond; {3154#false} is VALID [2020-07-18 05:00:05,042 INFO L280 TraceCheckUtils]: 100: Hoare triple {3154#false} assume !false; {3154#false} is VALID [2020-07-18 05:00:05,054 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 20 trivial. 0 not checked. [2020-07-18 05:00:05,054 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [942775452] [2020-07-18 05:00:05,055 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-18 05:00:05,055 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2020-07-18 05:00:05,055 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [615493947] [2020-07-18 05:00:05,056 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 101 [2020-07-18 05:00:05,056 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 05:00:05,056 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states. [2020-07-18 05:00:05,157 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 91 edges. 91 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:00:05,157 INFO L459 AbstractCegarLoop]: Interpolant automaton has 14 states [2020-07-18 05:00:05,157 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 05:00:05,157 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2020-07-18 05:00:05,158 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=28, Invalid=154, Unknown=0, NotChecked=0, Total=182 [2020-07-18 05:00:05,158 INFO L87 Difference]: Start difference. First operand 182 states and 207 transitions. Second operand 14 states. [2020-07-18 05:00:10,331 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:00:10,331 INFO L93 Difference]: Finished difference Result 320 states and 366 transitions. [2020-07-18 05:00:10,331 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2020-07-18 05:00:10,331 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 101 [2020-07-18 05:00:10,332 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 05:00:10,332 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2020-07-18 05:00:10,342 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 358 transitions. [2020-07-18 05:00:10,342 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2020-07-18 05:00:10,351 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 358 transitions. [2020-07-18 05:00:10,352 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 358 transitions. [2020-07-18 05:00:10,832 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 358 edges. 358 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:00:10,840 INFO L225 Difference]: With dead ends: 320 [2020-07-18 05:00:10,840 INFO L226 Difference]: Without dead ends: 194 [2020-07-18 05:00:10,841 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 44 GetRequests, 21 SyntacticMatches, 0 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 50 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=106, Invalid=494, Unknown=0, NotChecked=0, Total=600 [2020-07-18 05:00:10,842 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 194 states. [2020-07-18 05:00:11,233 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 194 to 184. [2020-07-18 05:00:11,234 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 05:00:11,234 INFO L82 GeneralOperation]: Start isEquivalent. First operand 194 states. Second operand 184 states. [2020-07-18 05:00:11,234 INFO L74 IsIncluded]: Start isIncluded. First operand 194 states. Second operand 184 states. [2020-07-18 05:00:11,234 INFO L87 Difference]: Start difference. First operand 194 states. Second operand 184 states. [2020-07-18 05:00:11,245 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:00:11,246 INFO L93 Difference]: Finished difference Result 194 states and 223 transitions. [2020-07-18 05:00:11,246 INFO L276 IsEmpty]: Start isEmpty. Operand 194 states and 223 transitions. [2020-07-18 05:00:11,248 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 05:00:11,248 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 05:00:11,248 INFO L74 IsIncluded]: Start isIncluded. First operand 184 states. Second operand 194 states. [2020-07-18 05:00:11,248 INFO L87 Difference]: Start difference. First operand 184 states. Second operand 194 states. [2020-07-18 05:00:11,258 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:00:11,258 INFO L93 Difference]: Finished difference Result 194 states and 223 transitions. [2020-07-18 05:00:11,258 INFO L276 IsEmpty]: Start isEmpty. Operand 194 states and 223 transitions. [2020-07-18 05:00:11,259 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 05:00:11,260 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 05:00:11,260 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 05:00:11,260 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 05:00:11,260 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 184 states. [2020-07-18 05:00:11,268 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 184 states to 184 states and 210 transitions. [2020-07-18 05:00:11,268 INFO L78 Accepts]: Start accepts. Automaton has 184 states and 210 transitions. Word has length 101 [2020-07-18 05:00:11,268 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 05:00:11,268 INFO L479 AbstractCegarLoop]: Abstraction has 184 states and 210 transitions. [2020-07-18 05:00:11,268 INFO L480 AbstractCegarLoop]: Interpolant automaton has 14 states. [2020-07-18 05:00:11,269 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 184 states and 210 transitions. [2020-07-18 05:00:11,605 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 210 edges. 210 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:00:11,605 INFO L276 IsEmpty]: Start isEmpty. Operand 184 states and 210 transitions. [2020-07-18 05:00:11,608 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 128 [2020-07-18 05:00:11,608 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 05:00:11,608 INFO L422 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 2, 2, 2, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-18 05:00:11,609 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2020-07-18 05:00:11,609 INFO L427 AbstractCegarLoop]: === Iteration 4 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 05:00:11,609 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 05:00:11,609 INFO L82 PathProgramCache]: Analyzing trace with hash -1431902021, now seen corresponding path program 1 times [2020-07-18 05:00:11,610 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 05:00:11,610 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1473037022] [2020-07-18 05:00:11,610 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 05:00:11,644 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:00:11,718 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:00:11,724 INFO L280 TraceCheckUtils]: 0: Hoare triple {4790#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {4684#true} is VALID [2020-07-18 05:00:11,725 INFO L280 TraceCheckUtils]: 1: Hoare triple {4684#true} #valid := #valid[0 := 0]; {4684#true} is VALID [2020-07-18 05:00:11,725 INFO L280 TraceCheckUtils]: 2: Hoare triple {4684#true} assume 0 < #StackHeapBarrier; {4684#true} is VALID [2020-07-18 05:00:11,725 INFO L280 TraceCheckUtils]: 3: Hoare triple {4684#true} assume true; {4684#true} is VALID [2020-07-18 05:00:11,725 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {4684#true} {4684#true} #276#return; {4684#true} is VALID [2020-07-18 05:00:11,750 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:00:11,837 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:00:11,857 INFO L280 TraceCheckUtils]: 0: Hoare triple {4791#(and (= |#valid| |old(#valid)|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} assume 0 != #t~nondet1 % 256; {4684#true} is VALID [2020-07-18 05:00:11,857 INFO L280 TraceCheckUtils]: 1: Hoare triple {4684#true} havoc #t~nondet1; {4684#true} is VALID [2020-07-18 05:00:11,857 INFO L280 TraceCheckUtils]: 2: Hoare triple {4684#true} #res.base, #res.offset := 0, 0; {4684#true} is VALID [2020-07-18 05:00:11,858 INFO L280 TraceCheckUtils]: 3: Hoare triple {4684#true} assume true; {4684#true} is VALID [2020-07-18 05:00:11,858 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {4684#true} {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} #242#return; {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:11,860 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:00:11,865 INFO L280 TraceCheckUtils]: 0: Hoare triple {4791#(and (= |#valid| |old(#valid)|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} assume 0 != #t~nondet1 % 256; {4684#true} is VALID [2020-07-18 05:00:11,865 INFO L280 TraceCheckUtils]: 1: Hoare triple {4684#true} havoc #t~nondet1; {4684#true} is VALID [2020-07-18 05:00:11,865 INFO L280 TraceCheckUtils]: 2: Hoare triple {4684#true} #res.base, #res.offset := 0, 0; {4684#true} is VALID [2020-07-18 05:00:11,865 INFO L280 TraceCheckUtils]: 3: Hoare triple {4684#true} assume true; {4684#true} is VALID [2020-07-18 05:00:11,866 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {4684#true} {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} #244#return; {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:11,866 INFO L280 TraceCheckUtils]: 0: Hoare triple {4791#(and (= |#valid| |old(#valid)|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} assume !(0 != #t~nondet1 % 256); {4684#true} is VALID [2020-07-18 05:00:11,866 INFO L280 TraceCheckUtils]: 1: Hoare triple {4684#true} havoc #t~nondet1; {4684#true} is VALID [2020-07-18 05:00:11,867 INFO L280 TraceCheckUtils]: 2: Hoare triple {4684#true} SUMMARY for call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(12); srcloc: L26 {4792#(or (< 0 |nondet_tree_#t~malloc2.base|) (<= (+ |nondet_tree_#t~malloc2.base| 1) 0))} is VALID [2020-07-18 05:00:11,868 INFO L280 TraceCheckUtils]: 3: Hoare triple {4792#(or (< 0 |nondet_tree_#t~malloc2.base|) (<= (+ |nondet_tree_#t~malloc2.base| 1) 0))} ~n~0.base, ~n~0.offset := #t~malloc2.base, #t~malloc2.offset; {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:11,868 INFO L280 TraceCheckUtils]: 4: Hoare triple {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:11,869 INFO L280 TraceCheckUtils]: 5: Hoare triple {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} SUMMARY for call write~int(#t~nondet3, ~n~0.base, ~n~0.offset, 4); srcloc: L27-1 {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:11,870 INFO L280 TraceCheckUtils]: 6: Hoare triple {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} havoc #t~nondet3; {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:11,870 INFO L263 TraceCheckUtils]: 7: Hoare triple {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} call #t~ret4.base, #t~ret4.offset := nondet_tree(); {4791#(and (= |#valid| |old(#valid)|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-18 05:00:11,870 INFO L280 TraceCheckUtils]: 8: Hoare triple {4791#(and (= |#valid| |old(#valid)|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} assume 0 != #t~nondet1 % 256; {4684#true} is VALID [2020-07-18 05:00:11,871 INFO L280 TraceCheckUtils]: 9: Hoare triple {4684#true} havoc #t~nondet1; {4684#true} is VALID [2020-07-18 05:00:11,871 INFO L280 TraceCheckUtils]: 10: Hoare triple {4684#true} #res.base, #res.offset := 0, 0; {4684#true} is VALID [2020-07-18 05:00:11,871 INFO L280 TraceCheckUtils]: 11: Hoare triple {4684#true} assume true; {4684#true} is VALID [2020-07-18 05:00:11,871 INFO L275 TraceCheckUtils]: 12: Hoare quadruple {4684#true} {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} #242#return; {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:11,872 INFO L280 TraceCheckUtils]: 13: Hoare triple {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} SUMMARY for call write~$Pointer$(#t~ret4.base, #t~ret4.offset, ~n~0.base, 4 + ~n~0.offset, 4); srcloc: L28-1 {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:11,872 INFO L280 TraceCheckUtils]: 14: Hoare triple {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} havoc #t~ret4.base, #t~ret4.offset; {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:11,873 INFO L263 TraceCheckUtils]: 15: Hoare triple {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} call #t~ret5.base, #t~ret5.offset := nondet_tree(); {4791#(and (= |#valid| |old(#valid)|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-18 05:00:11,873 INFO L280 TraceCheckUtils]: 16: Hoare triple {4791#(and (= |#valid| |old(#valid)|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} assume 0 != #t~nondet1 % 256; {4684#true} is VALID [2020-07-18 05:00:11,873 INFO L280 TraceCheckUtils]: 17: Hoare triple {4684#true} havoc #t~nondet1; {4684#true} is VALID [2020-07-18 05:00:11,873 INFO L280 TraceCheckUtils]: 18: Hoare triple {4684#true} #res.base, #res.offset := 0, 0; {4684#true} is VALID [2020-07-18 05:00:11,873 INFO L280 TraceCheckUtils]: 19: Hoare triple {4684#true} assume true; {4684#true} is VALID [2020-07-18 05:00:11,874 INFO L275 TraceCheckUtils]: 20: Hoare quadruple {4684#true} {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} #244#return; {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:11,874 INFO L280 TraceCheckUtils]: 21: Hoare triple {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} SUMMARY for call write~$Pointer$(#t~ret5.base, #t~ret5.offset, ~n~0.base, 8 + ~n~0.offset, 4); srcloc: L29-1 {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:11,875 INFO L280 TraceCheckUtils]: 22: Hoare triple {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} havoc #t~ret5.base, #t~ret5.offset; {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:11,875 INFO L280 TraceCheckUtils]: 23: Hoare triple {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} #res.base, #res.offset := ~n~0.base, ~n~0.offset; {4804#(or (<= (+ |nondet_tree_#res.base| 1) 0) (<= 1 |nondet_tree_#res.base|))} is VALID [2020-07-18 05:00:11,876 INFO L280 TraceCheckUtils]: 24: Hoare triple {4804#(or (<= (+ |nondet_tree_#res.base| 1) 0) (<= 1 |nondet_tree_#res.base|))} assume true; {4804#(or (<= (+ |nondet_tree_#res.base| 1) 0) (<= 1 |nondet_tree_#res.base|))} is VALID [2020-07-18 05:00:11,876 INFO L275 TraceCheckUtils]: 25: Hoare quadruple {4804#(or (<= (+ |nondet_tree_#res.base| 1) 0) (<= 1 |nondet_tree_#res.base|))} {4684#true} #232#return; {4717#(not (= 0 |main_#t~ret39.base|))} is VALID [2020-07-18 05:00:11,882 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:00:11,890 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:00:11,893 INFO L280 TraceCheckUtils]: 0: Hoare triple {4684#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {4684#true} is VALID [2020-07-18 05:00:11,894 INFO L280 TraceCheckUtils]: 1: Hoare triple {4684#true} assume ~n.base == 0 && ~n.offset == 0; {4684#true} is VALID [2020-07-18 05:00:11,894 INFO L280 TraceCheckUtils]: 2: Hoare triple {4684#true} #res := 2147483647; {4684#true} is VALID [2020-07-18 05:00:11,894 INFO L280 TraceCheckUtils]: 3: Hoare triple {4684#true} assume true; {4684#true} is VALID [2020-07-18 05:00:11,894 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {4684#true} {4684#true} #238#return; {4684#true} is VALID [2020-07-18 05:00:11,895 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:00:11,898 INFO L280 TraceCheckUtils]: 0: Hoare triple {4684#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {4684#true} is VALID [2020-07-18 05:00:11,898 INFO L280 TraceCheckUtils]: 1: Hoare triple {4684#true} assume ~n.base == 0 && ~n.offset == 0; {4684#true} is VALID [2020-07-18 05:00:11,898 INFO L280 TraceCheckUtils]: 2: Hoare triple {4684#true} #res := 2147483647; {4684#true} is VALID [2020-07-18 05:00:11,899 INFO L280 TraceCheckUtils]: 3: Hoare triple {4684#true} assume true; {4684#true} is VALID [2020-07-18 05:00:11,899 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {4684#true} {4684#true} #240#return; {4684#true} is VALID [2020-07-18 05:00:11,899 INFO L280 TraceCheckUtils]: 0: Hoare triple {4684#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {4684#true} is VALID [2020-07-18 05:00:11,899 INFO L280 TraceCheckUtils]: 1: Hoare triple {4684#true} assume !(~n.base == 0 && ~n.offset == 0); {4684#true} is VALID [2020-07-18 05:00:11,900 INFO L280 TraceCheckUtils]: 2: Hoare triple {4684#true} SUMMARY for call #t~mem6 := read~int(~n.base, ~n.offset, 4); srcloc: L38 {4684#true} is VALID [2020-07-18 05:00:11,900 INFO L280 TraceCheckUtils]: 3: Hoare triple {4684#true} ~a~0 := #t~mem6; {4684#true} is VALID [2020-07-18 05:00:11,900 INFO L280 TraceCheckUtils]: 4: Hoare triple {4684#true} havoc #t~mem6; {4684#true} is VALID [2020-07-18 05:00:11,900 INFO L280 TraceCheckUtils]: 5: Hoare triple {4684#true} SUMMARY for call #t~mem7.base, #t~mem7.offset := read~$Pointer$(~n.base, 4 + ~n.offset, 4); srcloc: L39 {4684#true} is VALID [2020-07-18 05:00:11,900 INFO L263 TraceCheckUtils]: 6: Hoare triple {4684#true} call #t~ret8 := min(#t~mem7.base, #t~mem7.offset); {4684#true} is VALID [2020-07-18 05:00:11,901 INFO L280 TraceCheckUtils]: 7: Hoare triple {4684#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {4684#true} is VALID [2020-07-18 05:00:11,901 INFO L280 TraceCheckUtils]: 8: Hoare triple {4684#true} assume ~n.base == 0 && ~n.offset == 0; {4684#true} is VALID [2020-07-18 05:00:11,901 INFO L280 TraceCheckUtils]: 9: Hoare triple {4684#true} #res := 2147483647; {4684#true} is VALID [2020-07-18 05:00:11,901 INFO L280 TraceCheckUtils]: 10: Hoare triple {4684#true} assume true; {4684#true} is VALID [2020-07-18 05:00:11,901 INFO L275 TraceCheckUtils]: 11: Hoare quadruple {4684#true} {4684#true} #238#return; {4684#true} is VALID [2020-07-18 05:00:11,902 INFO L280 TraceCheckUtils]: 12: Hoare triple {4684#true} assume -2147483648 <= #t~ret8 && #t~ret8 <= 2147483647; {4684#true} is VALID [2020-07-18 05:00:11,902 INFO L280 TraceCheckUtils]: 13: Hoare triple {4684#true} ~b~0 := #t~ret8; {4684#true} is VALID [2020-07-18 05:00:11,902 INFO L280 TraceCheckUtils]: 14: Hoare triple {4684#true} havoc #t~mem7.base, #t~mem7.offset; {4684#true} is VALID [2020-07-18 05:00:11,902 INFO L280 TraceCheckUtils]: 15: Hoare triple {4684#true} havoc #t~ret8; {4684#true} is VALID [2020-07-18 05:00:11,902 INFO L280 TraceCheckUtils]: 16: Hoare triple {4684#true} SUMMARY for call #t~mem9.base, #t~mem9.offset := read~$Pointer$(~n.base, 8 + ~n.offset, 4); srcloc: L40 {4684#true} is VALID [2020-07-18 05:00:11,903 INFO L263 TraceCheckUtils]: 17: Hoare triple {4684#true} call #t~ret10 := min(#t~mem9.base, #t~mem9.offset); {4684#true} is VALID [2020-07-18 05:00:11,903 INFO L280 TraceCheckUtils]: 18: Hoare triple {4684#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {4684#true} is VALID [2020-07-18 05:00:11,903 INFO L280 TraceCheckUtils]: 19: Hoare triple {4684#true} assume ~n.base == 0 && ~n.offset == 0; {4684#true} is VALID [2020-07-18 05:00:11,903 INFO L280 TraceCheckUtils]: 20: Hoare triple {4684#true} #res := 2147483647; {4684#true} is VALID [2020-07-18 05:00:11,903 INFO L280 TraceCheckUtils]: 21: Hoare triple {4684#true} assume true; {4684#true} is VALID [2020-07-18 05:00:11,904 INFO L275 TraceCheckUtils]: 22: Hoare quadruple {4684#true} {4684#true} #240#return; {4684#true} is VALID [2020-07-18 05:00:11,904 INFO L280 TraceCheckUtils]: 23: Hoare triple {4684#true} assume -2147483648 <= #t~ret10 && #t~ret10 <= 2147483647; {4684#true} is VALID [2020-07-18 05:00:11,904 INFO L280 TraceCheckUtils]: 24: Hoare triple {4684#true} ~c~0 := #t~ret10; {4684#true} is VALID [2020-07-18 05:00:11,904 INFO L280 TraceCheckUtils]: 25: Hoare triple {4684#true} havoc #t~ret10; {4684#true} is VALID [2020-07-18 05:00:11,905 INFO L280 TraceCheckUtils]: 26: Hoare triple {4684#true} havoc #t~mem9.base, #t~mem9.offset; {4684#true} is VALID [2020-07-18 05:00:11,905 INFO L280 TraceCheckUtils]: 27: Hoare triple {4684#true} assume ~b~0 <= ~a~0 && ~b~0 <= ~c~0; {4684#true} is VALID [2020-07-18 05:00:11,905 INFO L280 TraceCheckUtils]: 28: Hoare triple {4684#true} #res := ~b~0; {4684#true} is VALID [2020-07-18 05:00:11,905 INFO L280 TraceCheckUtils]: 29: Hoare triple {4684#true} assume true; {4684#true} is VALID [2020-07-18 05:00:11,920 INFO L275 TraceCheckUtils]: 30: Hoare quadruple {4684#true} {4719#(not (= 0 task_~t.base))} #246#return; {4719#(not (= 0 task_~t.base))} is VALID [2020-07-18 05:00:11,924 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:00:11,937 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:00:11,949 INFO L280 TraceCheckUtils]: 0: Hoare triple {4684#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {4684#true} is VALID [2020-07-18 05:00:11,949 INFO L280 TraceCheckUtils]: 1: Hoare triple {4684#true} assume ~t.base == 0 && ~t.offset == 0; {4684#true} is VALID [2020-07-18 05:00:11,950 INFO L280 TraceCheckUtils]: 2: Hoare triple {4684#true} #res := 0; {4684#true} is VALID [2020-07-18 05:00:11,950 INFO L280 TraceCheckUtils]: 3: Hoare triple {4684#true} assume true; {4684#true} is VALID [2020-07-18 05:00:11,950 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {4684#true} {4684#true} #272#return; {4684#true} is VALID [2020-07-18 05:00:11,951 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:00:11,956 INFO L280 TraceCheckUtils]: 0: Hoare triple {4684#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {4684#true} is VALID [2020-07-18 05:00:11,956 INFO L280 TraceCheckUtils]: 1: Hoare triple {4684#true} assume ~t.base == 0 && ~t.offset == 0; {4684#true} is VALID [2020-07-18 05:00:11,956 INFO L280 TraceCheckUtils]: 2: Hoare triple {4684#true} #res := 0; {4684#true} is VALID [2020-07-18 05:00:11,956 INFO L280 TraceCheckUtils]: 3: Hoare triple {4684#true} assume true; {4684#true} is VALID [2020-07-18 05:00:11,957 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {4684#true} {4684#true} #274#return; {4684#true} is VALID [2020-07-18 05:00:11,957 INFO L280 TraceCheckUtils]: 0: Hoare triple {4684#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {4684#true} is VALID [2020-07-18 05:00:11,957 INFO L280 TraceCheckUtils]: 1: Hoare triple {4684#true} assume !(~t.base == 0 && ~t.offset == 0); {4684#true} is VALID [2020-07-18 05:00:11,957 INFO L280 TraceCheckUtils]: 2: Hoare triple {4684#true} SUMMARY for call #t~mem22.base, #t~mem22.offset := read~$Pointer$(~t.base, 4 + ~t.offset, 4); srcloc: L72 {4684#true} is VALID [2020-07-18 05:00:11,958 INFO L263 TraceCheckUtils]: 3: Hoare triple {4684#true} call #t~ret23 := size(#t~mem22.base, #t~mem22.offset); {4684#true} is VALID [2020-07-18 05:00:11,958 INFO L280 TraceCheckUtils]: 4: Hoare triple {4684#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {4684#true} is VALID [2020-07-18 05:00:11,958 INFO L280 TraceCheckUtils]: 5: Hoare triple {4684#true} assume ~t.base == 0 && ~t.offset == 0; {4684#true} is VALID [2020-07-18 05:00:11,958 INFO L280 TraceCheckUtils]: 6: Hoare triple {4684#true} #res := 0; {4684#true} is VALID [2020-07-18 05:00:11,959 INFO L280 TraceCheckUtils]: 7: Hoare triple {4684#true} assume true; {4684#true} is VALID [2020-07-18 05:00:11,959 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {4684#true} {4684#true} #272#return; {4684#true} is VALID [2020-07-18 05:00:11,959 INFO L280 TraceCheckUtils]: 9: Hoare triple {4684#true} assume -2147483648 <= #t~ret23 && #t~ret23 <= 2147483647; {4684#true} is VALID [2020-07-18 05:00:11,960 INFO L280 TraceCheckUtils]: 10: Hoare triple {4684#true} SUMMARY for call #t~mem24.base, #t~mem24.offset := read~$Pointer$(~t.base, 8 + ~t.offset, 4); srcloc: L72-3 {4684#true} is VALID [2020-07-18 05:00:11,960 INFO L263 TraceCheckUtils]: 11: Hoare triple {4684#true} call #t~ret25 := size(#t~mem24.base, #t~mem24.offset); {4684#true} is VALID [2020-07-18 05:00:11,960 INFO L280 TraceCheckUtils]: 12: Hoare triple {4684#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {4684#true} is VALID [2020-07-18 05:00:11,960 INFO L280 TraceCheckUtils]: 13: Hoare triple {4684#true} assume ~t.base == 0 && ~t.offset == 0; {4684#true} is VALID [2020-07-18 05:00:11,961 INFO L280 TraceCheckUtils]: 14: Hoare triple {4684#true} #res := 0; {4684#true} is VALID [2020-07-18 05:00:11,961 INFO L280 TraceCheckUtils]: 15: Hoare triple {4684#true} assume true; {4684#true} is VALID [2020-07-18 05:00:11,961 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {4684#true} {4684#true} #274#return; {4684#true} is VALID [2020-07-18 05:00:11,962 INFO L280 TraceCheckUtils]: 17: Hoare triple {4684#true} assume -2147483648 <= #t~ret25 && #t~ret25 <= 2147483647; {4684#true} is VALID [2020-07-18 05:00:11,962 INFO L280 TraceCheckUtils]: 18: Hoare triple {4684#true} #res := 1 + (#t~ret23 + #t~ret25); {4684#true} is VALID [2020-07-18 05:00:11,962 INFO L280 TraceCheckUtils]: 19: Hoare triple {4684#true} havoc #t~ret23; {4684#true} is VALID [2020-07-18 05:00:11,962 INFO L280 TraceCheckUtils]: 20: Hoare triple {4684#true} havoc #t~mem24.base, #t~mem24.offset; {4684#true} is VALID [2020-07-18 05:00:11,963 INFO L280 TraceCheckUtils]: 21: Hoare triple {4684#true} havoc #t~mem22.base, #t~mem22.offset; {4684#true} is VALID [2020-07-18 05:00:11,963 INFO L280 TraceCheckUtils]: 22: Hoare triple {4684#true} havoc #t~ret25; {4684#true} is VALID [2020-07-18 05:00:11,963 INFO L280 TraceCheckUtils]: 23: Hoare triple {4684#true} assume true; {4684#true} is VALID [2020-07-18 05:00:11,965 INFO L275 TraceCheckUtils]: 24: Hoare quadruple {4684#true} {4719#(not (= 0 task_~t.base))} #248#return; {4719#(not (= 0 task_~t.base))} is VALID [2020-07-18 05:00:11,967 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:00:11,970 INFO L280 TraceCheckUtils]: 0: Hoare triple {4684#true} ~cond := #in~cond; {4684#true} is VALID [2020-07-18 05:00:11,971 INFO L280 TraceCheckUtils]: 1: Hoare triple {4684#true} assume !(0 == ~cond); {4684#true} is VALID [2020-07-18 05:00:11,971 INFO L280 TraceCheckUtils]: 2: Hoare triple {4684#true} assume true; {4684#true} is VALID [2020-07-18 05:00:11,972 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {4684#true} {4719#(not (= 0 task_~t.base))} #250#return; {4719#(not (= 0 task_~t.base))} is VALID [2020-07-18 05:00:11,986 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:00:11,990 INFO L280 TraceCheckUtils]: 0: Hoare triple {4825#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {4684#true} is VALID [2020-07-18 05:00:11,990 INFO L280 TraceCheckUtils]: 1: Hoare triple {4684#true} assume true; {4684#true} is VALID [2020-07-18 05:00:11,992 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {4684#true} {4719#(not (= 0 task_~t.base))} #252#return; {4719#(not (= 0 task_~t.base))} is VALID [2020-07-18 05:00:12,014 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:00:12,053 INFO L280 TraceCheckUtils]: 0: Hoare triple {4826#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {4827#(= |tree_inorder_#in~t.base| tree_inorder_~t.base)} is VALID [2020-07-18 05:00:12,053 INFO L280 TraceCheckUtils]: 1: Hoare triple {4827#(= |tree_inorder_#in~t.base| tree_inorder_~t.base)} ~a.base, ~a.offset := #in~a.base, #in~a.offset; {4827#(= |tree_inorder_#in~t.base| tree_inorder_~t.base)} is VALID [2020-07-18 05:00:12,054 INFO L280 TraceCheckUtils]: 2: Hoare triple {4827#(= |tree_inorder_#in~t.base| tree_inorder_~t.base)} ~i := #in~i; {4827#(= |tree_inorder_#in~t.base| tree_inorder_~t.base)} is VALID [2020-07-18 05:00:12,054 INFO L280 TraceCheckUtils]: 3: Hoare triple {4827#(= |tree_inorder_#in~t.base| tree_inorder_~t.base)} assume ~t.base == 0 && ~t.offset == 0; {4828#(= 0 |tree_inorder_#in~t.base|)} is VALID [2020-07-18 05:00:12,055 INFO L280 TraceCheckUtils]: 4: Hoare triple {4828#(= 0 |tree_inorder_#in~t.base|)} #res := ~i; {4828#(= 0 |tree_inorder_#in~t.base|)} is VALID [2020-07-18 05:00:12,055 INFO L280 TraceCheckUtils]: 5: Hoare triple {4828#(= 0 |tree_inorder_#in~t.base|)} assume true; {4828#(= 0 |tree_inorder_#in~t.base|)} is VALID [2020-07-18 05:00:12,057 INFO L275 TraceCheckUtils]: 6: Hoare quadruple {4828#(= 0 |tree_inorder_#in~t.base|)} {4719#(not (= 0 task_~t.base))} #254#return; {4685#false} is VALID [2020-07-18 05:00:12,058 INFO L263 TraceCheckUtils]: 0: Hoare triple {4684#true} call ULTIMATE.init(); {4790#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 05:00:12,058 INFO L280 TraceCheckUtils]: 1: Hoare triple {4790#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {4684#true} is VALID [2020-07-18 05:00:12,058 INFO L280 TraceCheckUtils]: 2: Hoare triple {4684#true} #valid := #valid[0 := 0]; {4684#true} is VALID [2020-07-18 05:00:12,058 INFO L280 TraceCheckUtils]: 3: Hoare triple {4684#true} assume 0 < #StackHeapBarrier; {4684#true} is VALID [2020-07-18 05:00:12,058 INFO L280 TraceCheckUtils]: 4: Hoare triple {4684#true} assume true; {4684#true} is VALID [2020-07-18 05:00:12,058 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {4684#true} {4684#true} #276#return; {4684#true} is VALID [2020-07-18 05:00:12,059 INFO L263 TraceCheckUtils]: 6: Hoare triple {4684#true} call #t~ret40 := main(); {4684#true} is VALID [2020-07-18 05:00:12,059 INFO L263 TraceCheckUtils]: 7: Hoare triple {4684#true} call #t~ret39.base, #t~ret39.offset := nondet_tree(); {4791#(and (= |#valid| |old(#valid)|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-18 05:00:12,060 INFO L280 TraceCheckUtils]: 8: Hoare triple {4791#(and (= |#valid| |old(#valid)|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} assume !(0 != #t~nondet1 % 256); {4684#true} is VALID [2020-07-18 05:00:12,060 INFO L280 TraceCheckUtils]: 9: Hoare triple {4684#true} havoc #t~nondet1; {4684#true} is VALID [2020-07-18 05:00:12,061 INFO L280 TraceCheckUtils]: 10: Hoare triple {4684#true} SUMMARY for call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(12); srcloc: L26 {4792#(or (< 0 |nondet_tree_#t~malloc2.base|) (<= (+ |nondet_tree_#t~malloc2.base| 1) 0))} is VALID [2020-07-18 05:00:12,062 INFO L280 TraceCheckUtils]: 11: Hoare triple {4792#(or (< 0 |nondet_tree_#t~malloc2.base|) (<= (+ |nondet_tree_#t~malloc2.base| 1) 0))} ~n~0.base, ~n~0.offset := #t~malloc2.base, #t~malloc2.offset; {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:12,062 INFO L280 TraceCheckUtils]: 12: Hoare triple {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:12,063 INFO L280 TraceCheckUtils]: 13: Hoare triple {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} SUMMARY for call write~int(#t~nondet3, ~n~0.base, ~n~0.offset, 4); srcloc: L27-1 {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:12,063 INFO L280 TraceCheckUtils]: 14: Hoare triple {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} havoc #t~nondet3; {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:12,064 INFO L263 TraceCheckUtils]: 15: Hoare triple {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} call #t~ret4.base, #t~ret4.offset := nondet_tree(); {4791#(and (= |#valid| |old(#valid)|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-18 05:00:12,064 INFO L280 TraceCheckUtils]: 16: Hoare triple {4791#(and (= |#valid| |old(#valid)|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} assume 0 != #t~nondet1 % 256; {4684#true} is VALID [2020-07-18 05:00:12,065 INFO L280 TraceCheckUtils]: 17: Hoare triple {4684#true} havoc #t~nondet1; {4684#true} is VALID [2020-07-18 05:00:12,065 INFO L280 TraceCheckUtils]: 18: Hoare triple {4684#true} #res.base, #res.offset := 0, 0; {4684#true} is VALID [2020-07-18 05:00:12,065 INFO L280 TraceCheckUtils]: 19: Hoare triple {4684#true} assume true; {4684#true} is VALID [2020-07-18 05:00:12,066 INFO L275 TraceCheckUtils]: 20: Hoare quadruple {4684#true} {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} #242#return; {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:12,066 INFO L280 TraceCheckUtils]: 21: Hoare triple {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} SUMMARY for call write~$Pointer$(#t~ret4.base, #t~ret4.offset, ~n~0.base, 4 + ~n~0.offset, 4); srcloc: L28-1 {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:12,067 INFO L280 TraceCheckUtils]: 22: Hoare triple {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} havoc #t~ret4.base, #t~ret4.offset; {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:12,068 INFO L263 TraceCheckUtils]: 23: Hoare triple {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} call #t~ret5.base, #t~ret5.offset := nondet_tree(); {4791#(and (= |#valid| |old(#valid)|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-18 05:00:12,068 INFO L280 TraceCheckUtils]: 24: Hoare triple {4791#(and (= |#valid| |old(#valid)|) (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} assume 0 != #t~nondet1 % 256; {4684#true} is VALID [2020-07-18 05:00:12,068 INFO L280 TraceCheckUtils]: 25: Hoare triple {4684#true} havoc #t~nondet1; {4684#true} is VALID [2020-07-18 05:00:12,068 INFO L280 TraceCheckUtils]: 26: Hoare triple {4684#true} #res.base, #res.offset := 0, 0; {4684#true} is VALID [2020-07-18 05:00:12,069 INFO L280 TraceCheckUtils]: 27: Hoare triple {4684#true} assume true; {4684#true} is VALID [2020-07-18 05:00:12,070 INFO L275 TraceCheckUtils]: 28: Hoare quadruple {4684#true} {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} #244#return; {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:12,070 INFO L280 TraceCheckUtils]: 29: Hoare triple {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} SUMMARY for call write~$Pointer$(#t~ret5.base, #t~ret5.offset, ~n~0.base, 8 + ~n~0.offset, 4); srcloc: L29-1 {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:12,071 INFO L280 TraceCheckUtils]: 30: Hoare triple {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} havoc #t~ret5.base, #t~ret5.offset; {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} is VALID [2020-07-18 05:00:12,071 INFO L280 TraceCheckUtils]: 31: Hoare triple {4793#(or (<= (+ nondet_tree_~n~0.base 1) 0) (<= 1 nondet_tree_~n~0.base))} #res.base, #res.offset := ~n~0.base, ~n~0.offset; {4804#(or (<= (+ |nondet_tree_#res.base| 1) 0) (<= 1 |nondet_tree_#res.base|))} is VALID [2020-07-18 05:00:12,072 INFO L280 TraceCheckUtils]: 32: Hoare triple {4804#(or (<= (+ |nondet_tree_#res.base| 1) 0) (<= 1 |nondet_tree_#res.base|))} assume true; {4804#(or (<= (+ |nondet_tree_#res.base| 1) 0) (<= 1 |nondet_tree_#res.base|))} is VALID [2020-07-18 05:00:12,073 INFO L275 TraceCheckUtils]: 33: Hoare quadruple {4804#(or (<= (+ |nondet_tree_#res.base| 1) 0) (<= 1 |nondet_tree_#res.base|))} {4684#true} #232#return; {4717#(not (= 0 |main_#t~ret39.base|))} is VALID [2020-07-18 05:00:12,074 INFO L263 TraceCheckUtils]: 34: Hoare triple {4717#(not (= 0 |main_#t~ret39.base|))} call task(#t~ret39.base, #t~ret39.offset); {4718#(not (= |task_#in~t.base| 0))} is VALID [2020-07-18 05:00:12,074 INFO L280 TraceCheckUtils]: 35: Hoare triple {4718#(not (= |task_#in~t.base| 0))} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {4719#(not (= 0 task_~t.base))} is VALID [2020-07-18 05:00:12,075 INFO L263 TraceCheckUtils]: 36: Hoare triple {4719#(not (= 0 task_~t.base))} call #t~ret26 := min(~t.base, ~t.offset); {4684#true} is VALID [2020-07-18 05:00:12,075 INFO L280 TraceCheckUtils]: 37: Hoare triple {4684#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {4684#true} is VALID [2020-07-18 05:00:12,075 INFO L280 TraceCheckUtils]: 38: Hoare triple {4684#true} assume !(~n.base == 0 && ~n.offset == 0); {4684#true} is VALID [2020-07-18 05:00:12,075 INFO L280 TraceCheckUtils]: 39: Hoare triple {4684#true} SUMMARY for call #t~mem6 := read~int(~n.base, ~n.offset, 4); srcloc: L38 {4684#true} is VALID [2020-07-18 05:00:12,075 INFO L280 TraceCheckUtils]: 40: Hoare triple {4684#true} ~a~0 := #t~mem6; {4684#true} is VALID [2020-07-18 05:00:12,075 INFO L280 TraceCheckUtils]: 41: Hoare triple {4684#true} havoc #t~mem6; {4684#true} is VALID [2020-07-18 05:00:12,076 INFO L280 TraceCheckUtils]: 42: Hoare triple {4684#true} SUMMARY for call #t~mem7.base, #t~mem7.offset := read~$Pointer$(~n.base, 4 + ~n.offset, 4); srcloc: L39 {4684#true} is VALID [2020-07-18 05:00:12,076 INFO L263 TraceCheckUtils]: 43: Hoare triple {4684#true} call #t~ret8 := min(#t~mem7.base, #t~mem7.offset); {4684#true} is VALID [2020-07-18 05:00:12,076 INFO L280 TraceCheckUtils]: 44: Hoare triple {4684#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {4684#true} is VALID [2020-07-18 05:00:12,076 INFO L280 TraceCheckUtils]: 45: Hoare triple {4684#true} assume ~n.base == 0 && ~n.offset == 0; {4684#true} is VALID [2020-07-18 05:00:12,076 INFO L280 TraceCheckUtils]: 46: Hoare triple {4684#true} #res := 2147483647; {4684#true} is VALID [2020-07-18 05:00:12,077 INFO L280 TraceCheckUtils]: 47: Hoare triple {4684#true} assume true; {4684#true} is VALID [2020-07-18 05:00:12,077 INFO L275 TraceCheckUtils]: 48: Hoare quadruple {4684#true} {4684#true} #238#return; {4684#true} is VALID [2020-07-18 05:00:12,077 INFO L280 TraceCheckUtils]: 49: Hoare triple {4684#true} assume -2147483648 <= #t~ret8 && #t~ret8 <= 2147483647; {4684#true} is VALID [2020-07-18 05:00:12,077 INFO L280 TraceCheckUtils]: 50: Hoare triple {4684#true} ~b~0 := #t~ret8; {4684#true} is VALID [2020-07-18 05:00:12,077 INFO L280 TraceCheckUtils]: 51: Hoare triple {4684#true} havoc #t~mem7.base, #t~mem7.offset; {4684#true} is VALID [2020-07-18 05:00:12,078 INFO L280 TraceCheckUtils]: 52: Hoare triple {4684#true} havoc #t~ret8; {4684#true} is VALID [2020-07-18 05:00:12,078 INFO L280 TraceCheckUtils]: 53: Hoare triple {4684#true} SUMMARY for call #t~mem9.base, #t~mem9.offset := read~$Pointer$(~n.base, 8 + ~n.offset, 4); srcloc: L40 {4684#true} is VALID [2020-07-18 05:00:12,078 INFO L263 TraceCheckUtils]: 54: Hoare triple {4684#true} call #t~ret10 := min(#t~mem9.base, #t~mem9.offset); {4684#true} is VALID [2020-07-18 05:00:12,078 INFO L280 TraceCheckUtils]: 55: Hoare triple {4684#true} ~n.base, ~n.offset := #in~n.base, #in~n.offset; {4684#true} is VALID [2020-07-18 05:00:12,078 INFO L280 TraceCheckUtils]: 56: Hoare triple {4684#true} assume ~n.base == 0 && ~n.offset == 0; {4684#true} is VALID [2020-07-18 05:00:12,079 INFO L280 TraceCheckUtils]: 57: Hoare triple {4684#true} #res := 2147483647; {4684#true} is VALID [2020-07-18 05:00:12,079 INFO L280 TraceCheckUtils]: 58: Hoare triple {4684#true} assume true; {4684#true} is VALID [2020-07-18 05:00:12,079 INFO L275 TraceCheckUtils]: 59: Hoare quadruple {4684#true} {4684#true} #240#return; {4684#true} is VALID [2020-07-18 05:00:12,079 INFO L280 TraceCheckUtils]: 60: Hoare triple {4684#true} assume -2147483648 <= #t~ret10 && #t~ret10 <= 2147483647; {4684#true} is VALID [2020-07-18 05:00:12,079 INFO L280 TraceCheckUtils]: 61: Hoare triple {4684#true} ~c~0 := #t~ret10; {4684#true} is VALID [2020-07-18 05:00:12,080 INFO L280 TraceCheckUtils]: 62: Hoare triple {4684#true} havoc #t~ret10; {4684#true} is VALID [2020-07-18 05:00:12,080 INFO L280 TraceCheckUtils]: 63: Hoare triple {4684#true} havoc #t~mem9.base, #t~mem9.offset; {4684#true} is VALID [2020-07-18 05:00:12,080 INFO L280 TraceCheckUtils]: 64: Hoare triple {4684#true} assume ~b~0 <= ~a~0 && ~b~0 <= ~c~0; {4684#true} is VALID [2020-07-18 05:00:12,080 INFO L280 TraceCheckUtils]: 65: Hoare triple {4684#true} #res := ~b~0; {4684#true} is VALID [2020-07-18 05:00:12,080 INFO L280 TraceCheckUtils]: 66: Hoare triple {4684#true} assume true; {4684#true} is VALID [2020-07-18 05:00:12,081 INFO L275 TraceCheckUtils]: 67: Hoare quadruple {4684#true} {4719#(not (= 0 task_~t.base))} #246#return; {4719#(not (= 0 task_~t.base))} is VALID [2020-07-18 05:00:12,082 INFO L280 TraceCheckUtils]: 68: Hoare triple {4719#(not (= 0 task_~t.base))} assume -2147483648 <= #t~ret26 && #t~ret26 <= 2147483647; {4719#(not (= 0 task_~t.base))} is VALID [2020-07-18 05:00:12,082 INFO L280 TraceCheckUtils]: 69: Hoare triple {4719#(not (= 0 task_~t.base))} ~a~1 := #t~ret26; {4719#(not (= 0 task_~t.base))} is VALID [2020-07-18 05:00:12,083 INFO L280 TraceCheckUtils]: 70: Hoare triple {4719#(not (= 0 task_~t.base))} havoc #t~ret26; {4719#(not (= 0 task_~t.base))} is VALID [2020-07-18 05:00:12,083 INFO L280 TraceCheckUtils]: 71: Hoare triple {4719#(not (= 0 task_~t.base))} SUMMARY for call ~#b~1.base, ~#b~1.offset := #Ultimate.allocOnStack(4); srcloc: L77 {4719#(not (= 0 task_~t.base))} is VALID [2020-07-18 05:00:12,084 INFO L263 TraceCheckUtils]: 72: Hoare triple {4719#(not (= 0 task_~t.base))} call #t~ret27 := size(~t.base, ~t.offset); {4684#true} is VALID [2020-07-18 05:00:12,084 INFO L280 TraceCheckUtils]: 73: Hoare triple {4684#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {4684#true} is VALID [2020-07-18 05:00:12,084 INFO L280 TraceCheckUtils]: 74: Hoare triple {4684#true} assume !(~t.base == 0 && ~t.offset == 0); {4684#true} is VALID [2020-07-18 05:00:12,084 INFO L280 TraceCheckUtils]: 75: Hoare triple {4684#true} SUMMARY for call #t~mem22.base, #t~mem22.offset := read~$Pointer$(~t.base, 4 + ~t.offset, 4); srcloc: L72 {4684#true} is VALID [2020-07-18 05:00:12,084 INFO L263 TraceCheckUtils]: 76: Hoare triple {4684#true} call #t~ret23 := size(#t~mem22.base, #t~mem22.offset); {4684#true} is VALID [2020-07-18 05:00:12,085 INFO L280 TraceCheckUtils]: 77: Hoare triple {4684#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {4684#true} is VALID [2020-07-18 05:00:12,085 INFO L280 TraceCheckUtils]: 78: Hoare triple {4684#true} assume ~t.base == 0 && ~t.offset == 0; {4684#true} is VALID [2020-07-18 05:00:12,085 INFO L280 TraceCheckUtils]: 79: Hoare triple {4684#true} #res := 0; {4684#true} is VALID [2020-07-18 05:00:12,085 INFO L280 TraceCheckUtils]: 80: Hoare triple {4684#true} assume true; {4684#true} is VALID [2020-07-18 05:00:12,085 INFO L275 TraceCheckUtils]: 81: Hoare quadruple {4684#true} {4684#true} #272#return; {4684#true} is VALID [2020-07-18 05:00:12,086 INFO L280 TraceCheckUtils]: 82: Hoare triple {4684#true} assume -2147483648 <= #t~ret23 && #t~ret23 <= 2147483647; {4684#true} is VALID [2020-07-18 05:00:12,086 INFO L280 TraceCheckUtils]: 83: Hoare triple {4684#true} SUMMARY for call #t~mem24.base, #t~mem24.offset := read~$Pointer$(~t.base, 8 + ~t.offset, 4); srcloc: L72-3 {4684#true} is VALID [2020-07-18 05:00:12,086 INFO L263 TraceCheckUtils]: 84: Hoare triple {4684#true} call #t~ret25 := size(#t~mem24.base, #t~mem24.offset); {4684#true} is VALID [2020-07-18 05:00:12,086 INFO L280 TraceCheckUtils]: 85: Hoare triple {4684#true} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {4684#true} is VALID [2020-07-18 05:00:12,086 INFO L280 TraceCheckUtils]: 86: Hoare triple {4684#true} assume ~t.base == 0 && ~t.offset == 0; {4684#true} is VALID [2020-07-18 05:00:12,086 INFO L280 TraceCheckUtils]: 87: Hoare triple {4684#true} #res := 0; {4684#true} is VALID [2020-07-18 05:00:12,087 INFO L280 TraceCheckUtils]: 88: Hoare triple {4684#true} assume true; {4684#true} is VALID [2020-07-18 05:00:12,087 INFO L275 TraceCheckUtils]: 89: Hoare quadruple {4684#true} {4684#true} #274#return; {4684#true} is VALID [2020-07-18 05:00:12,087 INFO L280 TraceCheckUtils]: 90: Hoare triple {4684#true} assume -2147483648 <= #t~ret25 && #t~ret25 <= 2147483647; {4684#true} is VALID [2020-07-18 05:00:12,087 INFO L280 TraceCheckUtils]: 91: Hoare triple {4684#true} #res := 1 + (#t~ret23 + #t~ret25); {4684#true} is VALID [2020-07-18 05:00:12,087 INFO L280 TraceCheckUtils]: 92: Hoare triple {4684#true} havoc #t~ret23; {4684#true} is VALID [2020-07-18 05:00:12,088 INFO L280 TraceCheckUtils]: 93: Hoare triple {4684#true} havoc #t~mem24.base, #t~mem24.offset; {4684#true} is VALID [2020-07-18 05:00:12,088 INFO L280 TraceCheckUtils]: 94: Hoare triple {4684#true} havoc #t~mem22.base, #t~mem22.offset; {4684#true} is VALID [2020-07-18 05:00:12,088 INFO L280 TraceCheckUtils]: 95: Hoare triple {4684#true} havoc #t~ret25; {4684#true} is VALID [2020-07-18 05:00:12,088 INFO L280 TraceCheckUtils]: 96: Hoare triple {4684#true} assume true; {4684#true} is VALID [2020-07-18 05:00:12,089 INFO L275 TraceCheckUtils]: 97: Hoare quadruple {4684#true} {4719#(not (= 0 task_~t.base))} #248#return; {4719#(not (= 0 task_~t.base))} is VALID [2020-07-18 05:00:12,090 INFO L280 TraceCheckUtils]: 98: Hoare triple {4719#(not (= 0 task_~t.base))} assume -2147483648 <= #t~ret27 && #t~ret27 <= 2147483647; {4719#(not (= 0 task_~t.base))} is VALID [2020-07-18 05:00:12,090 INFO L280 TraceCheckUtils]: 99: Hoare triple {4719#(not (= 0 task_~t.base))} ~n~1 := #t~ret27; {4719#(not (= 0 task_~t.base))} is VALID [2020-07-18 05:00:12,091 INFO L280 TraceCheckUtils]: 100: Hoare triple {4719#(not (= 0 task_~t.base))} havoc #t~ret27; {4719#(not (= 0 task_~t.base))} is VALID [2020-07-18 05:00:12,091 INFO L263 TraceCheckUtils]: 101: Hoare triple {4719#(not (= 0 task_~t.base))} call assume_cycle_if_not((if 0 != ~n~1 then 1 else 0)); {4684#true} is VALID [2020-07-18 05:00:12,091 INFO L280 TraceCheckUtils]: 102: Hoare triple {4684#true} ~cond := #in~cond; {4684#true} is VALID [2020-07-18 05:00:12,091 INFO L280 TraceCheckUtils]: 103: Hoare triple {4684#true} assume !(0 == ~cond); {4684#true} is VALID [2020-07-18 05:00:12,092 INFO L280 TraceCheckUtils]: 104: Hoare triple {4684#true} assume true; {4684#true} is VALID [2020-07-18 05:00:12,092 INFO L275 TraceCheckUtils]: 105: Hoare quadruple {4684#true} {4719#(not (= 0 task_~t.base))} #250#return; {4719#(not (= 0 task_~t.base))} is VALID [2020-07-18 05:00:12,093 INFO L280 TraceCheckUtils]: 106: Hoare triple {4719#(not (= 0 task_~t.base))} SUMMARY for call #t~malloc28.base, #t~malloc28.offset := #Ultimate.allocOnHeap(4 * ~n~1); srcloc: L80-1 {4719#(not (= 0 task_~t.base))} is VALID [2020-07-18 05:00:12,094 INFO L263 TraceCheckUtils]: 107: Hoare triple {4719#(not (= 0 task_~t.base))} call #Ultimate.meminit(#t~malloc28.base, #t~malloc28.offset, ~n~1, 4, 4 * ~n~1); {4825#(= |#memory_int| |old(#memory_int)|)} is VALID [2020-07-18 05:00:12,095 INFO L280 TraceCheckUtils]: 108: Hoare triple {4825#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {4684#true} is VALID [2020-07-18 05:00:12,095 INFO L280 TraceCheckUtils]: 109: Hoare triple {4684#true} assume true; {4684#true} is VALID [2020-07-18 05:00:12,096 INFO L275 TraceCheckUtils]: 110: Hoare quadruple {4684#true} {4719#(not (= 0 task_~t.base))} #252#return; {4719#(not (= 0 task_~t.base))} is VALID [2020-07-18 05:00:12,096 INFO L280 TraceCheckUtils]: 111: Hoare triple {4719#(not (= 0 task_~t.base))} ~x~0.base, ~x~0.offset := #t~malloc28.base, #t~malloc28.offset; {4719#(not (= 0 task_~t.base))} is VALID [2020-07-18 05:00:12,098 INFO L263 TraceCheckUtils]: 112: Hoare triple {4719#(not (= 0 task_~t.base))} call #t~ret29 := tree_inorder(~t.base, ~t.offset, ~x~0.base, ~x~0.offset, ~n~1); {4826#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-18 05:00:12,098 INFO L280 TraceCheckUtils]: 113: Hoare triple {4826#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~t.base, ~t.offset := #in~t.base, #in~t.offset; {4827#(= |tree_inorder_#in~t.base| tree_inorder_~t.base)} is VALID [2020-07-18 05:00:12,099 INFO L280 TraceCheckUtils]: 114: Hoare triple {4827#(= |tree_inorder_#in~t.base| tree_inorder_~t.base)} ~a.base, ~a.offset := #in~a.base, #in~a.offset; {4827#(= |tree_inorder_#in~t.base| tree_inorder_~t.base)} is VALID [2020-07-18 05:00:12,099 INFO L280 TraceCheckUtils]: 115: Hoare triple {4827#(= |tree_inorder_#in~t.base| tree_inorder_~t.base)} ~i := #in~i; {4827#(= |tree_inorder_#in~t.base| tree_inorder_~t.base)} is VALID [2020-07-18 05:00:12,100 INFO L280 TraceCheckUtils]: 116: Hoare triple {4827#(= |tree_inorder_#in~t.base| tree_inorder_~t.base)} assume ~t.base == 0 && ~t.offset == 0; {4828#(= 0 |tree_inorder_#in~t.base|)} is VALID [2020-07-18 05:00:12,101 INFO L280 TraceCheckUtils]: 117: Hoare triple {4828#(= 0 |tree_inorder_#in~t.base|)} #res := ~i; {4828#(= 0 |tree_inorder_#in~t.base|)} is VALID [2020-07-18 05:00:12,101 INFO L280 TraceCheckUtils]: 118: Hoare triple {4828#(= 0 |tree_inorder_#in~t.base|)} assume true; {4828#(= 0 |tree_inorder_#in~t.base|)} is VALID [2020-07-18 05:00:12,102 INFO L275 TraceCheckUtils]: 119: Hoare quadruple {4828#(= 0 |tree_inorder_#in~t.base|)} {4719#(not (= 0 task_~t.base))} #254#return; {4685#false} is VALID [2020-07-18 05:00:12,102 INFO L280 TraceCheckUtils]: 120: Hoare triple {4685#false} assume -2147483648 <= #t~ret29 && #t~ret29 <= 2147483647; {4685#false} is VALID [2020-07-18 05:00:12,103 INFO L280 TraceCheckUtils]: 121: Hoare triple {4685#false} havoc #t~ret29; {4685#false} is VALID [2020-07-18 05:00:12,103 INFO L280 TraceCheckUtils]: 122: Hoare triple {4685#false} SUMMARY for call #t~mem30 := read~int(~x~0.base, ~x~0.offset, 4); srcloc: L83 {4685#false} is VALID [2020-07-18 05:00:12,103 INFO L263 TraceCheckUtils]: 123: Hoare triple {4685#false} call __VERIFIER_assert((if ~a~1 == #t~mem30 then 1 else 0)); {4685#false} is VALID [2020-07-18 05:00:12,103 INFO L280 TraceCheckUtils]: 124: Hoare triple {4685#false} ~cond := #in~cond; {4685#false} is VALID [2020-07-18 05:00:12,103 INFO L280 TraceCheckUtils]: 125: Hoare triple {4685#false} assume 0 == ~cond; {4685#false} is VALID [2020-07-18 05:00:12,104 INFO L280 TraceCheckUtils]: 126: Hoare triple {4685#false} assume !false; {4685#false} is VALID [2020-07-18 05:00:12,119 INFO L134 CoverageAnalysis]: Checked inductivity of 37 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 33 trivial. 0 not checked. [2020-07-18 05:00:12,120 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1473037022] [2020-07-18 05:00:12,120 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-18 05:00:12,120 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2020-07-18 05:00:12,121 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2092238866] [2020-07-18 05:00:12,121 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 127 [2020-07-18 05:00:12,122 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 05:00:12,122 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states. [2020-07-18 05:00:12,241 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 111 edges. 111 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:00:12,241 INFO L459 AbstractCegarLoop]: Interpolant automaton has 14 states [2020-07-18 05:00:12,241 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 05:00:12,242 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2020-07-18 05:00:12,242 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=28, Invalid=154, Unknown=0, NotChecked=0, Total=182 [2020-07-18 05:00:12,242 INFO L87 Difference]: Start difference. First operand 184 states and 210 transitions. Second operand 14 states. [2020-07-18 05:00:17,482 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:00:17,482 INFO L93 Difference]: Finished difference Result 303 states and 345 transitions. [2020-07-18 05:00:17,483 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2020-07-18 05:00:17,483 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 127 [2020-07-18 05:00:17,486 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 05:00:17,486 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2020-07-18 05:00:17,497 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 334 transitions. [2020-07-18 05:00:17,498 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2020-07-18 05:00:17,509 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 334 transitions. [2020-07-18 05:00:17,509 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states and 334 transitions. [2020-07-18 05:00:18,161 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 334 edges. 334 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:00:18,170 INFO L225 Difference]: With dead ends: 303 [2020-07-18 05:00:18,170 INFO L226 Difference]: Without dead ends: 194 [2020-07-18 05:00:18,172 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 49 GetRequests, 25 SyntacticMatches, 0 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 69 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=112, Invalid=538, Unknown=0, NotChecked=0, Total=650 [2020-07-18 05:00:18,173 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 194 states. [2020-07-18 05:00:18,770 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 194 to 186. [2020-07-18 05:00:18,770 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 05:00:18,770 INFO L82 GeneralOperation]: Start isEquivalent. First operand 194 states. Second operand 186 states. [2020-07-18 05:00:18,771 INFO L74 IsIncluded]: Start isIncluded. First operand 194 states. Second operand 186 states. [2020-07-18 05:00:18,771 INFO L87 Difference]: Start difference. First operand 194 states. Second operand 186 states. [2020-07-18 05:00:18,785 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:00:18,785 INFO L93 Difference]: Finished difference Result 194 states and 221 transitions. [2020-07-18 05:00:18,785 INFO L276 IsEmpty]: Start isEmpty. Operand 194 states and 221 transitions. [2020-07-18 05:00:18,788 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 05:00:18,788 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 05:00:18,788 INFO L74 IsIncluded]: Start isIncluded. First operand 186 states. Second operand 194 states. [2020-07-18 05:00:18,788 INFO L87 Difference]: Start difference. First operand 186 states. Second operand 194 states. [2020-07-18 05:00:18,825 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:00:18,825 INFO L93 Difference]: Finished difference Result 194 states and 221 transitions. [2020-07-18 05:00:18,828 INFO L276 IsEmpty]: Start isEmpty. Operand 194 states and 221 transitions. [2020-07-18 05:00:18,831 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 05:00:18,831 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 05:00:18,831 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 05:00:18,833 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 05:00:18,834 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 186 states. [2020-07-18 05:00:18,860 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 186 states to 186 states and 213 transitions. [2020-07-18 05:00:18,861 INFO L78 Accepts]: Start accepts. Automaton has 186 states and 213 transitions. Word has length 127 [2020-07-18 05:00:18,861 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 05:00:18,861 INFO L479 AbstractCegarLoop]: Abstraction has 186 states and 213 transitions. [2020-07-18 05:00:18,862 INFO L480 AbstractCegarLoop]: Interpolant automaton has 14 states. [2020-07-18 05:00:18,862 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 186 states and 213 transitions. [2020-07-18 05:00:19,369 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 213 edges. 213 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:00:19,369 INFO L276 IsEmpty]: Start isEmpty. Operand 186 states and 213 transitions. [2020-07-18 05:00:19,374 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 160 [2020-07-18 05:00:19,375 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 05:00:19,375 INFO L422 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-18 05:00:19,375 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2020-07-18 05:00:19,376 INFO L427 AbstractCegarLoop]: === Iteration 5 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 05:00:19,376 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 05:00:19,376 INFO L82 PathProgramCache]: Analyzing trace with hash 1422485650, now seen corresponding path program 1 times [2020-07-18 05:00:19,377 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 05:00:19,377 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [799096972] [2020-07-18 05:00:19,377 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 05:00:19,481 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-18 05:00:19,555 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-18 05:00:19,663 INFO L174 FreeRefinementEngine]: Strategy FIXED_PREFERENCES found a feasible trace [2020-07-18 05:00:19,663 INFO L520 BasicCegarLoop]: Counterexample might be feasible [2020-07-18 05:00:19,664 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2020-07-18 05:00:19,846 WARN L170 areAnnotationChecker]: ULTIMATE.initENTRY has no Hoare annotation [2020-07-18 05:00:19,847 WARN L170 areAnnotationChecker]: minENTRY has no Hoare annotation [2020-07-18 05:00:19,847 WARN L170 areAnnotationChecker]: taskENTRY has no Hoare annotation [2020-07-18 05:00:19,847 WARN L170 areAnnotationChecker]: sizeENTRY has no Hoare annotation [2020-07-18 05:00:19,847 WARN L170 areAnnotationChecker]: nondet_treeENTRY has no Hoare annotation [2020-07-18 05:00:19,848 WARN L170 areAnnotationChecker]: nondet_treeENTRY has no Hoare annotation [2020-07-18 05:00:19,848 WARN L170 areAnnotationChecker]: assume_cycle_if_notENTRY has no Hoare annotation [2020-07-18 05:00:19,848 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2020-07-18 05:00:19,849 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2020-07-18 05:00:19,849 WARN L170 areAnnotationChecker]: mainENTRY has no Hoare annotation [2020-07-18 05:00:19,849 WARN L170 areAnnotationChecker]: mainENTRY has no Hoare annotation [2020-07-18 05:00:19,849 WARN L170 areAnnotationChecker]: __VERIFIER_assertENTRY has no Hoare annotation [2020-07-18 05:00:19,850 WARN L170 areAnnotationChecker]: #Ultimate.meminitENTRY has no Hoare annotation [2020-07-18 05:00:19,850 WARN L170 areAnnotationChecker]: tree_inorderENTRY has no Hoare annotation [2020-07-18 05:00:19,850 WARN L170 areAnnotationChecker]: tree_delENTRY has no Hoare annotation [2020-07-18 05:00:19,850 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2020-07-18 05:00:19,850 WARN L170 areAnnotationChecker]: L35 has no Hoare annotation [2020-07-18 05:00:19,851 WARN L170 areAnnotationChecker]: L35 has no Hoare annotation [2020-07-18 05:00:19,851 WARN L170 areAnnotationChecker]: L76 has no Hoare annotation [2020-07-18 05:00:19,851 WARN L170 areAnnotationChecker]: L76 has no Hoare annotation [2020-07-18 05:00:19,851 WARN L170 areAnnotationChecker]: L71 has no Hoare annotation [2020-07-18 05:00:19,851 WARN L170 areAnnotationChecker]: L71 has no Hoare annotation [2020-07-18 05:00:19,852 WARN L170 areAnnotationChecker]: L23 has no Hoare annotation [2020-07-18 05:00:19,852 WARN L170 areAnnotationChecker]: L23-1 has no Hoare annotation [2020-07-18 05:00:19,852 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2020-07-18 05:00:19,852 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2020-07-18 05:00:19,853 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2020-07-18 05:00:19,853 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2020-07-18 05:00:19,853 WARN L170 areAnnotationChecker]: L100 has no Hoare annotation [2020-07-18 05:00:19,871 WARN L170 areAnnotationChecker]: L100 has no Hoare annotation [2020-07-18 05:00:19,871 WARN L170 areAnnotationChecker]: L14 has no Hoare annotation [2020-07-18 05:00:19,872 WARN L170 areAnnotationChecker]: L14 has no Hoare annotation [2020-07-18 05:00:19,872 WARN L170 areAnnotationChecker]: #Ultimate.meminitFINAL has no Hoare annotation [2020-07-18 05:00:19,872 WARN L170 areAnnotationChecker]: L59 has no Hoare annotation [2020-07-18 05:00:19,872 WARN L170 areAnnotationChecker]: L47 has no Hoare annotation [2020-07-18 05:00:19,872 WARN L170 areAnnotationChecker]: L-1-1 has no Hoare annotation [2020-07-18 05:00:19,873 WARN L170 areAnnotationChecker]: L36 has no Hoare annotation [2020-07-18 05:00:19,873 WARN L170 areAnnotationChecker]: L38 has no Hoare annotation [2020-07-18 05:00:19,873 WARN L170 areAnnotationChecker]: L76-1 has no Hoare annotation [2020-07-18 05:00:19,873 WARN L170 areAnnotationChecker]: L71-1 has no Hoare annotation [2020-07-18 05:00:19,873 WARN L170 areAnnotationChecker]: L72 has no Hoare annotation [2020-07-18 05:00:19,873 WARN L170 areAnnotationChecker]: L24 has no Hoare annotation [2020-07-18 05:00:19,874 WARN L170 areAnnotationChecker]: L26 has no Hoare annotation [2020-07-18 05:00:19,874 WARN L170 areAnnotationChecker]: L9-3 has no Hoare annotation [2020-07-18 05:00:19,874 WARN L170 areAnnotationChecker]: L9-3 has no Hoare annotation [2020-07-18 05:00:19,874 WARN L170 areAnnotationChecker]: L9-3 has no Hoare annotation [2020-07-18 05:00:19,874 WARN L170 areAnnotationChecker]: L9-5 has no Hoare annotation [2020-07-18 05:00:19,875 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2020-07-18 05:00:19,875 WARN L170 areAnnotationChecker]: L100-1 has no Hoare annotation [2020-07-18 05:00:19,875 WARN L170 areAnnotationChecker]: L14-1 has no Hoare annotation [2020-07-18 05:00:19,875 WARN L170 areAnnotationChecker]: L14-1 has no Hoare annotation [2020-07-18 05:00:19,875 WARN L170 areAnnotationChecker]: L14-3 has no Hoare annotation [2020-07-18 05:00:19,876 WARN L170 areAnnotationChecker]: #Ultimate.meminitEXIT has no Hoare annotation [2020-07-18 05:00:19,876 WARN L170 areAnnotationChecker]: #Ultimate.meminitEXIT has no Hoare annotation [2020-07-18 05:00:19,876 WARN L170 areAnnotationChecker]: L59-1 has no Hoare annotation [2020-07-18 05:00:19,876 WARN L170 areAnnotationChecker]: L48 has no Hoare annotation [2020-07-18 05:00:19,876 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2020-07-18 05:00:19,876 WARN L170 areAnnotationChecker]: minFINAL has no Hoare annotation [2020-07-18 05:00:19,877 WARN L170 areAnnotationChecker]: L38-1 has no Hoare annotation [2020-07-18 05:00:19,877 WARN L170 areAnnotationChecker]: L76-2 has no Hoare annotation [2020-07-18 05:00:19,877 WARN L170 areAnnotationChecker]: sizeFINAL has no Hoare annotation [2020-07-18 05:00:19,877 WARN L170 areAnnotationChecker]: L72-1 has no Hoare annotation [2020-07-18 05:00:19,877 WARN L170 areAnnotationChecker]: L72-1 has no Hoare annotation [2020-07-18 05:00:19,877 WARN L170 areAnnotationChecker]: nondet_treeFINAL has no Hoare annotation [2020-07-18 05:00:19,878 WARN L170 areAnnotationChecker]: L26-1 has no Hoare annotation [2020-07-18 05:00:19,878 WARN L170 areAnnotationChecker]: assume_cycle_if_notEXIT has no Hoare annotation [2020-07-18 05:00:19,878 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2020-07-18 05:00:19,878 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2020-07-18 05:00:19,878 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2020-07-18 05:00:19,878 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2020-07-18 05:00:19,879 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2020-07-18 05:00:19,879 WARN L170 areAnnotationChecker]: L81-1 has no Hoare annotation [2020-07-18 05:00:19,879 WARN L170 areAnnotationChecker]: L88-2 has no Hoare annotation [2020-07-18 05:00:19,879 WARN L170 areAnnotationChecker]: L60 has no Hoare annotation [2020-07-18 05:00:19,879 WARN L170 areAnnotationChecker]: L60 has no Hoare annotation [2020-07-18 05:00:19,880 WARN L170 areAnnotationChecker]: L50 has no Hoare annotation [2020-07-18 05:00:19,880 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2020-07-18 05:00:19,880 WARN L170 areAnnotationChecker]: minEXIT has no Hoare annotation [2020-07-18 05:00:19,880 WARN L170 areAnnotationChecker]: minEXIT has no Hoare annotation [2020-07-18 05:00:19,880 WARN L170 areAnnotationChecker]: minEXIT has no Hoare annotation [2020-07-18 05:00:19,880 WARN L170 areAnnotationChecker]: L38-2 has no Hoare annotation [2020-07-18 05:00:19,881 WARN L170 areAnnotationChecker]: L76-3 has no Hoare annotation [2020-07-18 05:00:19,881 WARN L170 areAnnotationChecker]: sizeEXIT has no Hoare annotation [2020-07-18 05:00:19,881 WARN L170 areAnnotationChecker]: sizeEXIT has no Hoare annotation [2020-07-18 05:00:19,881 WARN L170 areAnnotationChecker]: sizeEXIT has no Hoare annotation [2020-07-18 05:00:19,881 WARN L170 areAnnotationChecker]: sizeEXIT has no Hoare annotation [2020-07-18 05:00:19,881 WARN L170 areAnnotationChecker]: L72-2 has no Hoare annotation [2020-07-18 05:00:19,882 WARN L170 areAnnotationChecker]: nondet_treeEXIT has no Hoare annotation [2020-07-18 05:00:19,882 WARN L170 areAnnotationChecker]: nondet_treeEXIT has no Hoare annotation [2020-07-18 05:00:19,882 WARN L170 areAnnotationChecker]: nondet_treeEXIT has no Hoare annotation [2020-07-18 05:00:19,882 WARN L170 areAnnotationChecker]: L27 has no Hoare annotation [2020-07-18 05:00:19,882 WARN L170 areAnnotationChecker]: L80-1 has no Hoare annotation [2020-07-18 05:00:19,883 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2020-07-18 05:00:19,883 WARN L170 areAnnotationChecker]: L83-2 has no Hoare annotation [2020-07-18 05:00:19,883 WARN L170 areAnnotationChecker]: L86-2 has no Hoare annotation [2020-07-18 05:00:19,883 WARN L170 areAnnotationChecker]: L91-1 has no Hoare annotation [2020-07-18 05:00:19,883 WARN L170 areAnnotationChecker]: L94-3 has no Hoare annotation [2020-07-18 05:00:19,883 WARN L170 areAnnotationChecker]: L82 has no Hoare annotation [2020-07-18 05:00:19,883 WARN L170 areAnnotationChecker]: L82 has no Hoare annotation [2020-07-18 05:00:19,884 WARN L170 areAnnotationChecker]: L89 has no Hoare annotation [2020-07-18 05:00:19,884 WARN L170 areAnnotationChecker]: L89 has no Hoare annotation [2020-07-18 05:00:19,884 WARN L170 areAnnotationChecker]: L61 has no Hoare annotation [2020-07-18 05:00:19,884 WARN L170 areAnnotationChecker]: L63 has no Hoare annotation [2020-07-18 05:00:19,884 WARN L170 areAnnotationChecker]: L50-1 has no Hoare annotation [2020-07-18 05:00:19,885 WARN L170 areAnnotationChecker]: L50-1 has no Hoare annotation [2020-07-18 05:00:19,885 WARN L170 areAnnotationChecker]: L39-2 has no Hoare annotation [2020-07-18 05:00:19,885 WARN L170 areAnnotationChecker]: L40-2 has no Hoare annotation [2020-07-18 05:00:19,885 WARN L170 areAnnotationChecker]: L39 has no Hoare annotation [2020-07-18 05:00:19,885 WARN L170 areAnnotationChecker]: L77 has no Hoare annotation [2020-07-18 05:00:19,885 WARN L170 areAnnotationChecker]: L79 has no Hoare annotation [2020-07-18 05:00:19,885 WARN L170 areAnnotationChecker]: L87-1 has no Hoare annotation [2020-07-18 05:00:19,886 WARN L170 areAnnotationChecker]: L72-5 has no Hoare annotation [2020-07-18 05:00:19,886 WARN L170 areAnnotationChecker]: L72-3 has no Hoare annotation [2020-07-18 05:00:19,886 WARN L170 areAnnotationChecker]: L28-1 has no Hoare annotation [2020-07-18 05:00:19,886 WARN L170 areAnnotationChecker]: L29-1 has no Hoare annotation [2020-07-18 05:00:19,886 WARN L170 areAnnotationChecker]: L27-1 has no Hoare annotation [2020-07-18 05:00:19,887 WARN L170 areAnnotationChecker]: L81 has no Hoare annotation [2020-07-18 05:00:19,887 WARN L170 areAnnotationChecker]: L81 has no Hoare annotation [2020-07-18 05:00:19,887 WARN L170 areAnnotationChecker]: L85 has no Hoare annotation [2020-07-18 05:00:19,887 WARN L170 areAnnotationChecker]: L85 has no Hoare annotation [2020-07-18 05:00:19,887 WARN L170 areAnnotationChecker]: L87 has no Hoare annotation [2020-07-18 05:00:19,887 WARN L170 areAnnotationChecker]: L87 has no Hoare annotation [2020-07-18 05:00:19,887 WARN L170 areAnnotationChecker]: L93 has no Hoare annotation [2020-07-18 05:00:19,887 WARN L170 areAnnotationChecker]: L94-4 has no Hoare annotation [2020-07-18 05:00:19,887 WARN L170 areAnnotationChecker]: L82-1 has no Hoare annotation [2020-07-18 05:00:19,888 WARN L170 areAnnotationChecker]: L89-1 has no Hoare annotation [2020-07-18 05:00:19,888 WARN L170 areAnnotationChecker]: tree_inorderFINAL has no Hoare annotation [2020-07-18 05:00:19,888 WARN L170 areAnnotationChecker]: L63-1 has no Hoare annotation [2020-07-18 05:00:19,888 WARN L170 areAnnotationChecker]: L63-1 has no Hoare annotation [2020-07-18 05:00:19,888 WARN L170 areAnnotationChecker]: L50-2 has no Hoare annotation [2020-07-18 05:00:19,889 WARN L170 areAnnotationChecker]: L50-3 has no Hoare annotation [2020-07-18 05:00:19,889 WARN L170 areAnnotationChecker]: L39-3 has no Hoare annotation [2020-07-18 05:00:19,889 WARN L170 areAnnotationChecker]: L40-3 has no Hoare annotation [2020-07-18 05:00:19,889 WARN L170 areAnnotationChecker]: L39-1 has no Hoare annotation [2020-07-18 05:00:19,889 WARN L170 areAnnotationChecker]: L39-1 has no Hoare annotation [2020-07-18 05:00:19,889 WARN L170 areAnnotationChecker]: L77-1 has no Hoare annotation [2020-07-18 05:00:19,890 WARN L170 areAnnotationChecker]: L77-1 has no Hoare annotation [2020-07-18 05:00:19,890 WARN L170 areAnnotationChecker]: L79-1 has no Hoare annotation [2020-07-18 05:00:19,890 WARN L170 areAnnotationChecker]: L87-2 has no Hoare annotation [2020-07-18 05:00:19,890 WARN L170 areAnnotationChecker]: L72-6 has no Hoare annotation [2020-07-18 05:00:19,890 WARN L170 areAnnotationChecker]: L72-4 has no Hoare annotation [2020-07-18 05:00:19,890 WARN L170 areAnnotationChecker]: L72-4 has no Hoare annotation [2020-07-18 05:00:19,891 WARN L170 areAnnotationChecker]: L28-2 has no Hoare annotation [2020-07-18 05:00:19,891 WARN L170 areAnnotationChecker]: L29-2 has no Hoare annotation [2020-07-18 05:00:19,891 WARN L170 areAnnotationChecker]: L27-2 has no Hoare annotation [2020-07-18 05:00:19,891 WARN L170 areAnnotationChecker]: L85-1 has no Hoare annotation [2020-07-18 05:00:19,891 WARN L170 areAnnotationChecker]: L93-6 has no Hoare annotation [2020-07-18 05:00:19,891 WARN L170 areAnnotationChecker]: L93-6 has no Hoare annotation [2020-07-18 05:00:19,892 WARN L170 areAnnotationChecker]: L93-6 has no Hoare annotation [2020-07-18 05:00:19,892 WARN L170 areAnnotationChecker]: L93-3 has no Hoare annotation [2020-07-18 05:00:19,892 WARN L170 areAnnotationChecker]: L82-2 has no Hoare annotation [2020-07-18 05:00:19,892 WARN L170 areAnnotationChecker]: L89-2 has no Hoare annotation [2020-07-18 05:00:19,892 WARN L170 areAnnotationChecker]: tree_inorderEXIT has no Hoare annotation [2020-07-18 05:00:19,892 WARN L170 areAnnotationChecker]: tree_inorderEXIT has no Hoare annotation [2020-07-18 05:00:19,893 WARN L170 areAnnotationChecker]: tree_inorderEXIT has no Hoare annotation [2020-07-18 05:00:19,893 WARN L170 areAnnotationChecker]: tree_inorderEXIT has no Hoare annotation [2020-07-18 05:00:19,893 WARN L170 areAnnotationChecker]: L63-2 has no Hoare annotation [2020-07-18 05:00:19,893 WARN L170 areAnnotationChecker]: L51 has no Hoare annotation [2020-07-18 05:00:19,893 WARN L170 areAnnotationChecker]: L54 has no Hoare annotation [2020-07-18 05:00:19,894 WARN L170 areAnnotationChecker]: L39-4 has no Hoare annotation [2020-07-18 05:00:19,894 WARN L170 areAnnotationChecker]: L40-4 has no Hoare annotation [2020-07-18 05:00:19,894 WARN L170 areAnnotationChecker]: L79-2 has no Hoare annotation [2020-07-18 05:00:19,894 WARN L170 areAnnotationChecker]: L87-3 has no Hoare annotation [2020-07-18 05:00:19,894 WARN L170 areAnnotationChecker]: L72-7 has no Hoare annotation [2020-07-18 05:00:19,894 WARN L170 areAnnotationChecker]: L29 has no Hoare annotation [2020-07-18 05:00:19,895 WARN L170 areAnnotationChecker]: L29 has no Hoare annotation [2020-07-18 05:00:19,895 WARN L170 areAnnotationChecker]: L30 has no Hoare annotation [2020-07-18 05:00:19,895 WARN L170 areAnnotationChecker]: L28 has no Hoare annotation [2020-07-18 05:00:19,895 WARN L170 areAnnotationChecker]: L28 has no Hoare annotation [2020-07-18 05:00:19,895 WARN L170 areAnnotationChecker]: L85-2 has no Hoare annotation [2020-07-18 05:00:19,896 WARN L170 areAnnotationChecker]: L93-7 has no Hoare annotation [2020-07-18 05:00:19,896 WARN L170 areAnnotationChecker]: L94 has no Hoare annotation [2020-07-18 05:00:19,896 WARN L170 areAnnotationChecker]: L93-4 has no Hoare annotation [2020-07-18 05:00:19,896 WARN L170 areAnnotationChecker]: L83 has no Hoare annotation [2020-07-18 05:00:19,896 WARN L170 areAnnotationChecker]: L91 has no Hoare annotation [2020-07-18 05:00:19,896 WARN L170 areAnnotationChecker]: L91 has no Hoare annotation [2020-07-18 05:00:19,897 WARN L170 areAnnotationChecker]: L65-2 has no Hoare annotation [2020-07-18 05:00:19,897 WARN L170 areAnnotationChecker]: L63-3 has no Hoare annotation [2020-07-18 05:00:19,897 WARN L170 areAnnotationChecker]: L51-1 has no Hoare annotation [2020-07-18 05:00:19,897 WARN L170 areAnnotationChecker]: L54-1 has no Hoare annotation [2020-07-18 05:00:19,897 WARN L170 areAnnotationChecker]: L54-1 has no Hoare annotation [2020-07-18 05:00:19,897 WARN L170 areAnnotationChecker]: L39-5 has no Hoare annotation [2020-07-18 05:00:19,898 WARN L170 areAnnotationChecker]: L40-5 has no Hoare annotation [2020-07-18 05:00:19,898 WARN L170 areAnnotationChecker]: L80 has no Hoare annotation [2020-07-18 05:00:19,898 WARN L170 areAnnotationChecker]: L80 has no Hoare annotation [2020-07-18 05:00:19,898 WARN L170 areAnnotationChecker]: L88 has no Hoare annotation [2020-07-18 05:00:19,898 WARN L170 areAnnotationChecker]: L72-8 has no Hoare annotation [2020-07-18 05:00:19,898 WARN L170 areAnnotationChecker]: L86 has no Hoare annotation [2020-07-18 05:00:19,899 WARN L170 areAnnotationChecker]: L95 has no Hoare annotation [2020-07-18 05:00:19,899 WARN L170 areAnnotationChecker]: L94-1 has no Hoare annotation [2020-07-18 05:00:19,899 WARN L170 areAnnotationChecker]: L93-5 has no Hoare annotation [2020-07-18 05:00:19,899 WARN L170 areAnnotationChecker]: L83-1 has no Hoare annotation [2020-07-18 05:00:19,899 WARN L170 areAnnotationChecker]: L83-1 has no Hoare annotation [2020-07-18 05:00:19,899 WARN L170 areAnnotationChecker]: L65-3 has no Hoare annotation [2020-07-18 05:00:19,900 WARN L170 areAnnotationChecker]: L63-4 has no Hoare annotation [2020-07-18 05:00:19,900 WARN L170 areAnnotationChecker]: L51-2 has no Hoare annotation [2020-07-18 05:00:19,900 WARN L170 areAnnotationChecker]: L54-2 has no Hoare annotation [2020-07-18 05:00:19,900 WARN L170 areAnnotationChecker]: L40 has no Hoare annotation [2020-07-18 05:00:19,900 WARN L170 areAnnotationChecker]: L41 has no Hoare annotation [2020-07-18 05:00:19,900 WARN L170 areAnnotationChecker]: L41 has no Hoare annotation [2020-07-18 05:00:19,901 WARN L170 areAnnotationChecker]: L88-1 has no Hoare annotation [2020-07-18 05:00:19,901 WARN L170 areAnnotationChecker]: L88-1 has no Hoare annotation [2020-07-18 05:00:19,901 WARN L170 areAnnotationChecker]: L72-9 has no Hoare annotation [2020-07-18 05:00:19,901 WARN L170 areAnnotationChecker]: L86-1 has no Hoare annotation [2020-07-18 05:00:19,901 WARN L170 areAnnotationChecker]: L86-1 has no Hoare annotation [2020-07-18 05:00:19,901 WARN L170 areAnnotationChecker]: L96 has no Hoare annotation [2020-07-18 05:00:19,902 WARN L170 areAnnotationChecker]: L94-2 has no Hoare annotation [2020-07-18 05:00:19,902 WARN L170 areAnnotationChecker]: L94-2 has no Hoare annotation [2020-07-18 05:00:19,902 WARN L170 areAnnotationChecker]: L65-4 has no Hoare annotation [2020-07-18 05:00:19,902 WARN L170 areAnnotationChecker]: L63-5 has no Hoare annotation [2020-07-18 05:00:19,902 WARN L170 areAnnotationChecker]: L51-3 has no Hoare annotation [2020-07-18 05:00:19,902 WARN L170 areAnnotationChecker]: L54-3 has no Hoare annotation [2020-07-18 05:00:19,903 WARN L170 areAnnotationChecker]: L40-1 has no Hoare annotation [2020-07-18 05:00:19,903 WARN L170 areAnnotationChecker]: L40-1 has no Hoare annotation [2020-07-18 05:00:19,903 WARN L170 areAnnotationChecker]: L41-1 has no Hoare annotation [2020-07-18 05:00:19,903 WARN L170 areAnnotationChecker]: L42 has no Hoare annotation [2020-07-18 05:00:19,903 WARN L170 areAnnotationChecker]: L42 has no Hoare annotation [2020-07-18 05:00:19,903 WARN L170 areAnnotationChecker]: L72-10 has no Hoare annotation [2020-07-18 05:00:19,904 WARN L170 areAnnotationChecker]: L77-2 has no Hoare annotation [2020-07-18 05:00:19,904 WARN L170 areAnnotationChecker]: L65-5 has no Hoare annotation [2020-07-18 05:00:19,904 WARN L170 areAnnotationChecker]: L64 has no Hoare annotation [2020-07-18 05:00:19,904 WARN L170 areAnnotationChecker]: L51-4 has no Hoare annotation [2020-07-18 05:00:19,904 WARN L170 areAnnotationChecker]: L54-4 has no Hoare annotation [2020-07-18 05:00:19,904 WARN L170 areAnnotationChecker]: L42-1 has no Hoare annotation [2020-07-18 05:00:19,905 WARN L170 areAnnotationChecker]: L43 has no Hoare annotation [2020-07-18 05:00:19,905 WARN L170 areAnnotationChecker]: taskFINAL has no Hoare annotation [2020-07-18 05:00:19,905 WARN L170 areAnnotationChecker]: L66 has no Hoare annotation [2020-07-18 05:00:19,905 WARN L170 areAnnotationChecker]: L64-1 has no Hoare annotation [2020-07-18 05:00:19,905 WARN L170 areAnnotationChecker]: L51-5 has no Hoare annotation [2020-07-18 05:00:19,905 WARN L170 areAnnotationChecker]: L55 has no Hoare annotation [2020-07-18 05:00:19,906 WARN L170 areAnnotationChecker]: taskEXIT has no Hoare annotation [2020-07-18 05:00:19,906 WARN L170 areAnnotationChecker]: L64-2 has no Hoare annotation [2020-07-18 05:00:19,906 WARN L170 areAnnotationChecker]: L51-6 has no Hoare annotation [2020-07-18 05:00:19,906 WARN L170 areAnnotationChecker]: tree_delFINAL has no Hoare annotation [2020-07-18 05:00:19,906 WARN L170 areAnnotationChecker]: L64-3 has no Hoare annotation [2020-07-18 05:00:19,906 WARN L170 areAnnotationChecker]: L51-7 has no Hoare annotation [2020-07-18 05:00:19,907 WARN L170 areAnnotationChecker]: tree_delEXIT has no Hoare annotation [2020-07-18 05:00:19,907 WARN L170 areAnnotationChecker]: tree_delEXIT has no Hoare annotation [2020-07-18 05:00:19,907 WARN L170 areAnnotationChecker]: L64-4 has no Hoare annotation [2020-07-18 05:00:19,907 WARN L170 areAnnotationChecker]: L64-5 has no Hoare annotation [2020-07-18 05:00:19,907 WARN L170 areAnnotationChecker]: L65 has no Hoare annotation [2020-07-18 05:00:19,907 WARN L170 areAnnotationChecker]: L65-1 has no Hoare annotation [2020-07-18 05:00:19,908 WARN L170 areAnnotationChecker]: L65-1 has no Hoare annotation [2020-07-18 05:00:19,908 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. [2020-07-18 05:00:19,913 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 18.07 05:00:19 BoogieIcfgContainer [2020-07-18 05:00:19,913 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2020-07-18 05:00:19,917 INFO L168 Benchmark]: Toolchain (without parser) took 29993.13 ms. Allocated memory was 136.8 MB in the beginning and 514.3 MB in the end (delta: 377.5 MB). Free memory was 101.0 MB in the beginning and 469.2 MB in the end (delta: -368.1 MB). Peak memory consumption was 396.6 MB. Max. memory is 7.1 GB. [2020-07-18 05:00:19,917 INFO L168 Benchmark]: CDTParser took 0.32 ms. Allocated memory is still 136.8 MB. Free memory was 120.3 MB in the beginning and 120.0 MB in the end (delta: 210.1 kB). Peak memory consumption was 210.1 kB. Max. memory is 7.1 GB. [2020-07-18 05:00:19,918 INFO L168 Benchmark]: CACSL2BoogieTranslator took 529.09 ms. Allocated memory was 136.8 MB in the beginning and 201.9 MB in the end (delta: 65.0 MB). Free memory was 100.8 MB in the beginning and 177.1 MB in the end (delta: -76.3 MB). Peak memory consumption was 24.4 MB. Max. memory is 7.1 GB. [2020-07-18 05:00:19,919 INFO L168 Benchmark]: Boogie Preprocessor took 71.84 ms. Allocated memory is still 201.9 MB. Free memory was 177.1 MB in the beginning and 174.3 MB in the end (delta: 2.8 MB). Peak memory consumption was 2.8 MB. Max. memory is 7.1 GB. [2020-07-18 05:00:19,919 INFO L168 Benchmark]: RCFGBuilder took 982.31 ms. Allocated memory is still 201.9 MB. Free memory was 174.3 MB in the beginning and 99.3 MB in the end (delta: 75.0 MB). Peak memory consumption was 75.0 MB. Max. memory is 7.1 GB. [2020-07-18 05:00:19,920 INFO L168 Benchmark]: TraceAbstraction took 28398.80 ms. Allocated memory was 201.9 MB in the beginning and 514.3 MB in the end (delta: 312.5 MB). Free memory was 98.6 MB in the beginning and 469.2 MB in the end (delta: -370.5 MB). Peak memory consumption was 329.2 MB. Max. memory is 7.1 GB. [2020-07-18 05:00:19,923 INFO L336 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.32 ms. Allocated memory is still 136.8 MB. Free memory was 120.3 MB in the beginning and 120.0 MB in the end (delta: 210.1 kB). Peak memory consumption was 210.1 kB. Max. memory is 7.1 GB. * CACSL2BoogieTranslator took 529.09 ms. Allocated memory was 136.8 MB in the beginning and 201.9 MB in the end (delta: 65.0 MB). Free memory was 100.8 MB in the beginning and 177.1 MB in the end (delta: -76.3 MB). Peak memory consumption was 24.4 MB. Max. memory is 7.1 GB. * Boogie Preprocessor took 71.84 ms. Allocated memory is still 201.9 MB. Free memory was 177.1 MB in the beginning and 174.3 MB in the end (delta: 2.8 MB). Peak memory consumption was 2.8 MB. Max. memory is 7.1 GB. * RCFGBuilder took 982.31 ms. Allocated memory is still 201.9 MB. Free memory was 174.3 MB in the beginning and 99.3 MB in the end (delta: 75.0 MB). Peak memory consumption was 75.0 MB. Max. memory is 7.1 GB. * TraceAbstraction took 28398.80 ms. Allocated memory was 201.9 MB in the beginning and 514.3 MB in the end (delta: 312.5 MB). Free memory was 98.6 MB in the beginning and 469.2 MB in the end (delta: -370.5 MB). Peak memory consumption was 329.2 MB. Max. memory is 7.1 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - CounterExampleResult [Line: 14]: a call of __VERIFIER_error() is reachable a call of __VERIFIER_error() is reachable We found a FailurePath: [L100] CALL, EXPR nondet_tree() [L23] COND FALSE !(__VERIFIER_nondet_bool()) VAL [__VERIFIER_nondet_bool()=0] [L26] struct node *n = (struct node *)malloc(sizeof(struct node)); VAL [malloc(sizeof(struct node))={-1:0}, n={-1:0}] [L27] n->data = __VERIFIER_nondet_int() VAL [__VERIFIER_nondet_int()=2147483647, malloc(sizeof(struct node))={-1:0}, n={-1:0}] [L28] CALL, EXPR nondet_tree() [L23] COND TRUE __VERIFIER_nondet_bool() VAL [__VERIFIER_nondet_bool()=1] [L24] return 0; VAL [\result={0:0}] [L28] RET, EXPR nondet_tree() VAL [malloc(sizeof(struct node))={-1:0}, n={-1:0}, nondet_tree()={0:0}] [L28] n->left = nondet_tree() VAL [malloc(sizeof(struct node))={-1:0}, n={-1:0}, nondet_tree()={0:0}] [L29] CALL, EXPR nondet_tree() [L23] COND TRUE __VERIFIER_nondet_bool() VAL [__VERIFIER_nondet_bool()=1] [L24] return 0; VAL [\result={0:0}] [L29] RET, EXPR nondet_tree() VAL [malloc(sizeof(struct node))={-1:0}, n={-1:0}, nondet_tree()={0:0}] [L29] n->right = nondet_tree() VAL [malloc(sizeof(struct node))={-1:0}, n={-1:0}, nondet_tree()={0:0}] [L30] return n; VAL [\result={-1:0}, malloc(sizeof(struct node))={-1:0}, n={-1:0}] [L100] RET, EXPR nondet_tree() VAL [nondet_tree()={-1:0}] [L100] CALL task(nondet_tree()) VAL [t={-1:0}] [L76] CALL, EXPR min(t) VAL [n={-1:0}] [L35] COND FALSE !(!n) VAL [n={-1:0}, n={-1:0}] [L38] EXPR n->data VAL [n={-1:0}, n={-1:0}, n->data=2147483647] [L38] int a = n->data; VAL [a=2147483647, n={-1:0}, n={-1:0}, n->data=2147483647] [L39] EXPR n->left VAL [a=2147483647, n={-1:0}, n={-1:0}, n->left={0:0}] [L39] CALL, EXPR min(n->left) VAL [n={0:0}] [L35] COND TRUE !n VAL [n={0:0}, n={0:0}] [L36] return 2147483647; VAL [\result=2147483647, n={0:0}, n={0:0}] [L39] RET, EXPR min(n->left) VAL [a=2147483647, min(n->left)=2147483647, n={-1:0}, n={-1:0}, n->left={0:0}] [L39] int b = min(n->left); VAL [a=2147483647, b=2147483647, min(n->left)=2147483647, n={-1:0}, n={-1:0}, n->left={0:0}] [L40] EXPR n->right VAL [a=2147483647, b=2147483647, n={-1:0}, n={-1:0}, n->right={0:0}] [L40] CALL, EXPR min(n->right) VAL [n={0:0}] [L35] COND TRUE !n VAL [n={0:0}, n={0:0}] [L36] return 2147483647; VAL [\result=2147483647, n={0:0}, n={0:0}] [L40] RET, EXPR min(n->right) VAL [a=2147483647, b=2147483647, min(n->right)=2147483647, n={-1:0}, n={-1:0}, n->right={0:0}] [L40] int c = min(n->right); VAL [a=2147483647, b=2147483647, c=2147483647, min(n->right)=2147483647, n={-1:0}, n={-1:0}, n->right={0:0}] [L41] COND TRUE b <= a && b <= c VAL [a=2147483647, b=2147483647, c=2147483647, n={-1:0}, n={-1:0}] [L41] return b; VAL [\result=2147483647, a=2147483647, b=2147483647, c=2147483647, n={-1:0}, n={-1:0}] [L76] RET, EXPR min(t) VAL [min(t)=2147483647, t={-1:0}, t={-1:0}] [L76] int a = min(t); VAL [a=2147483647, min(t)=2147483647, t={-1:0}, t={-1:0}] [L77] int b; VAL [a=2147483647, b={2:0}, t={-1:0}, t={-1:0}] [L79] CALL, EXPR size(t) VAL [t={-1:0}] [L71] COND FALSE !(!t) VAL [t={-1:0}, t={-1:0}] [L72] EXPR t->left VAL [t={-1:0}, t={-1:0}, t->left={0:0}] [L72] CALL, EXPR size(t->left) VAL [t={0:0}] [L71] COND TRUE !t VAL [t={0:0}, t={0:0}] [L71] return 0; VAL [\result=0, t={0:0}, t={0:0}] [L72] RET, EXPR size(t->left) VAL [size(t->left)=0, t={-1:0}, t={-1:0}, t->left={0:0}] [L72] EXPR t->right VAL [size(t->left)=0, t={-1:0}, t={-1:0}, t->left={0:0}, t->right={0:0}] [L72] CALL, EXPR size(t->right) VAL [t={0:0}] [L71] COND TRUE !t VAL [t={0:0}, t={0:0}] [L71] return 0; VAL [\result=0, t={0:0}, t={0:0}] [L72] 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}] [L72] return size(t->left) + size(t->right) + 1; VAL [\result=1, size(t->left)=0, size(t->right)=0, t={-1:0}, t={-1:0}, t->left={0:0}, t->right={0:0}] [L79] RET, EXPR size(t) VAL [a=2147483647, b={2:0}, size(t)=1, t={-1:0}, t={-1:0}] [L79] int n = size(t); VAL [a=2147483647, b={2:0}, n=1, size(t)=1, t={-1:0}, t={-1:0}] [L80] CALL assume_cycle_if_not(n != 0) VAL [\old(cond)=1] [L9] COND FALSE !(!cond) VAL [\old(cond)=1, cond=1] [L80] RET assume_cycle_if_not(n != 0) VAL [a=2147483647, b={2:0}, n=1, t={-1:0}, t={-1:0}] [L81] EXPR, FCALL calloc(n, sizeof(int)) VAL [a=2147483647, b={2:0}, calloc(n, sizeof(int))={-2:0}, n=1, t={-1:0}, t={-1:0}] [L81] int *x = calloc(n, sizeof(int)); VAL [a=2147483647, b={2:0}, calloc(n, sizeof(int))={-2:0}, n=1, t={-1:0}, t={-1:0}, x={-2:0}] [L82] CALL tree_inorder(t, x, n) VAL [\old(i)=1, a={-2:0}, t={-1:0}] [L60] COND FALSE !(!t) VAL [\old(i)=1, a={-2:0}, a={-2:0}, i=1, t={-1:0}, t={-1:0}] [L63] 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}] [L63] CALL, EXPR tree_inorder(t->left, a, i) VAL [\old(i)=1, a={-2:0}, t={0:0}] [L60] COND TRUE !t VAL [\old(i)=1, a={-2:0}, a={-2:0}, i=1, t={0:0}, t={0:0}] [L61] return i; VAL [\old(i)=1, \result=1, a={-2:0}, a={-2:0}, i=1, t={0:0}, t={0:0}] [L63] 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] [L63] i = 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] [L64] EXPR i++ VAL [\old(i)=1, a={-2:0}, a={-2:0}, i=2, i++=1, t={-1:0}, t={-1:0}] [L64] EXPR t->data VAL [\old(i)=1, a={-2:0}, a={-2:0}, i=2, i++=1, t={-1:0}, t={-1:0}, t->data=2147483647] [L64] a[i++] = t->data VAL [\old(i)=1, a={-2:0}, a={-2:0}, i=2, i++=1, t={-1:0}, t={-1:0}, t->data=2147483647] [L65] 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}] [L65] CALL, EXPR tree_inorder(t->right, a, i) VAL [\old(i)=2, a={-2:0}, t={0:0}] [L60] COND TRUE !t VAL [\old(i)=2, a={-2:0}, a={-2:0}, i=2, t={0:0}, t={0:0}] [L61] return i; VAL [\old(i)=2, \result=2, a={-2:0}, a={-2:0}, i=2, t={0:0}, t={0:0}] [L65] 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] [L65] i = 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] [L66] return i; VAL [\old(i)=1, \result=2, a={-2:0}, a={-2:0}, i=2, t={-1:0}, t={-1:0}] [L82] RET tree_inorder(t, x, n) VAL [a=2147483647, b={2:0}, calloc(n, sizeof(int))={-2:0}, n=1, t={-1:0}, t={-1:0}, tree_inorder(t, x, n)=2, x={-2:0}] [L83] EXPR x[0] VAL [a=2147483647, b={2:0}, calloc(n, sizeof(int))={-2:0}, n=1, t={-1:0}, t={-1:0}, x={-2:0}, x[0]=0] [L83] CALL __VERIFIER_assert(a == x[0]) VAL [\old(cond)=0] [L14] COND TRUE !cond VAL [\old(cond)=0, cond=0] [L14] __VERIFIER_error() VAL [\old(cond)=0, cond=0] - StatisticsResult: Ultimate Automizer benchmark data CFG has 12 procedures, 190 locations, 1 error locations. Started 1 CEGAR loops. VerificationResult: UNSAFE, OverallTime: 28.0s, OverallIterations: 5, TraceHistogramMax: 3, AutomataDifference: 21.8s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 686 SDtfs, 1232 SDslu, 2310 SDs, 0 SdLazy, 3973 SolverSat, 492 SolverUnsat, 0 SolverUnknown, 0 SolverNotchecked, 6.6s Time, PredicateUnifierStatistics: 0 DeclaredPredicates, 156 GetRequests, 75 SyntacticMatches, 0 SemanticMatches, 81 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 155 ImplicationChecksByTransitivity, 1.6s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=190occurred in iteration=0, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 1.9s AutomataMinimizationTime, 4 MinimizatonAttempts, 41 StatesRemovedByMinimization, 4 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.3s SatisfiabilityAnalysisTime, 1.6s InterpolantComputationTime, 527 NumberOfCodeBlocks, 527 NumberOfCodeBlocksAsserted, 5 NumberOfCheckSat, 364 ConstructedInterpolants, 0 QuantifiedInterpolants, 103440 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 4 InterpolantComputations, 3 PerfectInterpolantSequences, 72/74 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! Received shutdown request...