/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/list-ext3-properties/sll_nondet_insert-1.i -------------------------------------------------------------------------------- This is Ultimate 0.1.25-267fbe0 [2020-07-18 05:16:37,086 INFO L177 SettingsManager]: Resetting all preferences to default values... [2020-07-18 05:16:37,089 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2020-07-18 05:16:37,107 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2020-07-18 05:16:37,108 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2020-07-18 05:16:37,110 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2020-07-18 05:16:37,112 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2020-07-18 05:16:37,123 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2020-07-18 05:16:37,127 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2020-07-18 05:16:37,130 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2020-07-18 05:16:37,132 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2020-07-18 05:16:37,135 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2020-07-18 05:16:37,135 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2020-07-18 05:16:37,137 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2020-07-18 05:16:37,140 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2020-07-18 05:16:37,141 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2020-07-18 05:16:37,143 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2020-07-18 05:16:37,143 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2020-07-18 05:16:37,145 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2020-07-18 05:16:37,150 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2020-07-18 05:16:37,155 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2020-07-18 05:16:37,159 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2020-07-18 05:16:37,160 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2020-07-18 05:16:37,161 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2020-07-18 05:16:37,164 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2020-07-18 05:16:37,164 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2020-07-18 05:16:37,164 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2020-07-18 05:16:37,167 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2020-07-18 05:16:37,167 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2020-07-18 05:16:37,169 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2020-07-18 05:16:37,169 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2020-07-18 05:16:37,170 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2020-07-18 05:16:37,172 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2020-07-18 05:16:37,172 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2020-07-18 05:16:37,174 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2020-07-18 05:16:37,174 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2020-07-18 05:16:37,175 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2020-07-18 05:16:37,175 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2020-07-18 05:16:37,176 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2020-07-18 05:16:37,177 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2020-07-18 05:16:37,178 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2020-07-18 05:16:37,179 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 05:16:37,209 INFO L113 SettingsManager]: Loading preferences was successful [2020-07-18 05:16:37,209 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2020-07-18 05:16:37,213 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2020-07-18 05:16:37,214 INFO L138 SettingsManager]: * sizeof long=4 [2020-07-18 05:16:37,214 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2020-07-18 05:16:37,215 INFO L138 SettingsManager]: * sizeof POINTER=4 [2020-07-18 05:16:37,215 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2020-07-18 05:16:37,215 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2020-07-18 05:16:37,215 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2020-07-18 05:16:37,215 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2020-07-18 05:16:37,216 INFO L138 SettingsManager]: * sizeof long double=12 [2020-07-18 05:16:37,216 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2020-07-18 05:16:37,216 INFO L138 SettingsManager]: * Use constant arrays=true [2020-07-18 05:16:37,218 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2020-07-18 05:16:37,219 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2020-07-18 05:16:37,219 INFO L138 SettingsManager]: * Size of a code block=SingleStatement [2020-07-18 05:16:37,219 INFO L138 SettingsManager]: * To the following directory=./dump/ [2020-07-18 05:16:37,219 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2020-07-18 05:16:37,219 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2020-07-18 05:16:37,220 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2020-07-18 05:16:37,220 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=AcceleratedInterpolation [2020-07-18 05:16:37,220 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2020-07-18 05:16:37,220 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 05:16:37,519 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2020-07-18 05:16:37,536 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2020-07-18 05:16:37,540 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2020-07-18 05:16:37,541 INFO L271 PluginConnector]: Initializing CDTParser... [2020-07-18 05:16:37,542 INFO L275 PluginConnector]: CDTParser initialized [2020-07-18 05:16:37,542 INFO L429 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/list-ext3-properties/sll_nondet_insert-1.i [2020-07-18 05:16:37,618 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/351e614d6/f8f23f26addc44c7a38cd5d9a22ea60f/FLAGe65c9cdca [2020-07-18 05:16:38,187 INFO L306 CDTParser]: Found 1 translation units. [2020-07-18 05:16:38,188 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/list-ext3-properties/sll_nondet_insert-1.i [2020-07-18 05:16:38,206 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/351e614d6/f8f23f26addc44c7a38cd5d9a22ea60f/FLAGe65c9cdca [2020-07-18 05:16:38,456 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/351e614d6/f8f23f26addc44c7a38cd5d9a22ea60f [2020-07-18 05:16:38,470 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2020-07-18 05:16:38,474 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2020-07-18 05:16:38,480 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2020-07-18 05:16:38,480 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2020-07-18 05:16:38,484 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2020-07-18 05:16:38,486 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 18.07 05:16:38" (1/1) ... [2020-07-18 05:16:38,490 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@755cee63 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 05:16:38, skipping insertion in model container [2020-07-18 05:16:38,490 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 18.07 05:16:38" (1/1) ... [2020-07-18 05:16:38,500 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2020-07-18 05:16:38,563 INFO L178 MainTranslator]: Built tables and reachable declarations [2020-07-18 05:16:39,084 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-07-18 05:16:39,095 INFO L203 MainTranslator]: Completed pre-run [2020-07-18 05:16:39,144 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-07-18 05:16:39,202 INFO L208 MainTranslator]: Completed translation [2020-07-18 05:16:39,203 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 05:16:39 WrapperNode [2020-07-18 05:16:39,203 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2020-07-18 05:16:39,204 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2020-07-18 05:16:39,204 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2020-07-18 05:16:39,204 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2020-07-18 05:16:39,218 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 05:16:39" (1/1) ... [2020-07-18 05:16:39,219 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 05:16:39" (1/1) ... [2020-07-18 05:16:39,236 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 05:16:39" (1/1) ... [2020-07-18 05:16:39,236 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 05:16:39" (1/1) ... [2020-07-18 05:16:39,261 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 05:16:39" (1/1) ... [2020-07-18 05:16:39,270 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 05:16:39" (1/1) ... [2020-07-18 05:16:39,274 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 05:16:39" (1/1) ... [2020-07-18 05:16:39,282 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2020-07-18 05:16:39,286 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2020-07-18 05:16:39,286 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2020-07-18 05:16:39,286 INFO L275 PluginConnector]: RCFGBuilder initialized [2020-07-18 05:16:39,287 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 05:16:39" (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 05:16:39,352 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2020-07-18 05:16:39,353 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2020-07-18 05:16:39,353 INFO L138 BoogieDeclarations]: Found implementation of procedure __bswap_32 [2020-07-18 05:16:39,353 INFO L138 BoogieDeclarations]: Found implementation of procedure __bswap_64 [2020-07-18 05:16:39,354 INFO L138 BoogieDeclarations]: Found implementation of procedure myexit [2020-07-18 05:16:39,354 INFO L138 BoogieDeclarations]: Found implementation of procedure sll_create [2020-07-18 05:16:39,354 INFO L138 BoogieDeclarations]: Found implementation of procedure sll_length [2020-07-18 05:16:39,354 INFO L138 BoogieDeclarations]: Found implementation of procedure sll_destroy [2020-07-18 05:16:39,354 INFO L138 BoogieDeclarations]: Found implementation of procedure sll_insert [2020-07-18 05:16:39,354 INFO L138 BoogieDeclarations]: Found implementation of procedure _get_nondet_int [2020-07-18 05:16:39,355 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2020-07-18 05:16:39,355 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_error [2020-07-18 05:16:39,355 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2020-07-18 05:16:39,355 INFO L130 BoogieDeclarations]: Found specification of procedure __bswap_32 [2020-07-18 05:16:39,355 INFO L130 BoogieDeclarations]: Found specification of procedure __bswap_64 [2020-07-18 05:16:39,355 INFO L130 BoogieDeclarations]: Found specification of procedure __ctype_get_mb_cur_max [2020-07-18 05:16:39,356 INFO L130 BoogieDeclarations]: Found specification of procedure atof [2020-07-18 05:16:39,356 INFO L130 BoogieDeclarations]: Found specification of procedure atoi [2020-07-18 05:16:39,356 INFO L130 BoogieDeclarations]: Found specification of procedure atol [2020-07-18 05:16:39,356 INFO L130 BoogieDeclarations]: Found specification of procedure atoll [2020-07-18 05:16:39,356 INFO L130 BoogieDeclarations]: Found specification of procedure strtod [2020-07-18 05:16:39,356 INFO L130 BoogieDeclarations]: Found specification of procedure strtof [2020-07-18 05:16:39,357 INFO L130 BoogieDeclarations]: Found specification of procedure strtold [2020-07-18 05:16:39,357 INFO L130 BoogieDeclarations]: Found specification of procedure strtol [2020-07-18 05:16:39,357 INFO L130 BoogieDeclarations]: Found specification of procedure strtoul [2020-07-18 05:16:39,357 INFO L130 BoogieDeclarations]: Found specification of procedure strtoq [2020-07-18 05:16:39,357 INFO L130 BoogieDeclarations]: Found specification of procedure strtouq [2020-07-18 05:16:39,357 INFO L130 BoogieDeclarations]: Found specification of procedure strtoll [2020-07-18 05:16:39,358 INFO L130 BoogieDeclarations]: Found specification of procedure strtoull [2020-07-18 05:16:39,358 INFO L130 BoogieDeclarations]: Found specification of procedure l64a [2020-07-18 05:16:39,358 INFO L130 BoogieDeclarations]: Found specification of procedure a64l [2020-07-18 05:16:39,358 INFO L130 BoogieDeclarations]: Found specification of procedure select [2020-07-18 05:16:39,358 INFO L130 BoogieDeclarations]: Found specification of procedure pselect [2020-07-18 05:16:39,358 INFO L130 BoogieDeclarations]: Found specification of procedure gnu_dev_major [2020-07-18 05:16:39,359 INFO L130 BoogieDeclarations]: Found specification of procedure gnu_dev_minor [2020-07-18 05:16:39,359 INFO L130 BoogieDeclarations]: Found specification of procedure gnu_dev_makedev [2020-07-18 05:16:39,359 INFO L130 BoogieDeclarations]: Found specification of procedure random [2020-07-18 05:16:39,359 INFO L130 BoogieDeclarations]: Found specification of procedure srandom [2020-07-18 05:16:39,359 INFO L130 BoogieDeclarations]: Found specification of procedure initstate [2020-07-18 05:16:39,360 INFO L130 BoogieDeclarations]: Found specification of procedure setstate [2020-07-18 05:16:39,360 INFO L130 BoogieDeclarations]: Found specification of procedure random_r [2020-07-18 05:16:39,360 INFO L130 BoogieDeclarations]: Found specification of procedure srandom_r [2020-07-18 05:16:39,360 INFO L130 BoogieDeclarations]: Found specification of procedure initstate_r [2020-07-18 05:16:39,360 INFO L130 BoogieDeclarations]: Found specification of procedure setstate_r [2020-07-18 05:16:39,360 INFO L130 BoogieDeclarations]: Found specification of procedure rand [2020-07-18 05:16:39,361 INFO L130 BoogieDeclarations]: Found specification of procedure srand [2020-07-18 05:16:39,361 INFO L130 BoogieDeclarations]: Found specification of procedure rand_r [2020-07-18 05:16:39,361 INFO L130 BoogieDeclarations]: Found specification of procedure drand48 [2020-07-18 05:16:39,361 INFO L130 BoogieDeclarations]: Found specification of procedure erand48 [2020-07-18 05:16:39,361 INFO L130 BoogieDeclarations]: Found specification of procedure lrand48 [2020-07-18 05:16:39,361 INFO L130 BoogieDeclarations]: Found specification of procedure nrand48 [2020-07-18 05:16:39,362 INFO L130 BoogieDeclarations]: Found specification of procedure mrand48 [2020-07-18 05:16:39,362 INFO L130 BoogieDeclarations]: Found specification of procedure jrand48 [2020-07-18 05:16:39,362 INFO L130 BoogieDeclarations]: Found specification of procedure srand48 [2020-07-18 05:16:39,363 INFO L130 BoogieDeclarations]: Found specification of procedure seed48 [2020-07-18 05:16:39,363 INFO L130 BoogieDeclarations]: Found specification of procedure lcong48 [2020-07-18 05:16:39,363 INFO L130 BoogieDeclarations]: Found specification of procedure drand48_r [2020-07-18 05:16:39,364 INFO L130 BoogieDeclarations]: Found specification of procedure erand48_r [2020-07-18 05:16:39,364 INFO L130 BoogieDeclarations]: Found specification of procedure lrand48_r [2020-07-18 05:16:39,364 INFO L130 BoogieDeclarations]: Found specification of procedure nrand48_r [2020-07-18 05:16:39,364 INFO L130 BoogieDeclarations]: Found specification of procedure mrand48_r [2020-07-18 05:16:39,364 INFO L130 BoogieDeclarations]: Found specification of procedure jrand48_r [2020-07-18 05:16:39,364 INFO L130 BoogieDeclarations]: Found specification of procedure srand48_r [2020-07-18 05:16:39,365 INFO L130 BoogieDeclarations]: Found specification of procedure seed48_r [2020-07-18 05:16:39,365 INFO L130 BoogieDeclarations]: Found specification of procedure lcong48_r [2020-07-18 05:16:39,365 INFO L130 BoogieDeclarations]: Found specification of procedure malloc [2020-07-18 05:16:39,365 INFO L130 BoogieDeclarations]: Found specification of procedure calloc [2020-07-18 05:16:39,365 INFO L130 BoogieDeclarations]: Found specification of procedure realloc [2020-07-18 05:16:39,365 INFO L130 BoogieDeclarations]: Found specification of procedure free [2020-07-18 05:16:39,365 INFO L130 BoogieDeclarations]: Found specification of procedure cfree [2020-07-18 05:16:39,366 INFO L130 BoogieDeclarations]: Found specification of procedure alloca [2020-07-18 05:16:39,366 INFO L130 BoogieDeclarations]: Found specification of procedure valloc [2020-07-18 05:16:39,366 INFO L130 BoogieDeclarations]: Found specification of procedure posix_memalign [2020-07-18 05:16:39,366 INFO L130 BoogieDeclarations]: Found specification of procedure aligned_alloc [2020-07-18 05:16:39,366 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2020-07-18 05:16:39,367 INFO L130 BoogieDeclarations]: Found specification of procedure atexit [2020-07-18 05:16:39,367 INFO L130 BoogieDeclarations]: Found specification of procedure at_quick_exit [2020-07-18 05:16:39,367 INFO L130 BoogieDeclarations]: Found specification of procedure on_exit [2020-07-18 05:16:39,367 INFO L130 BoogieDeclarations]: Found specification of procedure exit [2020-07-18 05:16:39,367 INFO L130 BoogieDeclarations]: Found specification of procedure quick_exit [2020-07-18 05:16:39,368 INFO L130 BoogieDeclarations]: Found specification of procedure _Exit [2020-07-18 05:16:39,368 INFO L130 BoogieDeclarations]: Found specification of procedure getenv [2020-07-18 05:16:39,368 INFO L130 BoogieDeclarations]: Found specification of procedure putenv [2020-07-18 05:16:39,369 INFO L130 BoogieDeclarations]: Found specification of procedure setenv [2020-07-18 05:16:39,369 INFO L130 BoogieDeclarations]: Found specification of procedure unsetenv [2020-07-18 05:16:39,369 INFO L130 BoogieDeclarations]: Found specification of procedure clearenv [2020-07-18 05:16:39,369 INFO L130 BoogieDeclarations]: Found specification of procedure mktemp [2020-07-18 05:16:39,369 INFO L130 BoogieDeclarations]: Found specification of procedure mkstemp [2020-07-18 05:16:39,371 INFO L130 BoogieDeclarations]: Found specification of procedure mkstemps [2020-07-18 05:16:39,371 INFO L130 BoogieDeclarations]: Found specification of procedure mkdtemp [2020-07-18 05:16:39,371 INFO L130 BoogieDeclarations]: Found specification of procedure system [2020-07-18 05:16:39,371 INFO L130 BoogieDeclarations]: Found specification of procedure realpath [2020-07-18 05:16:39,371 INFO L130 BoogieDeclarations]: Found specification of procedure bsearch [2020-07-18 05:16:39,372 INFO L130 BoogieDeclarations]: Found specification of procedure qsort [2020-07-18 05:16:39,372 INFO L130 BoogieDeclarations]: Found specification of procedure abs [2020-07-18 05:16:39,373 INFO L130 BoogieDeclarations]: Found specification of procedure labs [2020-07-18 05:16:39,374 INFO L130 BoogieDeclarations]: Found specification of procedure llabs [2020-07-18 05:16:39,375 INFO L130 BoogieDeclarations]: Found specification of procedure div [2020-07-18 05:16:39,375 INFO L130 BoogieDeclarations]: Found specification of procedure ldiv [2020-07-18 05:16:39,375 INFO L130 BoogieDeclarations]: Found specification of procedure lldiv [2020-07-18 05:16:39,375 INFO L130 BoogieDeclarations]: Found specification of procedure ecvt [2020-07-18 05:16:39,375 INFO L130 BoogieDeclarations]: Found specification of procedure fcvt [2020-07-18 05:16:39,376 INFO L130 BoogieDeclarations]: Found specification of procedure gcvt [2020-07-18 05:16:39,376 INFO L130 BoogieDeclarations]: Found specification of procedure qecvt [2020-07-18 05:16:39,376 INFO L130 BoogieDeclarations]: Found specification of procedure qfcvt [2020-07-18 05:16:39,376 INFO L130 BoogieDeclarations]: Found specification of procedure qgcvt [2020-07-18 05:16:39,376 INFO L130 BoogieDeclarations]: Found specification of procedure ecvt_r [2020-07-18 05:16:39,376 INFO L130 BoogieDeclarations]: Found specification of procedure fcvt_r [2020-07-18 05:16:39,377 INFO L130 BoogieDeclarations]: Found specification of procedure qecvt_r [2020-07-18 05:16:39,377 INFO L130 BoogieDeclarations]: Found specification of procedure qfcvt_r [2020-07-18 05:16:39,377 INFO L130 BoogieDeclarations]: Found specification of procedure mblen [2020-07-18 05:16:39,377 INFO L130 BoogieDeclarations]: Found specification of procedure mbtowc [2020-07-18 05:16:39,377 INFO L130 BoogieDeclarations]: Found specification of procedure wctomb [2020-07-18 05:16:39,378 INFO L130 BoogieDeclarations]: Found specification of procedure mbstowcs [2020-07-18 05:16:39,378 INFO L130 BoogieDeclarations]: Found specification of procedure wcstombs [2020-07-18 05:16:39,378 INFO L130 BoogieDeclarations]: Found specification of procedure rpmatch [2020-07-18 05:16:39,378 INFO L130 BoogieDeclarations]: Found specification of procedure getsubopt [2020-07-18 05:16:39,378 INFO L130 BoogieDeclarations]: Found specification of procedure getloadavg [2020-07-18 05:16:39,378 INFO L130 BoogieDeclarations]: Found specification of procedure myexit [2020-07-18 05:16:39,379 INFO L130 BoogieDeclarations]: Found specification of procedure sll_create [2020-07-18 05:16:39,379 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2020-07-18 05:16:39,379 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2020-07-18 05:16:39,379 INFO L130 BoogieDeclarations]: Found specification of procedure sll_length [2020-07-18 05:16:39,379 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2020-07-18 05:16:39,380 INFO L130 BoogieDeclarations]: Found specification of procedure sll_destroy [2020-07-18 05:16:39,380 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2020-07-18 05:16:39,380 INFO L130 BoogieDeclarations]: Found specification of procedure sll_insert [2020-07-18 05:16:39,380 INFO L130 BoogieDeclarations]: Found specification of procedure _get_nondet_int [2020-07-18 05:16:39,380 INFO L130 BoogieDeclarations]: Found specification of procedure main [2020-07-18 05:16:39,380 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2020-07-18 05:16:39,380 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~$Pointer$ [2020-07-18 05:16:39,381 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2020-07-18 05:16:39,381 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2020-07-18 05:16:39,788 INFO L728 $ProcedureCfgBuilder]: dead code at ProgramPoint myexitFINAL: assume true; [2020-07-18 05:16:40,255 INFO L290 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2020-07-18 05:16:40,256 INFO L295 CfgBuilder]: Removed 6 assume(true) statements. [2020-07-18 05:16:40,260 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 18.07 05:16:40 BoogieIcfgContainer [2020-07-18 05:16:40,260 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2020-07-18 05:16:40,262 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2020-07-18 05:16:40,262 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2020-07-18 05:16:40,265 INFO L275 PluginConnector]: TraceAbstraction initialized [2020-07-18 05:16:40,266 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 18.07 05:16:38" (1/3) ... [2020-07-18 05:16:40,267 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@468ddd3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 18.07 05:16:40, skipping insertion in model container [2020-07-18 05:16:40,267 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 05:16:39" (2/3) ... [2020-07-18 05:16:40,267 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@468ddd3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 18.07 05:16:40, skipping insertion in model container [2020-07-18 05:16:40,268 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 18.07 05:16:40" (3/3) ... [2020-07-18 05:16:40,270 INFO L109 eAbstractionObserver]: Analyzing ICFG sll_nondet_insert-1.i [2020-07-18 05:16:40,280 INFO L157 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2020-07-18 05:16:40,289 INFO L169 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2020-07-18 05:16:40,304 INFO L251 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2020-07-18 05:16:40,327 INFO L375 AbstractCegarLoop]: Interprodecural is true [2020-07-18 05:16:40,328 INFO L376 AbstractCegarLoop]: Hoare is true [2020-07-18 05:16:40,328 INFO L377 AbstractCegarLoop]: Compute interpolants for Craig_NestedInterpolation [2020-07-18 05:16:40,328 INFO L378 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2020-07-18 05:16:40,328 INFO L379 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2020-07-18 05:16:40,329 INFO L380 AbstractCegarLoop]: Difference is false [2020-07-18 05:16:40,329 INFO L381 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2020-07-18 05:16:40,329 INFO L385 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2020-07-18 05:16:40,347 INFO L276 IsEmpty]: Start isEmpty. Operand 142 states. [2020-07-18 05:16:40,361 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 55 [2020-07-18 05:16:40,362 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 05:16:40,363 INFO L422 BasicCegarLoop]: trace histogram [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] [2020-07-18 05:16:40,363 INFO L427 AbstractCegarLoop]: === Iteration 1 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 05:16:40,369 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 05:16:40,370 INFO L82 PathProgramCache]: Analyzing trace with hash 422432984, now seen corresponding path program 1 times [2020-07-18 05:16:40,379 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 05:16:40,379 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [75430161] [2020-07-18 05:16:40,380 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 05:16:40,491 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:16:40,574 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:16:40,588 INFO L280 TraceCheckUtils]: 0: Hoare triple {178#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {145#true} is VALID [2020-07-18 05:16:40,588 INFO L280 TraceCheckUtils]: 1: Hoare triple {145#true} #valid := #valid[0 := 0]; {145#true} is VALID [2020-07-18 05:16:40,589 INFO L280 TraceCheckUtils]: 2: Hoare triple {145#true} assume 0 < #StackHeapBarrier; {145#true} is VALID [2020-07-18 05:16:40,590 INFO L280 TraceCheckUtils]: 3: Hoare triple {145#true} assume true; {145#true} is VALID [2020-07-18 05:16:40,590 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {145#true} {145#true} #259#return; {145#true} is VALID [2020-07-18 05:16:40,595 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:16:40,603 INFO L280 TraceCheckUtils]: 0: Hoare triple {145#true} ~from := #in~from; {145#true} is VALID [2020-07-18 05:16:40,603 INFO L280 TraceCheckUtils]: 1: Hoare triple {145#true} ~until := #in~until; {145#true} is VALID [2020-07-18 05:16:40,604 INFO L280 TraceCheckUtils]: 2: Hoare triple {145#true} ~len~1 := ~from; {145#true} is VALID [2020-07-18 05:16:40,605 INFO L280 TraceCheckUtils]: 3: Hoare triple {145#true} assume !true; {146#false} is VALID [2020-07-18 05:16:40,605 INFO L280 TraceCheckUtils]: 4: Hoare triple {146#false} #res := ~len~1; {146#false} is VALID [2020-07-18 05:16:40,605 INFO L280 TraceCheckUtils]: 5: Hoare triple {146#false} assume true; {146#false} is VALID [2020-07-18 05:16:40,605 INFO L275 TraceCheckUtils]: 6: Hoare quadruple {146#false} {145#true} #243#return; {146#false} is VALID [2020-07-18 05:16:40,632 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:16:40,641 INFO L280 TraceCheckUtils]: 0: Hoare triple {179#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~len := #in~len; {145#true} is VALID [2020-07-18 05:16:40,642 INFO L280 TraceCheckUtils]: 1: Hoare triple {145#true} ~head~0.base, ~head~0.offset := 0, 0; {145#true} is VALID [2020-07-18 05:16:40,643 INFO L280 TraceCheckUtils]: 2: Hoare triple {145#true} assume !true; {146#false} is VALID [2020-07-18 05:16:40,643 INFO L280 TraceCheckUtils]: 3: Hoare triple {146#false} #res.base, #res.offset := ~head~0.base, ~head~0.offset; {146#false} is VALID [2020-07-18 05:16:40,644 INFO L280 TraceCheckUtils]: 4: Hoare triple {146#false} assume true; {146#false} is VALID [2020-07-18 05:16:40,644 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {146#false} {146#false} #245#return; {146#false} is VALID [2020-07-18 05:16:40,646 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:16:40,654 INFO L280 TraceCheckUtils]: 0: Hoare triple {145#true} ~from := #in~from; {145#true} is VALID [2020-07-18 05:16:40,655 INFO L280 TraceCheckUtils]: 1: Hoare triple {145#true} ~until := #in~until; {145#true} is VALID [2020-07-18 05:16:40,655 INFO L280 TraceCheckUtils]: 2: Hoare triple {145#true} ~len~1 := ~from; {145#true} is VALID [2020-07-18 05:16:40,656 INFO L280 TraceCheckUtils]: 3: Hoare triple {145#true} assume !true; {146#false} is VALID [2020-07-18 05:16:40,656 INFO L280 TraceCheckUtils]: 4: Hoare triple {146#false} #res := ~len~1; {146#false} is VALID [2020-07-18 05:16:40,657 INFO L280 TraceCheckUtils]: 5: Hoare triple {146#false} assume true; {146#false} is VALID [2020-07-18 05:16:40,657 INFO L275 TraceCheckUtils]: 6: Hoare quadruple {146#false} {146#false} #247#return; {146#false} is VALID [2020-07-18 05:16:40,660 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:16:40,669 INFO L280 TraceCheckUtils]: 0: Hoare triple {145#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {145#true} is VALID [2020-07-18 05:16:40,669 INFO L280 TraceCheckUtils]: 1: Hoare triple {145#true} ~len~0 := 0; {145#true} is VALID [2020-07-18 05:16:40,670 INFO L280 TraceCheckUtils]: 2: Hoare triple {145#true} assume !(~head.base != 0 || ~head.offset != 0); {145#true} is VALID [2020-07-18 05:16:40,670 INFO L280 TraceCheckUtils]: 3: Hoare triple {145#true} #res := ~len~0; {145#true} is VALID [2020-07-18 05:16:40,671 INFO L280 TraceCheckUtils]: 4: Hoare triple {145#true} assume true; {145#true} is VALID [2020-07-18 05:16:40,671 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {145#true} {146#false} #253#return; {146#false} is VALID [2020-07-18 05:16:40,673 INFO L263 TraceCheckUtils]: 0: Hoare triple {145#true} call ULTIMATE.init(); {178#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 05:16:40,673 INFO L280 TraceCheckUtils]: 1: Hoare triple {178#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {145#true} is VALID [2020-07-18 05:16:40,674 INFO L280 TraceCheckUtils]: 2: Hoare triple {145#true} #valid := #valid[0 := 0]; {145#true} is VALID [2020-07-18 05:16:40,674 INFO L280 TraceCheckUtils]: 3: Hoare triple {145#true} assume 0 < #StackHeapBarrier; {145#true} is VALID [2020-07-18 05:16:40,675 INFO L280 TraceCheckUtils]: 4: Hoare triple {145#true} assume true; {145#true} is VALID [2020-07-18 05:16:40,675 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {145#true} {145#true} #259#return; {145#true} is VALID [2020-07-18 05:16:40,675 INFO L263 TraceCheckUtils]: 6: Hoare triple {145#true} call #t~ret24 := main(); {145#true} is VALID [2020-07-18 05:16:40,676 INFO L263 TraceCheckUtils]: 7: Hoare triple {145#true} call #t~ret14 := _get_nondet_int(2, 5); {145#true} is VALID [2020-07-18 05:16:40,676 INFO L280 TraceCheckUtils]: 8: Hoare triple {145#true} ~from := #in~from; {145#true} is VALID [2020-07-18 05:16:40,676 INFO L280 TraceCheckUtils]: 9: Hoare triple {145#true} ~until := #in~until; {145#true} is VALID [2020-07-18 05:16:40,677 INFO L280 TraceCheckUtils]: 10: Hoare triple {145#true} ~len~1 := ~from; {145#true} is VALID [2020-07-18 05:16:40,677 INFO L280 TraceCheckUtils]: 11: Hoare triple {145#true} assume !true; {146#false} is VALID [2020-07-18 05:16:40,678 INFO L280 TraceCheckUtils]: 12: Hoare triple {146#false} #res := ~len~1; {146#false} is VALID [2020-07-18 05:16:40,678 INFO L280 TraceCheckUtils]: 13: Hoare triple {146#false} assume true; {146#false} is VALID [2020-07-18 05:16:40,678 INFO L275 TraceCheckUtils]: 14: Hoare quadruple {146#false} {145#true} #243#return; {146#false} is VALID [2020-07-18 05:16:40,679 INFO L280 TraceCheckUtils]: 15: Hoare triple {146#false} assume -2147483648 <= #t~ret14 && #t~ret14 <= 2147483647; {146#false} is VALID [2020-07-18 05:16:40,679 INFO L280 TraceCheckUtils]: 16: Hoare triple {146#false} ~len~2 := #t~ret14; {146#false} is VALID [2020-07-18 05:16:40,679 INFO L280 TraceCheckUtils]: 17: Hoare triple {146#false} havoc #t~ret14; {146#false} is VALID [2020-07-18 05:16:40,680 INFO L280 TraceCheckUtils]: 18: Hoare triple {146#false} SUMMARY for call ~#s~0.base, ~#s~0.offset := #Ultimate.allocOnStack(4); srcloc: L617 {146#false} is VALID [2020-07-18 05:16:40,680 INFO L263 TraceCheckUtils]: 19: Hoare triple {146#false} call #t~ret15.base, #t~ret15.offset := sll_create(~len~2); {179#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-18 05:16:40,681 INFO L280 TraceCheckUtils]: 20: Hoare triple {179#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~len := #in~len; {145#true} is VALID [2020-07-18 05:16:40,681 INFO L280 TraceCheckUtils]: 21: Hoare triple {145#true} ~head~0.base, ~head~0.offset := 0, 0; {145#true} is VALID [2020-07-18 05:16:40,682 INFO L280 TraceCheckUtils]: 22: Hoare triple {145#true} assume !true; {146#false} is VALID [2020-07-18 05:16:40,682 INFO L280 TraceCheckUtils]: 23: Hoare triple {146#false} #res.base, #res.offset := ~head~0.base, ~head~0.offset; {146#false} is VALID [2020-07-18 05:16:40,683 INFO L280 TraceCheckUtils]: 24: Hoare triple {146#false} assume true; {146#false} is VALID [2020-07-18 05:16:40,683 INFO L275 TraceCheckUtils]: 25: Hoare quadruple {146#false} {146#false} #245#return; {146#false} is VALID [2020-07-18 05:16:40,683 INFO L280 TraceCheckUtils]: 26: Hoare triple {146#false} SUMMARY for call write~init~$Pointer$(#t~ret15.base, #t~ret15.offset, ~#s~0.base, ~#s~0.offset, 4); srcloc: L617-2 {146#false} is VALID [2020-07-18 05:16:40,684 INFO L280 TraceCheckUtils]: 27: Hoare triple {146#false} havoc #t~ret15.base, #t~ret15.offset; {146#false} is VALID [2020-07-18 05:16:40,684 INFO L263 TraceCheckUtils]: 28: Hoare triple {146#false} call #t~ret16 := _get_nondet_int(0, ~len~2 - 1); {145#true} is VALID [2020-07-18 05:16:40,684 INFO L280 TraceCheckUtils]: 29: Hoare triple {145#true} ~from := #in~from; {145#true} is VALID [2020-07-18 05:16:40,685 INFO L280 TraceCheckUtils]: 30: Hoare triple {145#true} ~until := #in~until; {145#true} is VALID [2020-07-18 05:16:40,685 INFO L280 TraceCheckUtils]: 31: Hoare triple {145#true} ~len~1 := ~from; {145#true} is VALID [2020-07-18 05:16:40,686 INFO L280 TraceCheckUtils]: 32: Hoare triple {145#true} assume !true; {146#false} is VALID [2020-07-18 05:16:40,686 INFO L280 TraceCheckUtils]: 33: Hoare triple {146#false} #res := ~len~1; {146#false} is VALID [2020-07-18 05:16:40,687 INFO L280 TraceCheckUtils]: 34: Hoare triple {146#false} assume true; {146#false} is VALID [2020-07-18 05:16:40,687 INFO L275 TraceCheckUtils]: 35: Hoare quadruple {146#false} {146#false} #247#return; {146#false} is VALID [2020-07-18 05:16:40,687 INFO L280 TraceCheckUtils]: 36: Hoare triple {146#false} assume -2147483648 <= #t~ret16 && #t~ret16 <= 2147483647; {146#false} is VALID [2020-07-18 05:16:40,688 INFO L280 TraceCheckUtils]: 37: Hoare triple {146#false} ~k~0 := #t~ret16; {146#false} is VALID [2020-07-18 05:16:40,688 INFO L280 TraceCheckUtils]: 38: Hoare triple {146#false} havoc #t~ret16; {146#false} is VALID [2020-07-18 05:16:40,688 INFO L280 TraceCheckUtils]: 39: Hoare triple {146#false} ~i~0 := 0; {146#false} is VALID [2020-07-18 05:16:40,689 INFO L280 TraceCheckUtils]: 40: Hoare triple {146#false} assume !true; {146#false} is VALID [2020-07-18 05:16:40,689 INFO L280 TraceCheckUtils]: 41: Hoare triple {146#false} SUMMARY for call #t~mem21.base, #t~mem21.offset := read~$Pointer$(~#s~0.base, ~#s~0.offset, 4); srcloc: L620-12 {146#false} is VALID [2020-07-18 05:16:40,689 INFO L263 TraceCheckUtils]: 42: Hoare triple {146#false} call #t~ret22 := sll_length(#t~mem21.base, #t~mem21.offset); {145#true} is VALID [2020-07-18 05:16:40,690 INFO L280 TraceCheckUtils]: 43: Hoare triple {145#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {145#true} is VALID [2020-07-18 05:16:40,690 INFO L280 TraceCheckUtils]: 44: Hoare triple {145#true} ~len~0 := 0; {145#true} is VALID [2020-07-18 05:16:40,690 INFO L280 TraceCheckUtils]: 45: Hoare triple {145#true} assume !(~head.base != 0 || ~head.offset != 0); {145#true} is VALID [2020-07-18 05:16:40,691 INFO L280 TraceCheckUtils]: 46: Hoare triple {145#true} #res := ~len~0; {145#true} is VALID [2020-07-18 05:16:40,691 INFO L280 TraceCheckUtils]: 47: Hoare triple {145#true} assume true; {145#true} is VALID [2020-07-18 05:16:40,691 INFO L275 TraceCheckUtils]: 48: Hoare quadruple {145#true} {146#false} #253#return; {146#false} is VALID [2020-07-18 05:16:40,692 INFO L280 TraceCheckUtils]: 49: Hoare triple {146#false} assume -2147483648 <= #t~ret22 && #t~ret22 <= 2147483647; {146#false} is VALID [2020-07-18 05:16:40,692 INFO L280 TraceCheckUtils]: 50: Hoare triple {146#false} assume ~k~0 + ~len~2 != #t~ret22; {146#false} is VALID [2020-07-18 05:16:40,692 INFO L280 TraceCheckUtils]: 51: Hoare triple {146#false} havoc #t~ret22; {146#false} is VALID [2020-07-18 05:16:40,693 INFO L280 TraceCheckUtils]: 52: Hoare triple {146#false} havoc #t~mem21.base, #t~mem21.offset; {146#false} is VALID [2020-07-18 05:16:40,693 INFO L280 TraceCheckUtils]: 53: Hoare triple {146#false} assume !false; {146#false} is VALID [2020-07-18 05:16:40,702 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2020-07-18 05:16:40,703 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [75430161] [2020-07-18 05:16:40,705 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-18 05:16:40,705 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2020-07-18 05:16:40,706 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [892568638] [2020-07-18 05:16:40,713 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 54 [2020-07-18 05:16:40,717 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 05:16:40,721 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2020-07-18 05:16:40,794 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:16:40,794 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2020-07-18 05:16:40,794 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 05:16:40,803 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2020-07-18 05:16:40,804 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2020-07-18 05:16:40,807 INFO L87 Difference]: Start difference. First operand 142 states. Second operand 4 states. [2020-07-18 05:16:41,891 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:16:41,891 INFO L93 Difference]: Finished difference Result 289 states and 337 transitions. [2020-07-18 05:16:41,891 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2020-07-18 05:16:41,892 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 54 [2020-07-18 05:16:41,892 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 05:16:41,900 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-18 05:16:41,935 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 337 transitions. [2020-07-18 05:16:41,935 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-18 05:16:41,945 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 337 transitions. [2020-07-18 05:16:41,946 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 337 transitions. [2020-07-18 05:16:42,396 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 337 edges. 337 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:16:42,415 INFO L225 Difference]: With dead ends: 289 [2020-07-18 05:16:42,415 INFO L226 Difference]: Without dead ends: 123 [2020-07-18 05:16:42,420 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 14 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2020-07-18 05:16:42,443 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 123 states. [2020-07-18 05:16:42,606 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 123 to 114. [2020-07-18 05:16:42,607 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 05:16:42,607 INFO L82 GeneralOperation]: Start isEquivalent. First operand 123 states. Second operand 114 states. [2020-07-18 05:16:42,608 INFO L74 IsIncluded]: Start isIncluded. First operand 123 states. Second operand 114 states. [2020-07-18 05:16:42,608 INFO L87 Difference]: Start difference. First operand 123 states. Second operand 114 states. [2020-07-18 05:16:42,618 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:16:42,618 INFO L93 Difference]: Finished difference Result 123 states and 133 transitions. [2020-07-18 05:16:42,619 INFO L276 IsEmpty]: Start isEmpty. Operand 123 states and 133 transitions. [2020-07-18 05:16:42,621 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 05:16:42,621 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 05:16:42,621 INFO L74 IsIncluded]: Start isIncluded. First operand 114 states. Second operand 123 states. [2020-07-18 05:16:42,622 INFO L87 Difference]: Start difference. First operand 114 states. Second operand 123 states. [2020-07-18 05:16:42,629 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:16:42,629 INFO L93 Difference]: Finished difference Result 123 states and 133 transitions. [2020-07-18 05:16:42,630 INFO L276 IsEmpty]: Start isEmpty. Operand 123 states and 133 transitions. [2020-07-18 05:16:42,631 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 05:16:42,631 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 05:16:42,632 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 05:16:42,632 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 05:16:42,632 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 114 states. [2020-07-18 05:16:42,637 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 114 states to 114 states and 123 transitions. [2020-07-18 05:16:42,639 INFO L78 Accepts]: Start accepts. Automaton has 114 states and 123 transitions. Word has length 54 [2020-07-18 05:16:42,640 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 05:16:42,640 INFO L479 AbstractCegarLoop]: Abstraction has 114 states and 123 transitions. [2020-07-18 05:16:42,640 INFO L480 AbstractCegarLoop]: Interpolant automaton has 4 states. [2020-07-18 05:16:42,640 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 114 states and 123 transitions. [2020-07-18 05:16:42,773 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 123 edges. 123 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:16:42,773 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 123 transitions. [2020-07-18 05:16:42,776 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 70 [2020-07-18 05:16:42,777 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 05:16:42,777 INFO L422 BasicCegarLoop]: trace histogram [2, 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] [2020-07-18 05:16:42,777 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2020-07-18 05:16:42,777 INFO L427 AbstractCegarLoop]: === Iteration 2 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 05:16:42,778 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 05:16:42,778 INFO L82 PathProgramCache]: Analyzing trace with hash 333013349, now seen corresponding path program 1 times [2020-07-18 05:16:42,778 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 05:16:42,779 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1910520391] [2020-07-18 05:16:42,779 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 05:16:42,817 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:16:42,894 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:16:42,905 INFO L280 TraceCheckUtils]: 0: Hoare triple {1281#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {1237#true} is VALID [2020-07-18 05:16:42,906 INFO L280 TraceCheckUtils]: 1: Hoare triple {1237#true} #valid := #valid[0 := 0]; {1237#true} is VALID [2020-07-18 05:16:42,907 INFO L280 TraceCheckUtils]: 2: Hoare triple {1237#true} assume 0 < #StackHeapBarrier; {1237#true} is VALID [2020-07-18 05:16:42,908 INFO L280 TraceCheckUtils]: 3: Hoare triple {1237#true} assume true; {1237#true} is VALID [2020-07-18 05:16:42,908 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {1237#true} {1237#true} #259#return; {1237#true} is VALID [2020-07-18 05:16:42,915 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:16:43,132 INFO L280 TraceCheckUtils]: 0: Hoare triple {1237#true} ~from := #in~from; {1282#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:16:43,135 INFO L280 TraceCheckUtils]: 1: Hoare triple {1282#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~until := #in~until; {1283#(and (or (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (= |_get_nondet_int_#in~from| _get_nondet_int_~from))} is VALID [2020-07-18 05:16:43,136 INFO L280 TraceCheckUtils]: 2: Hoare triple {1283#(and (or (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (= |_get_nondet_int_#in~from| _get_nondet_int_~from))} ~len~1 := ~from; {1284#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:43,137 INFO L280 TraceCheckUtils]: 3: Hoare triple {1284#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} #t~short12 := ~len~1 < ~until; {1285#(or (not (= 5 |_get_nondet_int_#in~until|)) |_get_nondet_int_#t~short12| (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:43,140 INFO L280 TraceCheckUtils]: 4: Hoare triple {1285#(or (not (= 5 |_get_nondet_int_#in~until|)) |_get_nondet_int_#t~short12| (not (= 2 |_get_nondet_int_#in~from|)))} assume !#t~short12; {1286#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:43,141 INFO L280 TraceCheckUtils]: 5: Hoare triple {1286#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} assume !#t~short12; {1286#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:43,142 INFO L280 TraceCheckUtils]: 6: Hoare triple {1286#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} havoc #t~nondet11; {1286#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:43,142 INFO L280 TraceCheckUtils]: 7: Hoare triple {1286#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} havoc #t~short12; {1286#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:43,143 INFO L280 TraceCheckUtils]: 8: Hoare triple {1286#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} #res := ~len~1; {1286#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:43,144 INFO L280 TraceCheckUtils]: 9: Hoare triple {1286#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} assume true; {1286#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:43,145 INFO L275 TraceCheckUtils]: 10: Hoare quadruple {1286#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} {1237#true} #243#return; {1238#false} is VALID [2020-07-18 05:16:43,172 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:16:43,179 INFO L280 TraceCheckUtils]: 0: Hoare triple {1287#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~len := #in~len; {1237#true} is VALID [2020-07-18 05:16:43,180 INFO L280 TraceCheckUtils]: 1: Hoare triple {1237#true} ~head~0.base, ~head~0.offset := 0, 0; {1237#true} is VALID [2020-07-18 05:16:43,180 INFO L280 TraceCheckUtils]: 2: Hoare triple {1237#true} #t~post2 := ~len; {1237#true} is VALID [2020-07-18 05:16:43,180 INFO L280 TraceCheckUtils]: 3: Hoare triple {1237#true} ~len := #t~post2 - 1; {1237#true} is VALID [2020-07-18 05:16:43,181 INFO L280 TraceCheckUtils]: 4: Hoare triple {1237#true} assume !(#t~post2 > 0); {1237#true} is VALID [2020-07-18 05:16:43,181 INFO L280 TraceCheckUtils]: 5: Hoare triple {1237#true} havoc #t~post2; {1237#true} is VALID [2020-07-18 05:16:43,181 INFO L280 TraceCheckUtils]: 6: Hoare triple {1237#true} #res.base, #res.offset := ~head~0.base, ~head~0.offset; {1237#true} is VALID [2020-07-18 05:16:43,181 INFO L280 TraceCheckUtils]: 7: Hoare triple {1237#true} assume true; {1237#true} is VALID [2020-07-18 05:16:43,182 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {1237#true} {1238#false} #245#return; {1238#false} is VALID [2020-07-18 05:16:43,185 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:16:43,191 INFO L280 TraceCheckUtils]: 0: Hoare triple {1237#true} ~from := #in~from; {1237#true} is VALID [2020-07-18 05:16:43,191 INFO L280 TraceCheckUtils]: 1: Hoare triple {1237#true} ~until := #in~until; {1237#true} is VALID [2020-07-18 05:16:43,191 INFO L280 TraceCheckUtils]: 2: Hoare triple {1237#true} ~len~1 := ~from; {1237#true} is VALID [2020-07-18 05:16:43,192 INFO L280 TraceCheckUtils]: 3: Hoare triple {1237#true} #t~short12 := ~len~1 < ~until; {1237#true} is VALID [2020-07-18 05:16:43,192 INFO L280 TraceCheckUtils]: 4: Hoare triple {1237#true} assume !#t~short12; {1237#true} is VALID [2020-07-18 05:16:43,192 INFO L280 TraceCheckUtils]: 5: Hoare triple {1237#true} assume !#t~short12; {1237#true} is VALID [2020-07-18 05:16:43,192 INFO L280 TraceCheckUtils]: 6: Hoare triple {1237#true} havoc #t~nondet11; {1237#true} is VALID [2020-07-18 05:16:43,193 INFO L280 TraceCheckUtils]: 7: Hoare triple {1237#true} havoc #t~short12; {1237#true} is VALID [2020-07-18 05:16:43,193 INFO L280 TraceCheckUtils]: 8: Hoare triple {1237#true} #res := ~len~1; {1237#true} is VALID [2020-07-18 05:16:43,193 INFO L280 TraceCheckUtils]: 9: Hoare triple {1237#true} assume true; {1237#true} is VALID [2020-07-18 05:16:43,194 INFO L275 TraceCheckUtils]: 10: Hoare quadruple {1237#true} {1238#false} #247#return; {1238#false} is VALID [2020-07-18 05:16:43,196 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:16:43,201 INFO L280 TraceCheckUtils]: 0: Hoare triple {1237#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {1237#true} is VALID [2020-07-18 05:16:43,201 INFO L280 TraceCheckUtils]: 1: Hoare triple {1237#true} ~len~0 := 0; {1237#true} is VALID [2020-07-18 05:16:43,202 INFO L280 TraceCheckUtils]: 2: Hoare triple {1237#true} assume !(~head.base != 0 || ~head.offset != 0); {1237#true} is VALID [2020-07-18 05:16:43,202 INFO L280 TraceCheckUtils]: 3: Hoare triple {1237#true} #res := ~len~0; {1237#true} is VALID [2020-07-18 05:16:43,202 INFO L280 TraceCheckUtils]: 4: Hoare triple {1237#true} assume true; {1237#true} is VALID [2020-07-18 05:16:43,203 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {1237#true} {1238#false} #253#return; {1238#false} is VALID [2020-07-18 05:16:43,204 INFO L263 TraceCheckUtils]: 0: Hoare triple {1237#true} call ULTIMATE.init(); {1281#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 05:16:43,204 INFO L280 TraceCheckUtils]: 1: Hoare triple {1281#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {1237#true} is VALID [2020-07-18 05:16:43,204 INFO L280 TraceCheckUtils]: 2: Hoare triple {1237#true} #valid := #valid[0 := 0]; {1237#true} is VALID [2020-07-18 05:16:43,205 INFO L280 TraceCheckUtils]: 3: Hoare triple {1237#true} assume 0 < #StackHeapBarrier; {1237#true} is VALID [2020-07-18 05:16:43,205 INFO L280 TraceCheckUtils]: 4: Hoare triple {1237#true} assume true; {1237#true} is VALID [2020-07-18 05:16:43,205 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {1237#true} {1237#true} #259#return; {1237#true} is VALID [2020-07-18 05:16:43,205 INFO L263 TraceCheckUtils]: 6: Hoare triple {1237#true} call #t~ret24 := main(); {1237#true} is VALID [2020-07-18 05:16:43,206 INFO L263 TraceCheckUtils]: 7: Hoare triple {1237#true} call #t~ret14 := _get_nondet_int(2, 5); {1237#true} is VALID [2020-07-18 05:16:43,206 INFO L280 TraceCheckUtils]: 8: Hoare triple {1237#true} ~from := #in~from; {1282#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:16:43,207 INFO L280 TraceCheckUtils]: 9: Hoare triple {1282#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~until := #in~until; {1283#(and (or (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (= |_get_nondet_int_#in~from| _get_nondet_int_~from))} is VALID [2020-07-18 05:16:43,208 INFO L280 TraceCheckUtils]: 10: Hoare triple {1283#(and (or (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (= |_get_nondet_int_#in~from| _get_nondet_int_~from))} ~len~1 := ~from; {1284#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:43,209 INFO L280 TraceCheckUtils]: 11: Hoare triple {1284#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} #t~short12 := ~len~1 < ~until; {1285#(or (not (= 5 |_get_nondet_int_#in~until|)) |_get_nondet_int_#t~short12| (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:43,210 INFO L280 TraceCheckUtils]: 12: Hoare triple {1285#(or (not (= 5 |_get_nondet_int_#in~until|)) |_get_nondet_int_#t~short12| (not (= 2 |_get_nondet_int_#in~from|)))} assume !#t~short12; {1286#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:43,211 INFO L280 TraceCheckUtils]: 13: Hoare triple {1286#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} assume !#t~short12; {1286#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:43,212 INFO L280 TraceCheckUtils]: 14: Hoare triple {1286#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} havoc #t~nondet11; {1286#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:43,212 INFO L280 TraceCheckUtils]: 15: Hoare triple {1286#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} havoc #t~short12; {1286#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:43,213 INFO L280 TraceCheckUtils]: 16: Hoare triple {1286#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} #res := ~len~1; {1286#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:43,236 INFO L280 TraceCheckUtils]: 17: Hoare triple {1286#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} assume true; {1286#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:43,237 INFO L275 TraceCheckUtils]: 18: Hoare quadruple {1286#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} {1237#true} #243#return; {1238#false} is VALID [2020-07-18 05:16:43,237 INFO L280 TraceCheckUtils]: 19: Hoare triple {1238#false} assume -2147483648 <= #t~ret14 && #t~ret14 <= 2147483647; {1238#false} is VALID [2020-07-18 05:16:43,238 INFO L280 TraceCheckUtils]: 20: Hoare triple {1238#false} ~len~2 := #t~ret14; {1238#false} is VALID [2020-07-18 05:16:43,238 INFO L280 TraceCheckUtils]: 21: Hoare triple {1238#false} havoc #t~ret14; {1238#false} is VALID [2020-07-18 05:16:43,238 INFO L280 TraceCheckUtils]: 22: Hoare triple {1238#false} SUMMARY for call ~#s~0.base, ~#s~0.offset := #Ultimate.allocOnStack(4); srcloc: L617 {1238#false} is VALID [2020-07-18 05:16:43,238 INFO L263 TraceCheckUtils]: 23: Hoare triple {1238#false} call #t~ret15.base, #t~ret15.offset := sll_create(~len~2); {1287#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-18 05:16:43,239 INFO L280 TraceCheckUtils]: 24: Hoare triple {1287#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~len := #in~len; {1237#true} is VALID [2020-07-18 05:16:43,239 INFO L280 TraceCheckUtils]: 25: Hoare triple {1237#true} ~head~0.base, ~head~0.offset := 0, 0; {1237#true} is VALID [2020-07-18 05:16:43,239 INFO L280 TraceCheckUtils]: 26: Hoare triple {1237#true} #t~post2 := ~len; {1237#true} is VALID [2020-07-18 05:16:43,239 INFO L280 TraceCheckUtils]: 27: Hoare triple {1237#true} ~len := #t~post2 - 1; {1237#true} is VALID [2020-07-18 05:16:43,240 INFO L280 TraceCheckUtils]: 28: Hoare triple {1237#true} assume !(#t~post2 > 0); {1237#true} is VALID [2020-07-18 05:16:43,240 INFO L280 TraceCheckUtils]: 29: Hoare triple {1237#true} havoc #t~post2; {1237#true} is VALID [2020-07-18 05:16:43,240 INFO L280 TraceCheckUtils]: 30: Hoare triple {1237#true} #res.base, #res.offset := ~head~0.base, ~head~0.offset; {1237#true} is VALID [2020-07-18 05:16:43,240 INFO L280 TraceCheckUtils]: 31: Hoare triple {1237#true} assume true; {1237#true} is VALID [2020-07-18 05:16:43,241 INFO L275 TraceCheckUtils]: 32: Hoare quadruple {1237#true} {1238#false} #245#return; {1238#false} is VALID [2020-07-18 05:16:43,241 INFO L280 TraceCheckUtils]: 33: Hoare triple {1238#false} SUMMARY for call write~init~$Pointer$(#t~ret15.base, #t~ret15.offset, ~#s~0.base, ~#s~0.offset, 4); srcloc: L617-2 {1238#false} is VALID [2020-07-18 05:16:43,241 INFO L280 TraceCheckUtils]: 34: Hoare triple {1238#false} havoc #t~ret15.base, #t~ret15.offset; {1238#false} is VALID [2020-07-18 05:16:43,242 INFO L263 TraceCheckUtils]: 35: Hoare triple {1238#false} call #t~ret16 := _get_nondet_int(0, ~len~2 - 1); {1237#true} is VALID [2020-07-18 05:16:43,242 INFO L280 TraceCheckUtils]: 36: Hoare triple {1237#true} ~from := #in~from; {1237#true} is VALID [2020-07-18 05:16:43,242 INFO L280 TraceCheckUtils]: 37: Hoare triple {1237#true} ~until := #in~until; {1237#true} is VALID [2020-07-18 05:16:43,242 INFO L280 TraceCheckUtils]: 38: Hoare triple {1237#true} ~len~1 := ~from; {1237#true} is VALID [2020-07-18 05:16:43,243 INFO L280 TraceCheckUtils]: 39: Hoare triple {1237#true} #t~short12 := ~len~1 < ~until; {1237#true} is VALID [2020-07-18 05:16:43,243 INFO L280 TraceCheckUtils]: 40: Hoare triple {1237#true} assume !#t~short12; {1237#true} is VALID [2020-07-18 05:16:43,243 INFO L280 TraceCheckUtils]: 41: Hoare triple {1237#true} assume !#t~short12; {1237#true} is VALID [2020-07-18 05:16:43,243 INFO L280 TraceCheckUtils]: 42: Hoare triple {1237#true} havoc #t~nondet11; {1237#true} is VALID [2020-07-18 05:16:43,244 INFO L280 TraceCheckUtils]: 43: Hoare triple {1237#true} havoc #t~short12; {1237#true} is VALID [2020-07-18 05:16:43,244 INFO L280 TraceCheckUtils]: 44: Hoare triple {1237#true} #res := ~len~1; {1237#true} is VALID [2020-07-18 05:16:43,244 INFO L280 TraceCheckUtils]: 45: Hoare triple {1237#true} assume true; {1237#true} is VALID [2020-07-18 05:16:43,244 INFO L275 TraceCheckUtils]: 46: Hoare quadruple {1237#true} {1238#false} #247#return; {1238#false} is VALID [2020-07-18 05:16:43,245 INFO L280 TraceCheckUtils]: 47: Hoare triple {1238#false} assume -2147483648 <= #t~ret16 && #t~ret16 <= 2147483647; {1238#false} is VALID [2020-07-18 05:16:43,245 INFO L280 TraceCheckUtils]: 48: Hoare triple {1238#false} ~k~0 := #t~ret16; {1238#false} is VALID [2020-07-18 05:16:43,245 INFO L280 TraceCheckUtils]: 49: Hoare triple {1238#false} havoc #t~ret16; {1238#false} is VALID [2020-07-18 05:16:43,245 INFO L280 TraceCheckUtils]: 50: Hoare triple {1238#false} ~i~0 := 0; {1238#false} is VALID [2020-07-18 05:16:43,246 INFO L280 TraceCheckUtils]: 51: Hoare triple {1238#false} #t~short18 := ~i~0 < ~k~0; {1238#false} is VALID [2020-07-18 05:16:43,246 INFO L280 TraceCheckUtils]: 52: Hoare triple {1238#false} assume !#t~short18; {1238#false} is VALID [2020-07-18 05:16:43,246 INFO L280 TraceCheckUtils]: 53: Hoare triple {1238#false} assume !#t~short18; {1238#false} is VALID [2020-07-18 05:16:43,246 INFO L280 TraceCheckUtils]: 54: Hoare triple {1238#false} havoc #t~nondet17; {1238#false} is VALID [2020-07-18 05:16:43,247 INFO L280 TraceCheckUtils]: 55: Hoare triple {1238#false} havoc #t~short18; {1238#false} is VALID [2020-07-18 05:16:43,247 INFO L280 TraceCheckUtils]: 56: Hoare triple {1238#false} SUMMARY for call #t~mem21.base, #t~mem21.offset := read~$Pointer$(~#s~0.base, ~#s~0.offset, 4); srcloc: L620-12 {1238#false} is VALID [2020-07-18 05:16:43,247 INFO L263 TraceCheckUtils]: 57: Hoare triple {1238#false} call #t~ret22 := sll_length(#t~mem21.base, #t~mem21.offset); {1237#true} is VALID [2020-07-18 05:16:43,247 INFO L280 TraceCheckUtils]: 58: Hoare triple {1237#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {1237#true} is VALID [2020-07-18 05:16:43,248 INFO L280 TraceCheckUtils]: 59: Hoare triple {1237#true} ~len~0 := 0; {1237#true} is VALID [2020-07-18 05:16:43,248 INFO L280 TraceCheckUtils]: 60: Hoare triple {1237#true} assume !(~head.base != 0 || ~head.offset != 0); {1237#true} is VALID [2020-07-18 05:16:43,248 INFO L280 TraceCheckUtils]: 61: Hoare triple {1237#true} #res := ~len~0; {1237#true} is VALID [2020-07-18 05:16:43,248 INFO L280 TraceCheckUtils]: 62: Hoare triple {1237#true} assume true; {1237#true} is VALID [2020-07-18 05:16:43,249 INFO L275 TraceCheckUtils]: 63: Hoare quadruple {1237#true} {1238#false} #253#return; {1238#false} is VALID [2020-07-18 05:16:43,249 INFO L280 TraceCheckUtils]: 64: Hoare triple {1238#false} assume -2147483648 <= #t~ret22 && #t~ret22 <= 2147483647; {1238#false} is VALID [2020-07-18 05:16:43,249 INFO L280 TraceCheckUtils]: 65: Hoare triple {1238#false} assume ~k~0 + ~len~2 != #t~ret22; {1238#false} is VALID [2020-07-18 05:16:43,249 INFO L280 TraceCheckUtils]: 66: Hoare triple {1238#false} havoc #t~ret22; {1238#false} is VALID [2020-07-18 05:16:43,250 INFO L280 TraceCheckUtils]: 67: Hoare triple {1238#false} havoc #t~mem21.base, #t~mem21.offset; {1238#false} is VALID [2020-07-18 05:16:43,250 INFO L280 TraceCheckUtils]: 68: Hoare triple {1238#false} assume !false; {1238#false} is VALID [2020-07-18 05:16:43,257 INFO L134 CoverageAnalysis]: Checked inductivity of 11 backedges. 0 proven. 10 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2020-07-18 05:16:43,257 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1910520391] [2020-07-18 05:16:43,258 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2020-07-18 05:16:43,258 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9] total 9 [2020-07-18 05:16:43,258 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [249241429] [2020-07-18 05:16:43,260 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 69 [2020-07-18 05:16:43,260 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 05:16:43,261 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states. [2020-07-18 05:16:43,349 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:16:43,349 INFO L459 AbstractCegarLoop]: Interpolant automaton has 9 states [2020-07-18 05:16:43,349 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 05:16:43,350 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2020-07-18 05:16:43,350 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2020-07-18 05:16:43,350 INFO L87 Difference]: Start difference. First operand 114 states and 123 transitions. Second operand 9 states. [2020-07-18 05:16:45,642 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:16:45,642 INFO L93 Difference]: Finished difference Result 275 states and 301 transitions. [2020-07-18 05:16:45,642 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2020-07-18 05:16:45,643 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 69 [2020-07-18 05:16:45,643 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 05:16:45,643 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2020-07-18 05:16:45,656 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 301 transitions. [2020-07-18 05:16:45,656 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2020-07-18 05:16:45,664 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 301 transitions. [2020-07-18 05:16:45,664 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 301 transitions. [2020-07-18 05:16:46,047 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 301 edges. 301 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:16:46,057 INFO L225 Difference]: With dead ends: 275 [2020-07-18 05:16:46,057 INFO L226 Difference]: Without dead ends: 169 [2020-07-18 05:16:46,059 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 32 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 32 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=117, Invalid=225, Unknown=0, NotChecked=0, Total=342 [2020-07-18 05:16:46,060 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 169 states. [2020-07-18 05:16:46,370 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 169 to 134. [2020-07-18 05:16:46,370 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 05:16:46,370 INFO L82 GeneralOperation]: Start isEquivalent. First operand 169 states. Second operand 134 states. [2020-07-18 05:16:46,370 INFO L74 IsIncluded]: Start isIncluded. First operand 169 states. Second operand 134 states. [2020-07-18 05:16:46,371 INFO L87 Difference]: Start difference. First operand 169 states. Second operand 134 states. [2020-07-18 05:16:46,387 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:16:46,388 INFO L93 Difference]: Finished difference Result 169 states and 185 transitions. [2020-07-18 05:16:46,388 INFO L276 IsEmpty]: Start isEmpty. Operand 169 states and 185 transitions. [2020-07-18 05:16:46,391 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 05:16:46,392 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 05:16:46,393 INFO L74 IsIncluded]: Start isIncluded. First operand 134 states. Second operand 169 states. [2020-07-18 05:16:46,393 INFO L87 Difference]: Start difference. First operand 134 states. Second operand 169 states. [2020-07-18 05:16:46,407 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:16:46,407 INFO L93 Difference]: Finished difference Result 169 states and 185 transitions. [2020-07-18 05:16:46,407 INFO L276 IsEmpty]: Start isEmpty. Operand 169 states and 185 transitions. [2020-07-18 05:16:46,408 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 05:16:46,408 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 05:16:46,408 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 05:16:46,408 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 05:16:46,409 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 134 states. [2020-07-18 05:16:46,417 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 134 states to 134 states and 145 transitions. [2020-07-18 05:16:46,417 INFO L78 Accepts]: Start accepts. Automaton has 134 states and 145 transitions. Word has length 69 [2020-07-18 05:16:46,419 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 05:16:46,419 INFO L479 AbstractCegarLoop]: Abstraction has 134 states and 145 transitions. [2020-07-18 05:16:46,419 INFO L480 AbstractCegarLoop]: Interpolant automaton has 9 states. [2020-07-18 05:16:46,419 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 134 states and 145 transitions. [2020-07-18 05:16:46,627 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 145 edges. 145 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:16:46,628 INFO L276 IsEmpty]: Start isEmpty. Operand 134 states and 145 transitions. [2020-07-18 05:16:46,631 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 72 [2020-07-18 05:16:46,631 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 05:16:46,631 INFO L422 BasicCegarLoop]: trace histogram [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] [2020-07-18 05:16:46,632 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2020-07-18 05:16:46,632 INFO L427 AbstractCegarLoop]: === Iteration 3 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 05:16:46,632 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 05:16:46,633 INFO L82 PathProgramCache]: Analyzing trace with hash -1735568478, now seen corresponding path program 1 times [2020-07-18 05:16:46,633 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 05:16:46,633 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [928394838] [2020-07-18 05:16:46,633 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 05:16:46,701 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:16:46,780 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:16:46,785 INFO L280 TraceCheckUtils]: 0: Hoare triple {2520#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {2472#true} is VALID [2020-07-18 05:16:46,785 INFO L280 TraceCheckUtils]: 1: Hoare triple {2472#true} #valid := #valid[0 := 0]; {2472#true} is VALID [2020-07-18 05:16:46,786 INFO L280 TraceCheckUtils]: 2: Hoare triple {2472#true} assume 0 < #StackHeapBarrier; {2472#true} is VALID [2020-07-18 05:16:46,786 INFO L280 TraceCheckUtils]: 3: Hoare triple {2472#true} assume true; {2472#true} is VALID [2020-07-18 05:16:46,786 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {2472#true} {2472#true} #259#return; {2472#true} is VALID [2020-07-18 05:16:46,790 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:16:46,865 INFO L280 TraceCheckUtils]: 0: Hoare triple {2472#true} ~from := #in~from; {2521#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:16:46,867 INFO L280 TraceCheckUtils]: 1: Hoare triple {2521#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~until := #in~until; {2521#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:16:46,867 INFO L280 TraceCheckUtils]: 2: Hoare triple {2521#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~len~1 := ~from; {2522#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:16:46,868 INFO L280 TraceCheckUtils]: 3: Hoare triple {2522#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #t~short12 := ~len~1 < ~until; {2522#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:16:46,869 INFO L280 TraceCheckUtils]: 4: Hoare triple {2522#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume #t~short12; {2522#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:16:46,869 INFO L280 TraceCheckUtils]: 5: Hoare triple {2522#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {2522#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:16:46,870 INFO L280 TraceCheckUtils]: 6: Hoare triple {2522#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #t~short12 := 0 != #t~nondet11; {2522#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:16:46,871 INFO L280 TraceCheckUtils]: 7: Hoare triple {2522#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume !#t~short12; {2522#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:16:46,871 INFO L280 TraceCheckUtils]: 8: Hoare triple {2522#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} havoc #t~nondet11; {2522#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:16:46,872 INFO L280 TraceCheckUtils]: 9: Hoare triple {2522#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} havoc #t~short12; {2522#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:16:46,872 INFO L280 TraceCheckUtils]: 10: Hoare triple {2522#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #res := ~len~1; {2523#(or (<= 2 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:46,873 INFO L280 TraceCheckUtils]: 11: Hoare triple {2523#(or (<= 2 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} assume true; {2523#(or (<= 2 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:46,874 INFO L275 TraceCheckUtils]: 12: Hoare quadruple {2523#(or (<= 2 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} {2472#true} #243#return; {2492#(<= 2 |main_#t~ret14|)} is VALID [2020-07-18 05:16:46,896 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:16:46,947 INFO L280 TraceCheckUtils]: 0: Hoare triple {2524#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~len := #in~len; {2525#(= |sll_create_#in~len| sll_create_~len)} is VALID [2020-07-18 05:16:46,948 INFO L280 TraceCheckUtils]: 1: Hoare triple {2525#(= |sll_create_#in~len| sll_create_~len)} ~head~0.base, ~head~0.offset := 0, 0; {2525#(= |sll_create_#in~len| sll_create_~len)} is VALID [2020-07-18 05:16:46,950 INFO L280 TraceCheckUtils]: 2: Hoare triple {2525#(= |sll_create_#in~len| sll_create_~len)} #t~post2 := ~len; {2526#(= |sll_create_#in~len| |sll_create_#t~post2|)} is VALID [2020-07-18 05:16:46,951 INFO L280 TraceCheckUtils]: 3: Hoare triple {2526#(= |sll_create_#in~len| |sll_create_#t~post2|)} ~len := #t~post2 - 1; {2526#(= |sll_create_#in~len| |sll_create_#t~post2|)} is VALID [2020-07-18 05:16:46,951 INFO L280 TraceCheckUtils]: 4: Hoare triple {2526#(= |sll_create_#in~len| |sll_create_#t~post2|)} assume !(#t~post2 > 0); {2527#(<= |sll_create_#in~len| 0)} is VALID [2020-07-18 05:16:46,952 INFO L280 TraceCheckUtils]: 5: Hoare triple {2527#(<= |sll_create_#in~len| 0)} havoc #t~post2; {2527#(<= |sll_create_#in~len| 0)} is VALID [2020-07-18 05:16:46,952 INFO L280 TraceCheckUtils]: 6: Hoare triple {2527#(<= |sll_create_#in~len| 0)} #res.base, #res.offset := ~head~0.base, ~head~0.offset; {2527#(<= |sll_create_#in~len| 0)} is VALID [2020-07-18 05:16:46,954 INFO L280 TraceCheckUtils]: 7: Hoare triple {2527#(<= |sll_create_#in~len| 0)} assume true; {2527#(<= |sll_create_#in~len| 0)} is VALID [2020-07-18 05:16:46,955 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {2527#(<= |sll_create_#in~len| 0)} {2493#(<= 2 main_~len~2)} #245#return; {2473#false} is VALID [2020-07-18 05:16:46,958 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:16:46,970 INFO L280 TraceCheckUtils]: 0: Hoare triple {2472#true} ~from := #in~from; {2472#true} is VALID [2020-07-18 05:16:46,971 INFO L280 TraceCheckUtils]: 1: Hoare triple {2472#true} ~until := #in~until; {2472#true} is VALID [2020-07-18 05:16:46,971 INFO L280 TraceCheckUtils]: 2: Hoare triple {2472#true} ~len~1 := ~from; {2472#true} is VALID [2020-07-18 05:16:46,971 INFO L280 TraceCheckUtils]: 3: Hoare triple {2472#true} #t~short12 := ~len~1 < ~until; {2472#true} is VALID [2020-07-18 05:16:46,971 INFO L280 TraceCheckUtils]: 4: Hoare triple {2472#true} assume !#t~short12; {2472#true} is VALID [2020-07-18 05:16:46,972 INFO L280 TraceCheckUtils]: 5: Hoare triple {2472#true} assume !#t~short12; {2472#true} is VALID [2020-07-18 05:16:46,972 INFO L280 TraceCheckUtils]: 6: Hoare triple {2472#true} havoc #t~nondet11; {2472#true} is VALID [2020-07-18 05:16:46,972 INFO L280 TraceCheckUtils]: 7: Hoare triple {2472#true} havoc #t~short12; {2472#true} is VALID [2020-07-18 05:16:46,972 INFO L280 TraceCheckUtils]: 8: Hoare triple {2472#true} #res := ~len~1; {2472#true} is VALID [2020-07-18 05:16:46,973 INFO L280 TraceCheckUtils]: 9: Hoare triple {2472#true} assume true; {2472#true} is VALID [2020-07-18 05:16:46,973 INFO L275 TraceCheckUtils]: 10: Hoare quadruple {2472#true} {2473#false} #247#return; {2473#false} is VALID [2020-07-18 05:16:46,975 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:16:46,981 INFO L280 TraceCheckUtils]: 0: Hoare triple {2472#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {2472#true} is VALID [2020-07-18 05:16:46,981 INFO L280 TraceCheckUtils]: 1: Hoare triple {2472#true} ~len~0 := 0; {2472#true} is VALID [2020-07-18 05:16:46,982 INFO L280 TraceCheckUtils]: 2: Hoare triple {2472#true} assume !(~head.base != 0 || ~head.offset != 0); {2472#true} is VALID [2020-07-18 05:16:46,982 INFO L280 TraceCheckUtils]: 3: Hoare triple {2472#true} #res := ~len~0; {2472#true} is VALID [2020-07-18 05:16:46,982 INFO L280 TraceCheckUtils]: 4: Hoare triple {2472#true} assume true; {2472#true} is VALID [2020-07-18 05:16:46,982 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {2472#true} {2473#false} #253#return; {2473#false} is VALID [2020-07-18 05:16:46,983 INFO L263 TraceCheckUtils]: 0: Hoare triple {2472#true} call ULTIMATE.init(); {2520#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 05:16:46,984 INFO L280 TraceCheckUtils]: 1: Hoare triple {2520#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {2472#true} is VALID [2020-07-18 05:16:46,984 INFO L280 TraceCheckUtils]: 2: Hoare triple {2472#true} #valid := #valid[0 := 0]; {2472#true} is VALID [2020-07-18 05:16:46,984 INFO L280 TraceCheckUtils]: 3: Hoare triple {2472#true} assume 0 < #StackHeapBarrier; {2472#true} is VALID [2020-07-18 05:16:46,984 INFO L280 TraceCheckUtils]: 4: Hoare triple {2472#true} assume true; {2472#true} is VALID [2020-07-18 05:16:46,984 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {2472#true} {2472#true} #259#return; {2472#true} is VALID [2020-07-18 05:16:46,985 INFO L263 TraceCheckUtils]: 6: Hoare triple {2472#true} call #t~ret24 := main(); {2472#true} is VALID [2020-07-18 05:16:46,985 INFO L263 TraceCheckUtils]: 7: Hoare triple {2472#true} call #t~ret14 := _get_nondet_int(2, 5); {2472#true} is VALID [2020-07-18 05:16:46,986 INFO L280 TraceCheckUtils]: 8: Hoare triple {2472#true} ~from := #in~from; {2521#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:16:46,986 INFO L280 TraceCheckUtils]: 9: Hoare triple {2521#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~until := #in~until; {2521#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:16:46,987 INFO L280 TraceCheckUtils]: 10: Hoare triple {2521#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~len~1 := ~from; {2522#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:16:46,988 INFO L280 TraceCheckUtils]: 11: Hoare triple {2522#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #t~short12 := ~len~1 < ~until; {2522#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:16:46,989 INFO L280 TraceCheckUtils]: 12: Hoare triple {2522#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume #t~short12; {2522#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:16:46,990 INFO L280 TraceCheckUtils]: 13: Hoare triple {2522#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {2522#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:16:46,993 INFO L280 TraceCheckUtils]: 14: Hoare triple {2522#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #t~short12 := 0 != #t~nondet11; {2522#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:16:46,994 INFO L280 TraceCheckUtils]: 15: Hoare triple {2522#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume !#t~short12; {2522#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:16:46,995 INFO L280 TraceCheckUtils]: 16: Hoare triple {2522#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} havoc #t~nondet11; {2522#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:16:46,996 INFO L280 TraceCheckUtils]: 17: Hoare triple {2522#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} havoc #t~short12; {2522#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:16:46,996 INFO L280 TraceCheckUtils]: 18: Hoare triple {2522#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #res := ~len~1; {2523#(or (<= 2 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:46,997 INFO L280 TraceCheckUtils]: 19: Hoare triple {2523#(or (<= 2 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} assume true; {2523#(or (<= 2 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:46,998 INFO L275 TraceCheckUtils]: 20: Hoare quadruple {2523#(or (<= 2 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} {2472#true} #243#return; {2492#(<= 2 |main_#t~ret14|)} is VALID [2020-07-18 05:16:46,999 INFO L280 TraceCheckUtils]: 21: Hoare triple {2492#(<= 2 |main_#t~ret14|)} assume -2147483648 <= #t~ret14 && #t~ret14 <= 2147483647; {2492#(<= 2 |main_#t~ret14|)} is VALID [2020-07-18 05:16:47,000 INFO L280 TraceCheckUtils]: 22: Hoare triple {2492#(<= 2 |main_#t~ret14|)} ~len~2 := #t~ret14; {2493#(<= 2 main_~len~2)} is VALID [2020-07-18 05:16:47,000 INFO L280 TraceCheckUtils]: 23: Hoare triple {2493#(<= 2 main_~len~2)} havoc #t~ret14; {2493#(<= 2 main_~len~2)} is VALID [2020-07-18 05:16:47,001 INFO L280 TraceCheckUtils]: 24: Hoare triple {2493#(<= 2 main_~len~2)} SUMMARY for call ~#s~0.base, ~#s~0.offset := #Ultimate.allocOnStack(4); srcloc: L617 {2493#(<= 2 main_~len~2)} is VALID [2020-07-18 05:16:47,002 INFO L263 TraceCheckUtils]: 25: Hoare triple {2493#(<= 2 main_~len~2)} call #t~ret15.base, #t~ret15.offset := sll_create(~len~2); {2524#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-18 05:16:47,003 INFO L280 TraceCheckUtils]: 26: Hoare triple {2524#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~len := #in~len; {2525#(= |sll_create_#in~len| sll_create_~len)} is VALID [2020-07-18 05:16:47,003 INFO L280 TraceCheckUtils]: 27: Hoare triple {2525#(= |sll_create_#in~len| sll_create_~len)} ~head~0.base, ~head~0.offset := 0, 0; {2525#(= |sll_create_#in~len| sll_create_~len)} is VALID [2020-07-18 05:16:47,004 INFO L280 TraceCheckUtils]: 28: Hoare triple {2525#(= |sll_create_#in~len| sll_create_~len)} #t~post2 := ~len; {2526#(= |sll_create_#in~len| |sll_create_#t~post2|)} is VALID [2020-07-18 05:16:47,004 INFO L280 TraceCheckUtils]: 29: Hoare triple {2526#(= |sll_create_#in~len| |sll_create_#t~post2|)} ~len := #t~post2 - 1; {2526#(= |sll_create_#in~len| |sll_create_#t~post2|)} is VALID [2020-07-18 05:16:47,005 INFO L280 TraceCheckUtils]: 30: Hoare triple {2526#(= |sll_create_#in~len| |sll_create_#t~post2|)} assume !(#t~post2 > 0); {2527#(<= |sll_create_#in~len| 0)} is VALID [2020-07-18 05:16:47,006 INFO L280 TraceCheckUtils]: 31: Hoare triple {2527#(<= |sll_create_#in~len| 0)} havoc #t~post2; {2527#(<= |sll_create_#in~len| 0)} is VALID [2020-07-18 05:16:47,006 INFO L280 TraceCheckUtils]: 32: Hoare triple {2527#(<= |sll_create_#in~len| 0)} #res.base, #res.offset := ~head~0.base, ~head~0.offset; {2527#(<= |sll_create_#in~len| 0)} is VALID [2020-07-18 05:16:47,007 INFO L280 TraceCheckUtils]: 33: Hoare triple {2527#(<= |sll_create_#in~len| 0)} assume true; {2527#(<= |sll_create_#in~len| 0)} is VALID [2020-07-18 05:16:47,008 INFO L275 TraceCheckUtils]: 34: Hoare quadruple {2527#(<= |sll_create_#in~len| 0)} {2493#(<= 2 main_~len~2)} #245#return; {2473#false} is VALID [2020-07-18 05:16:47,008 INFO L280 TraceCheckUtils]: 35: Hoare triple {2473#false} SUMMARY for call write~init~$Pointer$(#t~ret15.base, #t~ret15.offset, ~#s~0.base, ~#s~0.offset, 4); srcloc: L617-2 {2473#false} is VALID [2020-07-18 05:16:47,009 INFO L280 TraceCheckUtils]: 36: Hoare triple {2473#false} havoc #t~ret15.base, #t~ret15.offset; {2473#false} is VALID [2020-07-18 05:16:47,009 INFO L263 TraceCheckUtils]: 37: Hoare triple {2473#false} call #t~ret16 := _get_nondet_int(0, ~len~2 - 1); {2472#true} is VALID [2020-07-18 05:16:47,009 INFO L280 TraceCheckUtils]: 38: Hoare triple {2472#true} ~from := #in~from; {2472#true} is VALID [2020-07-18 05:16:47,009 INFO L280 TraceCheckUtils]: 39: Hoare triple {2472#true} ~until := #in~until; {2472#true} is VALID [2020-07-18 05:16:47,010 INFO L280 TraceCheckUtils]: 40: Hoare triple {2472#true} ~len~1 := ~from; {2472#true} is VALID [2020-07-18 05:16:47,010 INFO L280 TraceCheckUtils]: 41: Hoare triple {2472#true} #t~short12 := ~len~1 < ~until; {2472#true} is VALID [2020-07-18 05:16:47,010 INFO L280 TraceCheckUtils]: 42: Hoare triple {2472#true} assume !#t~short12; {2472#true} is VALID [2020-07-18 05:16:47,010 INFO L280 TraceCheckUtils]: 43: Hoare triple {2472#true} assume !#t~short12; {2472#true} is VALID [2020-07-18 05:16:47,010 INFO L280 TraceCheckUtils]: 44: Hoare triple {2472#true} havoc #t~nondet11; {2472#true} is VALID [2020-07-18 05:16:47,011 INFO L280 TraceCheckUtils]: 45: Hoare triple {2472#true} havoc #t~short12; {2472#true} is VALID [2020-07-18 05:16:47,011 INFO L280 TraceCheckUtils]: 46: Hoare triple {2472#true} #res := ~len~1; {2472#true} is VALID [2020-07-18 05:16:47,011 INFO L280 TraceCheckUtils]: 47: Hoare triple {2472#true} assume true; {2472#true} is VALID [2020-07-18 05:16:47,011 INFO L275 TraceCheckUtils]: 48: Hoare quadruple {2472#true} {2473#false} #247#return; {2473#false} is VALID [2020-07-18 05:16:47,012 INFO L280 TraceCheckUtils]: 49: Hoare triple {2473#false} assume -2147483648 <= #t~ret16 && #t~ret16 <= 2147483647; {2473#false} is VALID [2020-07-18 05:16:47,012 INFO L280 TraceCheckUtils]: 50: Hoare triple {2473#false} ~k~0 := #t~ret16; {2473#false} is VALID [2020-07-18 05:16:47,012 INFO L280 TraceCheckUtils]: 51: Hoare triple {2473#false} havoc #t~ret16; {2473#false} is VALID [2020-07-18 05:16:47,012 INFO L280 TraceCheckUtils]: 52: Hoare triple {2473#false} ~i~0 := 0; {2473#false} is VALID [2020-07-18 05:16:47,013 INFO L280 TraceCheckUtils]: 53: Hoare triple {2473#false} #t~short18 := ~i~0 < ~k~0; {2473#false} is VALID [2020-07-18 05:16:47,013 INFO L280 TraceCheckUtils]: 54: Hoare triple {2473#false} assume !#t~short18; {2473#false} is VALID [2020-07-18 05:16:47,013 INFO L280 TraceCheckUtils]: 55: Hoare triple {2473#false} assume !#t~short18; {2473#false} is VALID [2020-07-18 05:16:47,013 INFO L280 TraceCheckUtils]: 56: Hoare triple {2473#false} havoc #t~nondet17; {2473#false} is VALID [2020-07-18 05:16:47,013 INFO L280 TraceCheckUtils]: 57: Hoare triple {2473#false} havoc #t~short18; {2473#false} is VALID [2020-07-18 05:16:47,014 INFO L280 TraceCheckUtils]: 58: Hoare triple {2473#false} SUMMARY for call #t~mem21.base, #t~mem21.offset := read~$Pointer$(~#s~0.base, ~#s~0.offset, 4); srcloc: L620-12 {2473#false} is VALID [2020-07-18 05:16:47,014 INFO L263 TraceCheckUtils]: 59: Hoare triple {2473#false} call #t~ret22 := sll_length(#t~mem21.base, #t~mem21.offset); {2472#true} is VALID [2020-07-18 05:16:47,014 INFO L280 TraceCheckUtils]: 60: Hoare triple {2472#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {2472#true} is VALID [2020-07-18 05:16:47,014 INFO L280 TraceCheckUtils]: 61: Hoare triple {2472#true} ~len~0 := 0; {2472#true} is VALID [2020-07-18 05:16:47,015 INFO L280 TraceCheckUtils]: 62: Hoare triple {2472#true} assume !(~head.base != 0 || ~head.offset != 0); {2472#true} is VALID [2020-07-18 05:16:47,015 INFO L280 TraceCheckUtils]: 63: Hoare triple {2472#true} #res := ~len~0; {2472#true} is VALID [2020-07-18 05:16:47,015 INFO L280 TraceCheckUtils]: 64: Hoare triple {2472#true} assume true; {2472#true} is VALID [2020-07-18 05:16:47,015 INFO L275 TraceCheckUtils]: 65: Hoare quadruple {2472#true} {2473#false} #253#return; {2473#false} is VALID [2020-07-18 05:16:47,015 INFO L280 TraceCheckUtils]: 66: Hoare triple {2473#false} assume -2147483648 <= #t~ret22 && #t~ret22 <= 2147483647; {2473#false} is VALID [2020-07-18 05:16:47,016 INFO L280 TraceCheckUtils]: 67: Hoare triple {2473#false} assume ~k~0 + ~len~2 != #t~ret22; {2473#false} is VALID [2020-07-18 05:16:47,016 INFO L280 TraceCheckUtils]: 68: Hoare triple {2473#false} havoc #t~ret22; {2473#false} is VALID [2020-07-18 05:16:47,016 INFO L280 TraceCheckUtils]: 69: Hoare triple {2473#false} havoc #t~mem21.base, #t~mem21.offset; {2473#false} is VALID [2020-07-18 05:16:47,016 INFO L280 TraceCheckUtils]: 70: Hoare triple {2473#false} assume !false; {2473#false} is VALID [2020-07-18 05:16:47,022 INFO L134 CoverageAnalysis]: Checked inductivity of 11 backedges. 0 proven. 10 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2020-07-18 05:16:47,023 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [928394838] [2020-07-18 05:16:47,023 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2020-07-18 05:16:47,023 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12] total 12 [2020-07-18 05:16:47,023 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [78304827] [2020-07-18 05:16:47,024 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 71 [2020-07-18 05:16:47,024 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 05:16:47,025 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states. [2020-07-18 05:16:47,093 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 71 edges. 71 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:16:47,093 INFO L459 AbstractCegarLoop]: Interpolant automaton has 12 states [2020-07-18 05:16:47,093 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 05:16:47,094 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2020-07-18 05:16:47,094 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=111, Unknown=0, NotChecked=0, Total=132 [2020-07-18 05:16:47,095 INFO L87 Difference]: Start difference. First operand 134 states and 145 transitions. Second operand 12 states. [2020-07-18 05:16:50,601 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:16:50,601 INFO L93 Difference]: Finished difference Result 313 states and 348 transitions. [2020-07-18 05:16:50,601 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2020-07-18 05:16:50,601 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 71 [2020-07-18 05:16:50,602 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 05:16:50,602 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2020-07-18 05:16:50,610 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 322 transitions. [2020-07-18 05:16:50,610 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2020-07-18 05:16:50,619 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 322 transitions. [2020-07-18 05:16:50,619 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states and 322 transitions. [2020-07-18 05:16:51,008 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 322 edges. 322 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:16:51,021 INFO L225 Difference]: With dead ends: 313 [2020-07-18 05:16:51,021 INFO L226 Difference]: Without dead ends: 206 [2020-07-18 05:16:51,023 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 37 GetRequests, 13 SyntacticMatches, 0 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 70 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=123, Invalid=527, Unknown=0, NotChecked=0, Total=650 [2020-07-18 05:16:51,024 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 206 states. [2020-07-18 05:16:51,403 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 206 to 154. [2020-07-18 05:16:51,404 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 05:16:51,404 INFO L82 GeneralOperation]: Start isEquivalent. First operand 206 states. Second operand 154 states. [2020-07-18 05:16:51,404 INFO L74 IsIncluded]: Start isIncluded. First operand 206 states. Second operand 154 states. [2020-07-18 05:16:51,406 INFO L87 Difference]: Start difference. First operand 206 states. Second operand 154 states. [2020-07-18 05:16:51,417 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:16:51,418 INFO L93 Difference]: Finished difference Result 206 states and 229 transitions. [2020-07-18 05:16:51,418 INFO L276 IsEmpty]: Start isEmpty. Operand 206 states and 229 transitions. [2020-07-18 05:16:51,419 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 05:16:51,419 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 05:16:51,419 INFO L74 IsIncluded]: Start isIncluded. First operand 154 states. Second operand 206 states. [2020-07-18 05:16:51,420 INFO L87 Difference]: Start difference. First operand 154 states. Second operand 206 states. [2020-07-18 05:16:51,439 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:16:51,440 INFO L93 Difference]: Finished difference Result 206 states and 229 transitions. [2020-07-18 05:16:51,440 INFO L276 IsEmpty]: Start isEmpty. Operand 206 states and 229 transitions. [2020-07-18 05:16:51,441 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 05:16:51,442 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 05:16:51,442 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 05:16:51,442 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 05:16:51,442 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 154 states. [2020-07-18 05:16:51,449 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 154 states to 154 states and 167 transitions. [2020-07-18 05:16:51,450 INFO L78 Accepts]: Start accepts. Automaton has 154 states and 167 transitions. Word has length 71 [2020-07-18 05:16:51,451 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 05:16:51,451 INFO L479 AbstractCegarLoop]: Abstraction has 154 states and 167 transitions. [2020-07-18 05:16:51,451 INFO L480 AbstractCegarLoop]: Interpolant automaton has 12 states. [2020-07-18 05:16:51,451 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 154 states and 167 transitions. [2020-07-18 05:16:51,706 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 167 edges. 167 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:16:51,706 INFO L276 IsEmpty]: Start isEmpty. Operand 154 states and 167 transitions. [2020-07-18 05:16:51,708 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 80 [2020-07-18 05:16:51,708 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 05:16:51,708 INFO L422 BasicCegarLoop]: trace histogram [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] [2020-07-18 05:16:51,708 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2020-07-18 05:16:51,709 INFO L427 AbstractCegarLoop]: === Iteration 4 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 05:16:51,709 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 05:16:51,709 INFO L82 PathProgramCache]: Analyzing trace with hash -472966004, now seen corresponding path program 1 times [2020-07-18 05:16:51,709 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 05:16:51,709 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1331224438] [2020-07-18 05:16:51,709 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 05:16:51,724 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:16:51,762 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:16:51,768 INFO L280 TraceCheckUtils]: 0: Hoare triple {3963#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {3909#true} is VALID [2020-07-18 05:16:51,768 INFO L280 TraceCheckUtils]: 1: Hoare triple {3909#true} #valid := #valid[0 := 0]; {3909#true} is VALID [2020-07-18 05:16:51,769 INFO L280 TraceCheckUtils]: 2: Hoare triple {3909#true} assume 0 < #StackHeapBarrier; {3909#true} is VALID [2020-07-18 05:16:51,769 INFO L280 TraceCheckUtils]: 3: Hoare triple {3909#true} assume true; {3909#true} is VALID [2020-07-18 05:16:51,769 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {3909#true} {3909#true} #259#return; {3909#true} is VALID [2020-07-18 05:16:51,774 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:16:52,060 INFO L280 TraceCheckUtils]: 0: Hoare triple {3909#true} ~from := #in~from; {3964#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:16:52,061 INFO L280 TraceCheckUtils]: 1: Hoare triple {3964#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~until := #in~until; {3965#(and (or (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (= |_get_nondet_int_#in~from| _get_nondet_int_~from))} is VALID [2020-07-18 05:16:52,062 INFO L280 TraceCheckUtils]: 2: Hoare triple {3965#(and (or (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (= |_get_nondet_int_#in~from| _get_nondet_int_~from))} ~len~1 := ~from; {3966#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,063 INFO L280 TraceCheckUtils]: 3: Hoare triple {3966#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} #t~short12 := ~len~1 < ~until; {3966#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,064 INFO L280 TraceCheckUtils]: 4: Hoare triple {3966#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} assume #t~short12; {3966#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,065 INFO L280 TraceCheckUtils]: 5: Hoare triple {3966#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {3966#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,065 INFO L280 TraceCheckUtils]: 6: Hoare triple {3966#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} #t~short12 := 0 != #t~nondet11; {3966#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,066 INFO L280 TraceCheckUtils]: 7: Hoare triple {3966#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} assume !!#t~short12; {3966#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,067 INFO L280 TraceCheckUtils]: 8: Hoare triple {3966#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} havoc #t~nondet11; {3966#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,068 INFO L280 TraceCheckUtils]: 9: Hoare triple {3966#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} havoc #t~short12; {3966#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,069 INFO L280 TraceCheckUtils]: 10: Hoare triple {3966#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} #t~post13 := ~len~1; {3967#(or (and (or (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (<= |_get_nondet_int_#t~post13| 2) (not (= 5 _get_nondet_int_~until)))) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,070 INFO L280 TraceCheckUtils]: 11: Hoare triple {3967#(or (and (or (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (<= |_get_nondet_int_#t~post13| 2) (not (= 5 _get_nondet_int_~until)))) (not (= 2 |_get_nondet_int_#in~from|)))} ~len~1 := 1 + #t~post13; {3968#(or (and (or (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (<= _get_nondet_int_~len~1 3) (not (= 5 _get_nondet_int_~until)))) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,070 INFO L280 TraceCheckUtils]: 12: Hoare triple {3968#(or (and (or (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (<= _get_nondet_int_~len~1 3) (not (= 5 _get_nondet_int_~until)))) (not (= 2 |_get_nondet_int_#in~from|)))} havoc #t~post13; {3968#(or (and (or (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (<= _get_nondet_int_~len~1 3) (not (= 5 _get_nondet_int_~until)))) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,072 INFO L280 TraceCheckUtils]: 13: Hoare triple {3968#(or (and (or (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (<= _get_nondet_int_~len~1 3) (not (= 5 _get_nondet_int_~until)))) (not (= 2 |_get_nondet_int_#in~from|)))} #t~short12 := ~len~1 < ~until; {3969#(or (not (= 5 |_get_nondet_int_#in~until|)) |_get_nondet_int_#t~short12| (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,072 INFO L280 TraceCheckUtils]: 14: Hoare triple {3969#(or (not (= 5 |_get_nondet_int_#in~until|)) |_get_nondet_int_#t~short12| (not (= 2 |_get_nondet_int_#in~from|)))} assume !#t~short12; {3970#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,073 INFO L280 TraceCheckUtils]: 15: Hoare triple {3970#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} assume !#t~short12; {3970#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,073 INFO L280 TraceCheckUtils]: 16: Hoare triple {3970#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} havoc #t~nondet11; {3970#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,074 INFO L280 TraceCheckUtils]: 17: Hoare triple {3970#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} havoc #t~short12; {3970#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,075 INFO L280 TraceCheckUtils]: 18: Hoare triple {3970#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} #res := ~len~1; {3970#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,075 INFO L280 TraceCheckUtils]: 19: Hoare triple {3970#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} assume true; {3970#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,078 INFO L275 TraceCheckUtils]: 20: Hoare quadruple {3970#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} {3909#true} #243#return; {3910#false} is VALID [2020-07-18 05:16:52,101 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:16:52,118 INFO L280 TraceCheckUtils]: 0: Hoare triple {3971#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~len := #in~len; {3909#true} is VALID [2020-07-18 05:16:52,119 INFO L280 TraceCheckUtils]: 1: Hoare triple {3909#true} ~head~0.base, ~head~0.offset := 0, 0; {3909#true} is VALID [2020-07-18 05:16:52,122 INFO L280 TraceCheckUtils]: 2: Hoare triple {3909#true} #t~post2 := ~len; {3909#true} is VALID [2020-07-18 05:16:52,123 INFO L280 TraceCheckUtils]: 3: Hoare triple {3909#true} ~len := #t~post2 - 1; {3909#true} is VALID [2020-07-18 05:16:52,123 INFO L280 TraceCheckUtils]: 4: Hoare triple {3909#true} assume !(#t~post2 > 0); {3909#true} is VALID [2020-07-18 05:16:52,123 INFO L280 TraceCheckUtils]: 5: Hoare triple {3909#true} havoc #t~post2; {3909#true} is VALID [2020-07-18 05:16:52,123 INFO L280 TraceCheckUtils]: 6: Hoare triple {3909#true} #res.base, #res.offset := ~head~0.base, ~head~0.offset; {3909#true} is VALID [2020-07-18 05:16:52,124 INFO L280 TraceCheckUtils]: 7: Hoare triple {3909#true} assume true; {3909#true} is VALID [2020-07-18 05:16:52,124 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {3909#true} {3910#false} #245#return; {3910#false} is VALID [2020-07-18 05:16:52,129 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:16:52,134 INFO L280 TraceCheckUtils]: 0: Hoare triple {3909#true} ~from := #in~from; {3909#true} is VALID [2020-07-18 05:16:52,135 INFO L280 TraceCheckUtils]: 1: Hoare triple {3909#true} ~until := #in~until; {3909#true} is VALID [2020-07-18 05:16:52,135 INFO L280 TraceCheckUtils]: 2: Hoare triple {3909#true} ~len~1 := ~from; {3909#true} is VALID [2020-07-18 05:16:52,135 INFO L280 TraceCheckUtils]: 3: Hoare triple {3909#true} #t~short12 := ~len~1 < ~until; {3909#true} is VALID [2020-07-18 05:16:52,135 INFO L280 TraceCheckUtils]: 4: Hoare triple {3909#true} assume !#t~short12; {3909#true} is VALID [2020-07-18 05:16:52,135 INFO L280 TraceCheckUtils]: 5: Hoare triple {3909#true} assume !#t~short12; {3909#true} is VALID [2020-07-18 05:16:52,136 INFO L280 TraceCheckUtils]: 6: Hoare triple {3909#true} havoc #t~nondet11; {3909#true} is VALID [2020-07-18 05:16:52,136 INFO L280 TraceCheckUtils]: 7: Hoare triple {3909#true} havoc #t~short12; {3909#true} is VALID [2020-07-18 05:16:52,136 INFO L280 TraceCheckUtils]: 8: Hoare triple {3909#true} #res := ~len~1; {3909#true} is VALID [2020-07-18 05:16:52,136 INFO L280 TraceCheckUtils]: 9: Hoare triple {3909#true} assume true; {3909#true} is VALID [2020-07-18 05:16:52,137 INFO L275 TraceCheckUtils]: 10: Hoare quadruple {3909#true} {3910#false} #247#return; {3910#false} is VALID [2020-07-18 05:16:52,138 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:16:52,146 INFO L280 TraceCheckUtils]: 0: Hoare triple {3909#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {3909#true} is VALID [2020-07-18 05:16:52,147 INFO L280 TraceCheckUtils]: 1: Hoare triple {3909#true} ~len~0 := 0; {3909#true} is VALID [2020-07-18 05:16:52,147 INFO L280 TraceCheckUtils]: 2: Hoare triple {3909#true} assume !(~head.base != 0 || ~head.offset != 0); {3909#true} is VALID [2020-07-18 05:16:52,147 INFO L280 TraceCheckUtils]: 3: Hoare triple {3909#true} #res := ~len~0; {3909#true} is VALID [2020-07-18 05:16:52,147 INFO L280 TraceCheckUtils]: 4: Hoare triple {3909#true} assume true; {3909#true} is VALID [2020-07-18 05:16:52,148 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {3909#true} {3910#false} #253#return; {3910#false} is VALID [2020-07-18 05:16:52,149 INFO L263 TraceCheckUtils]: 0: Hoare triple {3909#true} call ULTIMATE.init(); {3963#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 05:16:52,149 INFO L280 TraceCheckUtils]: 1: Hoare triple {3963#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {3909#true} is VALID [2020-07-18 05:16:52,149 INFO L280 TraceCheckUtils]: 2: Hoare triple {3909#true} #valid := #valid[0 := 0]; {3909#true} is VALID [2020-07-18 05:16:52,149 INFO L280 TraceCheckUtils]: 3: Hoare triple {3909#true} assume 0 < #StackHeapBarrier; {3909#true} is VALID [2020-07-18 05:16:52,150 INFO L280 TraceCheckUtils]: 4: Hoare triple {3909#true} assume true; {3909#true} is VALID [2020-07-18 05:16:52,150 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {3909#true} {3909#true} #259#return; {3909#true} is VALID [2020-07-18 05:16:52,150 INFO L263 TraceCheckUtils]: 6: Hoare triple {3909#true} call #t~ret24 := main(); {3909#true} is VALID [2020-07-18 05:16:52,150 INFO L263 TraceCheckUtils]: 7: Hoare triple {3909#true} call #t~ret14 := _get_nondet_int(2, 5); {3909#true} is VALID [2020-07-18 05:16:52,151 INFO L280 TraceCheckUtils]: 8: Hoare triple {3909#true} ~from := #in~from; {3964#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:16:52,152 INFO L280 TraceCheckUtils]: 9: Hoare triple {3964#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~until := #in~until; {3965#(and (or (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (= |_get_nondet_int_#in~from| _get_nondet_int_~from))} is VALID [2020-07-18 05:16:52,153 INFO L280 TraceCheckUtils]: 10: Hoare triple {3965#(and (or (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (= |_get_nondet_int_#in~from| _get_nondet_int_~from))} ~len~1 := ~from; {3966#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,154 INFO L280 TraceCheckUtils]: 11: Hoare triple {3966#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} #t~short12 := ~len~1 < ~until; {3966#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,154 INFO L280 TraceCheckUtils]: 12: Hoare triple {3966#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} assume #t~short12; {3966#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,155 INFO L280 TraceCheckUtils]: 13: Hoare triple {3966#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {3966#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,156 INFO L280 TraceCheckUtils]: 14: Hoare triple {3966#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} #t~short12 := 0 != #t~nondet11; {3966#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,157 INFO L280 TraceCheckUtils]: 15: Hoare triple {3966#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} assume !!#t~short12; {3966#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,157 INFO L280 TraceCheckUtils]: 16: Hoare triple {3966#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} havoc #t~nondet11; {3966#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,158 INFO L280 TraceCheckUtils]: 17: Hoare triple {3966#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} havoc #t~short12; {3966#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,159 INFO L280 TraceCheckUtils]: 18: Hoare triple {3966#(and (or (not (= 2 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|)))} #t~post13 := ~len~1; {3967#(or (and (or (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (<= |_get_nondet_int_#t~post13| 2) (not (= 5 _get_nondet_int_~until)))) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,160 INFO L280 TraceCheckUtils]: 19: Hoare triple {3967#(or (and (or (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (<= |_get_nondet_int_#t~post13| 2) (not (= 5 _get_nondet_int_~until)))) (not (= 2 |_get_nondet_int_#in~from|)))} ~len~1 := 1 + #t~post13; {3968#(or (and (or (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (<= _get_nondet_int_~len~1 3) (not (= 5 _get_nondet_int_~until)))) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,161 INFO L280 TraceCheckUtils]: 20: Hoare triple {3968#(or (and (or (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (<= _get_nondet_int_~len~1 3) (not (= 5 _get_nondet_int_~until)))) (not (= 2 |_get_nondet_int_#in~from|)))} havoc #t~post13; {3968#(or (and (or (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (<= _get_nondet_int_~len~1 3) (not (= 5 _get_nondet_int_~until)))) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,164 INFO L280 TraceCheckUtils]: 21: Hoare triple {3968#(or (and (or (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= 5 _get_nondet_int_~until)) (or (<= _get_nondet_int_~len~1 3) (not (= 5 _get_nondet_int_~until)))) (not (= 2 |_get_nondet_int_#in~from|)))} #t~short12 := ~len~1 < ~until; {3969#(or (not (= 5 |_get_nondet_int_#in~until|)) |_get_nondet_int_#t~short12| (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,165 INFO L280 TraceCheckUtils]: 22: Hoare triple {3969#(or (not (= 5 |_get_nondet_int_#in~until|)) |_get_nondet_int_#t~short12| (not (= 2 |_get_nondet_int_#in~from|)))} assume !#t~short12; {3970#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,165 INFO L280 TraceCheckUtils]: 23: Hoare triple {3970#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} assume !#t~short12; {3970#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,166 INFO L280 TraceCheckUtils]: 24: Hoare triple {3970#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} havoc #t~nondet11; {3970#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,172 INFO L280 TraceCheckUtils]: 25: Hoare triple {3970#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} havoc #t~short12; {3970#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,173 INFO L280 TraceCheckUtils]: 26: Hoare triple {3970#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} #res := ~len~1; {3970#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,173 INFO L280 TraceCheckUtils]: 27: Hoare triple {3970#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} assume true; {3970#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:52,174 INFO L275 TraceCheckUtils]: 28: Hoare quadruple {3970#(or (not (= 5 |_get_nondet_int_#in~until|)) (not (= 2 |_get_nondet_int_#in~from|)))} {3909#true} #243#return; {3910#false} is VALID [2020-07-18 05:16:52,174 INFO L280 TraceCheckUtils]: 29: Hoare triple {3910#false} assume -2147483648 <= #t~ret14 && #t~ret14 <= 2147483647; {3910#false} is VALID [2020-07-18 05:16:52,174 INFO L280 TraceCheckUtils]: 30: Hoare triple {3910#false} ~len~2 := #t~ret14; {3910#false} is VALID [2020-07-18 05:16:52,174 INFO L280 TraceCheckUtils]: 31: Hoare triple {3910#false} havoc #t~ret14; {3910#false} is VALID [2020-07-18 05:16:52,174 INFO L280 TraceCheckUtils]: 32: Hoare triple {3910#false} SUMMARY for call ~#s~0.base, ~#s~0.offset := #Ultimate.allocOnStack(4); srcloc: L617 {3910#false} is VALID [2020-07-18 05:16:52,175 INFO L263 TraceCheckUtils]: 33: Hoare triple {3910#false} call #t~ret15.base, #t~ret15.offset := sll_create(~len~2); {3971#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-18 05:16:52,175 INFO L280 TraceCheckUtils]: 34: Hoare triple {3971#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~len := #in~len; {3909#true} is VALID [2020-07-18 05:16:52,175 INFO L280 TraceCheckUtils]: 35: Hoare triple {3909#true} ~head~0.base, ~head~0.offset := 0, 0; {3909#true} is VALID [2020-07-18 05:16:52,175 INFO L280 TraceCheckUtils]: 36: Hoare triple {3909#true} #t~post2 := ~len; {3909#true} is VALID [2020-07-18 05:16:52,175 INFO L280 TraceCheckUtils]: 37: Hoare triple {3909#true} ~len := #t~post2 - 1; {3909#true} is VALID [2020-07-18 05:16:52,175 INFO L280 TraceCheckUtils]: 38: Hoare triple {3909#true} assume !(#t~post2 > 0); {3909#true} is VALID [2020-07-18 05:16:52,175 INFO L280 TraceCheckUtils]: 39: Hoare triple {3909#true} havoc #t~post2; {3909#true} is VALID [2020-07-18 05:16:52,175 INFO L280 TraceCheckUtils]: 40: Hoare triple {3909#true} #res.base, #res.offset := ~head~0.base, ~head~0.offset; {3909#true} is VALID [2020-07-18 05:16:52,176 INFO L280 TraceCheckUtils]: 41: Hoare triple {3909#true} assume true; {3909#true} is VALID [2020-07-18 05:16:52,176 INFO L275 TraceCheckUtils]: 42: Hoare quadruple {3909#true} {3910#false} #245#return; {3910#false} is VALID [2020-07-18 05:16:52,176 INFO L280 TraceCheckUtils]: 43: Hoare triple {3910#false} SUMMARY for call write~init~$Pointer$(#t~ret15.base, #t~ret15.offset, ~#s~0.base, ~#s~0.offset, 4); srcloc: L617-2 {3910#false} is VALID [2020-07-18 05:16:52,176 INFO L280 TraceCheckUtils]: 44: Hoare triple {3910#false} havoc #t~ret15.base, #t~ret15.offset; {3910#false} is VALID [2020-07-18 05:16:52,176 INFO L263 TraceCheckUtils]: 45: Hoare triple {3910#false} call #t~ret16 := _get_nondet_int(0, ~len~2 - 1); {3909#true} is VALID [2020-07-18 05:16:52,176 INFO L280 TraceCheckUtils]: 46: Hoare triple {3909#true} ~from := #in~from; {3909#true} is VALID [2020-07-18 05:16:52,176 INFO L280 TraceCheckUtils]: 47: Hoare triple {3909#true} ~until := #in~until; {3909#true} is VALID [2020-07-18 05:16:52,177 INFO L280 TraceCheckUtils]: 48: Hoare triple {3909#true} ~len~1 := ~from; {3909#true} is VALID [2020-07-18 05:16:52,177 INFO L280 TraceCheckUtils]: 49: Hoare triple {3909#true} #t~short12 := ~len~1 < ~until; {3909#true} is VALID [2020-07-18 05:16:52,177 INFO L280 TraceCheckUtils]: 50: Hoare triple {3909#true} assume !#t~short12; {3909#true} is VALID [2020-07-18 05:16:52,177 INFO L280 TraceCheckUtils]: 51: Hoare triple {3909#true} assume !#t~short12; {3909#true} is VALID [2020-07-18 05:16:52,177 INFO L280 TraceCheckUtils]: 52: Hoare triple {3909#true} havoc #t~nondet11; {3909#true} is VALID [2020-07-18 05:16:52,177 INFO L280 TraceCheckUtils]: 53: Hoare triple {3909#true} havoc #t~short12; {3909#true} is VALID [2020-07-18 05:16:52,177 INFO L280 TraceCheckUtils]: 54: Hoare triple {3909#true} #res := ~len~1; {3909#true} is VALID [2020-07-18 05:16:52,178 INFO L280 TraceCheckUtils]: 55: Hoare triple {3909#true} assume true; {3909#true} is VALID [2020-07-18 05:16:52,178 INFO L275 TraceCheckUtils]: 56: Hoare quadruple {3909#true} {3910#false} #247#return; {3910#false} is VALID [2020-07-18 05:16:52,178 INFO L280 TraceCheckUtils]: 57: Hoare triple {3910#false} assume -2147483648 <= #t~ret16 && #t~ret16 <= 2147483647; {3910#false} is VALID [2020-07-18 05:16:52,178 INFO L280 TraceCheckUtils]: 58: Hoare triple {3910#false} ~k~0 := #t~ret16; {3910#false} is VALID [2020-07-18 05:16:52,178 INFO L280 TraceCheckUtils]: 59: Hoare triple {3910#false} havoc #t~ret16; {3910#false} is VALID [2020-07-18 05:16:52,178 INFO L280 TraceCheckUtils]: 60: Hoare triple {3910#false} ~i~0 := 0; {3910#false} is VALID [2020-07-18 05:16:52,178 INFO L280 TraceCheckUtils]: 61: Hoare triple {3910#false} #t~short18 := ~i~0 < ~k~0; {3910#false} is VALID [2020-07-18 05:16:52,179 INFO L280 TraceCheckUtils]: 62: Hoare triple {3910#false} assume !#t~short18; {3910#false} is VALID [2020-07-18 05:16:52,179 INFO L280 TraceCheckUtils]: 63: Hoare triple {3910#false} assume !#t~short18; {3910#false} is VALID [2020-07-18 05:16:52,179 INFO L280 TraceCheckUtils]: 64: Hoare triple {3910#false} havoc #t~nondet17; {3910#false} is VALID [2020-07-18 05:16:52,179 INFO L280 TraceCheckUtils]: 65: Hoare triple {3910#false} havoc #t~short18; {3910#false} is VALID [2020-07-18 05:16:52,179 INFO L280 TraceCheckUtils]: 66: Hoare triple {3910#false} SUMMARY for call #t~mem21.base, #t~mem21.offset := read~$Pointer$(~#s~0.base, ~#s~0.offset, 4); srcloc: L620-12 {3910#false} is VALID [2020-07-18 05:16:52,179 INFO L263 TraceCheckUtils]: 67: Hoare triple {3910#false} call #t~ret22 := sll_length(#t~mem21.base, #t~mem21.offset); {3909#true} is VALID [2020-07-18 05:16:52,179 INFO L280 TraceCheckUtils]: 68: Hoare triple {3909#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {3909#true} is VALID [2020-07-18 05:16:52,179 INFO L280 TraceCheckUtils]: 69: Hoare triple {3909#true} ~len~0 := 0; {3909#true} is VALID [2020-07-18 05:16:52,180 INFO L280 TraceCheckUtils]: 70: Hoare triple {3909#true} assume !(~head.base != 0 || ~head.offset != 0); {3909#true} is VALID [2020-07-18 05:16:52,180 INFO L280 TraceCheckUtils]: 71: Hoare triple {3909#true} #res := ~len~0; {3909#true} is VALID [2020-07-18 05:16:52,180 INFO L280 TraceCheckUtils]: 72: Hoare triple {3909#true} assume true; {3909#true} is VALID [2020-07-18 05:16:52,180 INFO L275 TraceCheckUtils]: 73: Hoare quadruple {3909#true} {3910#false} #253#return; {3910#false} is VALID [2020-07-18 05:16:52,180 INFO L280 TraceCheckUtils]: 74: Hoare triple {3910#false} assume -2147483648 <= #t~ret22 && #t~ret22 <= 2147483647; {3910#false} is VALID [2020-07-18 05:16:52,180 INFO L280 TraceCheckUtils]: 75: Hoare triple {3910#false} assume ~k~0 + ~len~2 != #t~ret22; {3910#false} is VALID [2020-07-18 05:16:52,180 INFO L280 TraceCheckUtils]: 76: Hoare triple {3910#false} havoc #t~ret22; {3910#false} is VALID [2020-07-18 05:16:52,181 INFO L280 TraceCheckUtils]: 77: Hoare triple {3910#false} havoc #t~mem21.base, #t~mem21.offset; {3910#false} is VALID [2020-07-18 05:16:52,181 INFO L280 TraceCheckUtils]: 78: Hoare triple {3910#false} assume !false; {3910#false} is VALID [2020-07-18 05:16:52,188 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 0 proven. 16 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2020-07-18 05:16:52,188 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1331224438] [2020-07-18 05:16:52,189 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2020-07-18 05:16:52,189 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11] total 11 [2020-07-18 05:16:52,189 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1268992860] [2020-07-18 05:16:52,189 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 79 [2020-07-18 05:16:52,190 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 05:16:52,190 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states. [2020-07-18 05:16:52,273 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:16:52,274 INFO L459 AbstractCegarLoop]: Interpolant automaton has 11 states [2020-07-18 05:16:52,274 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 05:16:52,274 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2020-07-18 05:16:52,275 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=88, Unknown=0, NotChecked=0, Total=110 [2020-07-18 05:16:52,275 INFO L87 Difference]: Start difference. First operand 154 states and 167 transitions. Second operand 11 states. [2020-07-18 05:16:52,956 WARN L193 SmtUtils]: Spent 114.00 ms on a formula simplification. DAG size of input: 43 DAG size of output: 40 [2020-07-18 05:16:56,093 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:16:56,093 INFO L93 Difference]: Finished difference Result 342 states and 375 transitions. [2020-07-18 05:16:56,093 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2020-07-18 05:16:56,094 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 79 [2020-07-18 05:16:56,094 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 05:16:56,094 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2020-07-18 05:16:56,102 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 335 transitions. [2020-07-18 05:16:56,102 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2020-07-18 05:16:56,109 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 335 transitions. [2020-07-18 05:16:56,109 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states and 335 transitions. [2020-07-18 05:16:56,588 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 335 edges. 335 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:16:56,593 INFO L225 Difference]: With dead ends: 342 [2020-07-18 05:16:56,594 INFO L226 Difference]: Without dead ends: 204 [2020-07-18 05:16:56,598 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 44 GetRequests, 19 SyntacticMatches, 0 SemanticMatches, 25 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 85 ImplicationChecksByTransitivity, 1.4s TimeCoverageRelationStatistics Valid=224, Invalid=478, Unknown=0, NotChecked=0, Total=702 [2020-07-18 05:16:56,601 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 204 states. [2020-07-18 05:16:57,035 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 204 to 161. [2020-07-18 05:16:57,035 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 05:16:57,036 INFO L82 GeneralOperation]: Start isEquivalent. First operand 204 states. Second operand 161 states. [2020-07-18 05:16:57,036 INFO L74 IsIncluded]: Start isIncluded. First operand 204 states. Second operand 161 states. [2020-07-18 05:16:57,036 INFO L87 Difference]: Start difference. First operand 204 states. Second operand 161 states. [2020-07-18 05:16:57,048 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:16:57,049 INFO L93 Difference]: Finished difference Result 204 states and 224 transitions. [2020-07-18 05:16:57,049 INFO L276 IsEmpty]: Start isEmpty. Operand 204 states and 224 transitions. [2020-07-18 05:16:57,050 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 05:16:57,051 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 05:16:57,051 INFO L74 IsIncluded]: Start isIncluded. First operand 161 states. Second operand 204 states. [2020-07-18 05:16:57,051 INFO L87 Difference]: Start difference. First operand 161 states. Second operand 204 states. [2020-07-18 05:16:57,063 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:16:57,064 INFO L93 Difference]: Finished difference Result 204 states and 224 transitions. [2020-07-18 05:16:57,064 INFO L276 IsEmpty]: Start isEmpty. Operand 204 states and 224 transitions. [2020-07-18 05:16:57,066 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 05:16:57,066 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 05:16:57,066 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 05:16:57,066 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 05:16:57,067 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 161 states. [2020-07-18 05:16:57,075 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 161 states to 161 states and 174 transitions. [2020-07-18 05:16:57,076 INFO L78 Accepts]: Start accepts. Automaton has 161 states and 174 transitions. Word has length 79 [2020-07-18 05:16:57,076 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 05:16:57,076 INFO L479 AbstractCegarLoop]: Abstraction has 161 states and 174 transitions. [2020-07-18 05:16:57,076 INFO L480 AbstractCegarLoop]: Interpolant automaton has 11 states. [2020-07-18 05:16:57,077 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 161 states and 174 transitions. [2020-07-18 05:16:57,363 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 174 edges. 174 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:16:57,363 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 174 transitions. [2020-07-18 05:16:57,364 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 81 [2020-07-18 05:16:57,365 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 05:16:57,365 INFO L422 BasicCegarLoop]: trace histogram [2, 2, 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] [2020-07-18 05:16:57,365 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2020-07-18 05:16:57,365 INFO L427 AbstractCegarLoop]: === Iteration 5 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 05:16:57,366 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 05:16:57,366 INFO L82 PathProgramCache]: Analyzing trace with hash -1820928426, now seen corresponding path program 1 times [2020-07-18 05:16:57,367 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 05:16:57,367 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1509795471] [2020-07-18 05:16:57,367 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 05:16:57,412 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:16:57,500 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:16:57,503 INFO L280 TraceCheckUtils]: 0: Hoare triple {5487#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {5430#true} is VALID [2020-07-18 05:16:57,504 INFO L280 TraceCheckUtils]: 1: Hoare triple {5430#true} #valid := #valid[0 := 0]; {5430#true} is VALID [2020-07-18 05:16:57,504 INFO L280 TraceCheckUtils]: 2: Hoare triple {5430#true} assume 0 < #StackHeapBarrier; {5430#true} is VALID [2020-07-18 05:16:57,504 INFO L280 TraceCheckUtils]: 3: Hoare triple {5430#true} assume true; {5430#true} is VALID [2020-07-18 05:16:57,504 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {5430#true} {5430#true} #259#return; {5430#true} is VALID [2020-07-18 05:16:57,509 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:16:57,580 INFO L280 TraceCheckUtils]: 0: Hoare triple {5430#true} ~from := #in~from; {5488#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:16:57,581 INFO L280 TraceCheckUtils]: 1: Hoare triple {5488#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~until := #in~until; {5488#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:16:57,582 INFO L280 TraceCheckUtils]: 2: Hoare triple {5488#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~len~1 := ~from; {5489#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:16:57,582 INFO L280 TraceCheckUtils]: 3: Hoare triple {5489#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #t~short12 := ~len~1 < ~until; {5489#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:16:57,583 INFO L280 TraceCheckUtils]: 4: Hoare triple {5489#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume #t~short12; {5489#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:16:57,583 INFO L280 TraceCheckUtils]: 5: Hoare triple {5489#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {5489#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:16:57,584 INFO L280 TraceCheckUtils]: 6: Hoare triple {5489#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #t~short12 := 0 != #t~nondet11; {5489#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:16:57,584 INFO L280 TraceCheckUtils]: 7: Hoare triple {5489#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume !#t~short12; {5489#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:16:57,586 INFO L280 TraceCheckUtils]: 8: Hoare triple {5489#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} havoc #t~nondet11; {5489#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:16:57,588 INFO L280 TraceCheckUtils]: 9: Hoare triple {5489#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} havoc #t~short12; {5489#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:16:57,589 INFO L280 TraceCheckUtils]: 10: Hoare triple {5489#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #res := ~len~1; {5490#(or (<= 2 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:57,591 INFO L280 TraceCheckUtils]: 11: Hoare triple {5490#(or (<= 2 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} assume true; {5490#(or (<= 2 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:57,592 INFO L275 TraceCheckUtils]: 12: Hoare quadruple {5490#(or (<= 2 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} {5430#true} #243#return; {5450#(<= 2 |main_#t~ret14|)} is VALID [2020-07-18 05:16:57,615 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:16:57,701 INFO L280 TraceCheckUtils]: 0: Hoare triple {5491#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~len := #in~len; {5492#(= |sll_create_#in~len| sll_create_~len)} is VALID [2020-07-18 05:16:57,702 INFO L280 TraceCheckUtils]: 1: Hoare triple {5492#(= |sll_create_#in~len| sll_create_~len)} ~head~0.base, ~head~0.offset := 0, 0; {5492#(= |sll_create_#in~len| sll_create_~len)} is VALID [2020-07-18 05:16:57,703 INFO L280 TraceCheckUtils]: 2: Hoare triple {5492#(= |sll_create_#in~len| sll_create_~len)} #t~post2 := ~len; {5493#(= |sll_create_#in~len| |sll_create_#t~post2|)} is VALID [2020-07-18 05:16:57,704 INFO L280 TraceCheckUtils]: 3: Hoare triple {5493#(= |sll_create_#in~len| |sll_create_#t~post2|)} ~len := #t~post2 - 1; {5494#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:16:57,704 INFO L280 TraceCheckUtils]: 4: Hoare triple {5494#(<= |sll_create_#in~len| (+ sll_create_~len 1))} assume !!(#t~post2 > 0); {5494#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:16:57,705 INFO L280 TraceCheckUtils]: 5: Hoare triple {5494#(<= |sll_create_#in~len| (+ sll_create_~len 1))} havoc #t~post2; {5494#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:16:57,705 INFO L280 TraceCheckUtils]: 6: Hoare triple {5494#(<= |sll_create_#in~len| (+ sll_create_~len 1))} SUMMARY for call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(4); srcloc: L566 {5494#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:16:57,706 INFO L280 TraceCheckUtils]: 7: Hoare triple {5494#(<= |sll_create_#in~len| (+ sll_create_~len 1))} ~new_head~0.base, ~new_head~0.offset := #t~malloc3.base, #t~malloc3.offset; {5494#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:16:57,707 INFO L280 TraceCheckUtils]: 8: Hoare triple {5494#(<= |sll_create_#in~len| (+ sll_create_~len 1))} assume !(0 == ~new_head~0.base && 0 == ~new_head~0.offset); {5494#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:16:57,707 INFO L280 TraceCheckUtils]: 9: Hoare triple {5494#(<= |sll_create_#in~len| (+ sll_create_~len 1))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4); srcloc: L567-1 {5494#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:16:57,708 INFO L280 TraceCheckUtils]: 10: Hoare triple {5494#(<= |sll_create_#in~len| (+ sll_create_~len 1))} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset; {5494#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:16:57,708 INFO L280 TraceCheckUtils]: 11: Hoare triple {5494#(<= |sll_create_#in~len| (+ sll_create_~len 1))} #t~post2 := ~len; {5495#(<= |sll_create_#in~len| (+ |sll_create_#t~post2| 1))} is VALID [2020-07-18 05:16:57,709 INFO L280 TraceCheckUtils]: 12: Hoare triple {5495#(<= |sll_create_#in~len| (+ |sll_create_#t~post2| 1))} ~len := #t~post2 - 1; {5495#(<= |sll_create_#in~len| (+ |sll_create_#t~post2| 1))} is VALID [2020-07-18 05:16:57,710 INFO L280 TraceCheckUtils]: 13: Hoare triple {5495#(<= |sll_create_#in~len| (+ |sll_create_#t~post2| 1))} assume !(#t~post2 > 0); {5496#(<= |sll_create_#in~len| 1)} is VALID [2020-07-18 05:16:57,710 INFO L280 TraceCheckUtils]: 14: Hoare triple {5496#(<= |sll_create_#in~len| 1)} havoc #t~post2; {5496#(<= |sll_create_#in~len| 1)} is VALID [2020-07-18 05:16:57,711 INFO L280 TraceCheckUtils]: 15: Hoare triple {5496#(<= |sll_create_#in~len| 1)} #res.base, #res.offset := ~head~0.base, ~head~0.offset; {5496#(<= |sll_create_#in~len| 1)} is VALID [2020-07-18 05:16:57,712 INFO L280 TraceCheckUtils]: 16: Hoare triple {5496#(<= |sll_create_#in~len| 1)} assume true; {5496#(<= |sll_create_#in~len| 1)} is VALID [2020-07-18 05:16:57,713 INFO L275 TraceCheckUtils]: 17: Hoare quadruple {5496#(<= |sll_create_#in~len| 1)} {5451#(<= 2 main_~len~2)} #245#return; {5431#false} is VALID [2020-07-18 05:16:57,715 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:16:57,719 INFO L280 TraceCheckUtils]: 0: Hoare triple {5430#true} ~from := #in~from; {5430#true} is VALID [2020-07-18 05:16:57,719 INFO L280 TraceCheckUtils]: 1: Hoare triple {5430#true} ~until := #in~until; {5430#true} is VALID [2020-07-18 05:16:57,720 INFO L280 TraceCheckUtils]: 2: Hoare triple {5430#true} ~len~1 := ~from; {5430#true} is VALID [2020-07-18 05:16:57,720 INFO L280 TraceCheckUtils]: 3: Hoare triple {5430#true} #t~short12 := ~len~1 < ~until; {5430#true} is VALID [2020-07-18 05:16:57,720 INFO L280 TraceCheckUtils]: 4: Hoare triple {5430#true} assume !#t~short12; {5430#true} is VALID [2020-07-18 05:16:57,720 INFO L280 TraceCheckUtils]: 5: Hoare triple {5430#true} assume !#t~short12; {5430#true} is VALID [2020-07-18 05:16:57,721 INFO L280 TraceCheckUtils]: 6: Hoare triple {5430#true} havoc #t~nondet11; {5430#true} is VALID [2020-07-18 05:16:57,721 INFO L280 TraceCheckUtils]: 7: Hoare triple {5430#true} havoc #t~short12; {5430#true} is VALID [2020-07-18 05:16:57,721 INFO L280 TraceCheckUtils]: 8: Hoare triple {5430#true} #res := ~len~1; {5430#true} is VALID [2020-07-18 05:16:57,721 INFO L280 TraceCheckUtils]: 9: Hoare triple {5430#true} assume true; {5430#true} is VALID [2020-07-18 05:16:57,721 INFO L275 TraceCheckUtils]: 10: Hoare quadruple {5430#true} {5431#false} #247#return; {5431#false} is VALID [2020-07-18 05:16:57,723 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:16:57,729 INFO L280 TraceCheckUtils]: 0: Hoare triple {5430#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {5430#true} is VALID [2020-07-18 05:16:57,729 INFO L280 TraceCheckUtils]: 1: Hoare triple {5430#true} ~len~0 := 0; {5430#true} is VALID [2020-07-18 05:16:57,730 INFO L280 TraceCheckUtils]: 2: Hoare triple {5430#true} assume !(~head.base != 0 || ~head.offset != 0); {5430#true} is VALID [2020-07-18 05:16:57,730 INFO L280 TraceCheckUtils]: 3: Hoare triple {5430#true} #res := ~len~0; {5430#true} is VALID [2020-07-18 05:16:57,730 INFO L280 TraceCheckUtils]: 4: Hoare triple {5430#true} assume true; {5430#true} is VALID [2020-07-18 05:16:57,730 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {5430#true} {5431#false} #253#return; {5431#false} is VALID [2020-07-18 05:16:57,731 INFO L263 TraceCheckUtils]: 0: Hoare triple {5430#true} call ULTIMATE.init(); {5487#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 05:16:57,731 INFO L280 TraceCheckUtils]: 1: Hoare triple {5487#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {5430#true} is VALID [2020-07-18 05:16:57,732 INFO L280 TraceCheckUtils]: 2: Hoare triple {5430#true} #valid := #valid[0 := 0]; {5430#true} is VALID [2020-07-18 05:16:57,732 INFO L280 TraceCheckUtils]: 3: Hoare triple {5430#true} assume 0 < #StackHeapBarrier; {5430#true} is VALID [2020-07-18 05:16:57,732 INFO L280 TraceCheckUtils]: 4: Hoare triple {5430#true} assume true; {5430#true} is VALID [2020-07-18 05:16:57,732 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {5430#true} {5430#true} #259#return; {5430#true} is VALID [2020-07-18 05:16:57,732 INFO L263 TraceCheckUtils]: 6: Hoare triple {5430#true} call #t~ret24 := main(); {5430#true} is VALID [2020-07-18 05:16:57,733 INFO L263 TraceCheckUtils]: 7: Hoare triple {5430#true} call #t~ret14 := _get_nondet_int(2, 5); {5430#true} is VALID [2020-07-18 05:16:57,733 INFO L280 TraceCheckUtils]: 8: Hoare triple {5430#true} ~from := #in~from; {5488#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:16:57,734 INFO L280 TraceCheckUtils]: 9: Hoare triple {5488#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~until := #in~until; {5488#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:16:57,734 INFO L280 TraceCheckUtils]: 10: Hoare triple {5488#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~len~1 := ~from; {5489#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:16:57,735 INFO L280 TraceCheckUtils]: 11: Hoare triple {5489#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #t~short12 := ~len~1 < ~until; {5489#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:16:57,735 INFO L280 TraceCheckUtils]: 12: Hoare triple {5489#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume #t~short12; {5489#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:16:57,736 INFO L280 TraceCheckUtils]: 13: Hoare triple {5489#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {5489#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:16:57,736 INFO L280 TraceCheckUtils]: 14: Hoare triple {5489#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #t~short12 := 0 != #t~nondet11; {5489#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:16:57,737 INFO L280 TraceCheckUtils]: 15: Hoare triple {5489#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume !#t~short12; {5489#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:16:57,737 INFO L280 TraceCheckUtils]: 16: Hoare triple {5489#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} havoc #t~nondet11; {5489#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:16:57,754 INFO L280 TraceCheckUtils]: 17: Hoare triple {5489#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} havoc #t~short12; {5489#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:16:57,755 INFO L280 TraceCheckUtils]: 18: Hoare triple {5489#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #res := ~len~1; {5490#(or (<= 2 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:57,755 INFO L280 TraceCheckUtils]: 19: Hoare triple {5490#(or (<= 2 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} assume true; {5490#(or (<= 2 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:16:57,756 INFO L275 TraceCheckUtils]: 20: Hoare quadruple {5490#(or (<= 2 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} {5430#true} #243#return; {5450#(<= 2 |main_#t~ret14|)} is VALID [2020-07-18 05:16:57,757 INFO L280 TraceCheckUtils]: 21: Hoare triple {5450#(<= 2 |main_#t~ret14|)} assume -2147483648 <= #t~ret14 && #t~ret14 <= 2147483647; {5450#(<= 2 |main_#t~ret14|)} is VALID [2020-07-18 05:16:57,757 INFO L280 TraceCheckUtils]: 22: Hoare triple {5450#(<= 2 |main_#t~ret14|)} ~len~2 := #t~ret14; {5451#(<= 2 main_~len~2)} is VALID [2020-07-18 05:16:57,758 INFO L280 TraceCheckUtils]: 23: Hoare triple {5451#(<= 2 main_~len~2)} havoc #t~ret14; {5451#(<= 2 main_~len~2)} is VALID [2020-07-18 05:16:57,758 INFO L280 TraceCheckUtils]: 24: Hoare triple {5451#(<= 2 main_~len~2)} SUMMARY for call ~#s~0.base, ~#s~0.offset := #Ultimate.allocOnStack(4); srcloc: L617 {5451#(<= 2 main_~len~2)} is VALID [2020-07-18 05:16:57,759 INFO L263 TraceCheckUtils]: 25: Hoare triple {5451#(<= 2 main_~len~2)} call #t~ret15.base, #t~ret15.offset := sll_create(~len~2); {5491#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-18 05:16:57,760 INFO L280 TraceCheckUtils]: 26: Hoare triple {5491#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~len := #in~len; {5492#(= |sll_create_#in~len| sll_create_~len)} is VALID [2020-07-18 05:16:57,760 INFO L280 TraceCheckUtils]: 27: Hoare triple {5492#(= |sll_create_#in~len| sll_create_~len)} ~head~0.base, ~head~0.offset := 0, 0; {5492#(= |sll_create_#in~len| sll_create_~len)} is VALID [2020-07-18 05:16:57,761 INFO L280 TraceCheckUtils]: 28: Hoare triple {5492#(= |sll_create_#in~len| sll_create_~len)} #t~post2 := ~len; {5493#(= |sll_create_#in~len| |sll_create_#t~post2|)} is VALID [2020-07-18 05:16:57,762 INFO L280 TraceCheckUtils]: 29: Hoare triple {5493#(= |sll_create_#in~len| |sll_create_#t~post2|)} ~len := #t~post2 - 1; {5494#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:16:57,762 INFO L280 TraceCheckUtils]: 30: Hoare triple {5494#(<= |sll_create_#in~len| (+ sll_create_~len 1))} assume !!(#t~post2 > 0); {5494#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:16:57,763 INFO L280 TraceCheckUtils]: 31: Hoare triple {5494#(<= |sll_create_#in~len| (+ sll_create_~len 1))} havoc #t~post2; {5494#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:16:57,764 INFO L280 TraceCheckUtils]: 32: Hoare triple {5494#(<= |sll_create_#in~len| (+ sll_create_~len 1))} SUMMARY for call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(4); srcloc: L566 {5494#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:16:57,764 INFO L280 TraceCheckUtils]: 33: Hoare triple {5494#(<= |sll_create_#in~len| (+ sll_create_~len 1))} ~new_head~0.base, ~new_head~0.offset := #t~malloc3.base, #t~malloc3.offset; {5494#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:16:57,765 INFO L280 TraceCheckUtils]: 34: Hoare triple {5494#(<= |sll_create_#in~len| (+ sll_create_~len 1))} assume !(0 == ~new_head~0.base && 0 == ~new_head~0.offset); {5494#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:16:57,766 INFO L280 TraceCheckUtils]: 35: Hoare triple {5494#(<= |sll_create_#in~len| (+ sll_create_~len 1))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4); srcloc: L567-1 {5494#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:16:57,766 INFO L280 TraceCheckUtils]: 36: Hoare triple {5494#(<= |sll_create_#in~len| (+ sll_create_~len 1))} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset; {5494#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:16:57,767 INFO L280 TraceCheckUtils]: 37: Hoare triple {5494#(<= |sll_create_#in~len| (+ sll_create_~len 1))} #t~post2 := ~len; {5495#(<= |sll_create_#in~len| (+ |sll_create_#t~post2| 1))} is VALID [2020-07-18 05:16:57,768 INFO L280 TraceCheckUtils]: 38: Hoare triple {5495#(<= |sll_create_#in~len| (+ |sll_create_#t~post2| 1))} ~len := #t~post2 - 1; {5495#(<= |sll_create_#in~len| (+ |sll_create_#t~post2| 1))} is VALID [2020-07-18 05:16:57,768 INFO L280 TraceCheckUtils]: 39: Hoare triple {5495#(<= |sll_create_#in~len| (+ |sll_create_#t~post2| 1))} assume !(#t~post2 > 0); {5496#(<= |sll_create_#in~len| 1)} is VALID [2020-07-18 05:16:57,769 INFO L280 TraceCheckUtils]: 40: Hoare triple {5496#(<= |sll_create_#in~len| 1)} havoc #t~post2; {5496#(<= |sll_create_#in~len| 1)} is VALID [2020-07-18 05:16:57,769 INFO L280 TraceCheckUtils]: 41: Hoare triple {5496#(<= |sll_create_#in~len| 1)} #res.base, #res.offset := ~head~0.base, ~head~0.offset; {5496#(<= |sll_create_#in~len| 1)} is VALID [2020-07-18 05:16:57,770 INFO L280 TraceCheckUtils]: 42: Hoare triple {5496#(<= |sll_create_#in~len| 1)} assume true; {5496#(<= |sll_create_#in~len| 1)} is VALID [2020-07-18 05:16:57,771 INFO L275 TraceCheckUtils]: 43: Hoare quadruple {5496#(<= |sll_create_#in~len| 1)} {5451#(<= 2 main_~len~2)} #245#return; {5431#false} is VALID [2020-07-18 05:16:57,771 INFO L280 TraceCheckUtils]: 44: Hoare triple {5431#false} SUMMARY for call write~init~$Pointer$(#t~ret15.base, #t~ret15.offset, ~#s~0.base, ~#s~0.offset, 4); srcloc: L617-2 {5431#false} is VALID [2020-07-18 05:16:57,771 INFO L280 TraceCheckUtils]: 45: Hoare triple {5431#false} havoc #t~ret15.base, #t~ret15.offset; {5431#false} is VALID [2020-07-18 05:16:57,772 INFO L263 TraceCheckUtils]: 46: Hoare triple {5431#false} call #t~ret16 := _get_nondet_int(0, ~len~2 - 1); {5430#true} is VALID [2020-07-18 05:16:57,772 INFO L280 TraceCheckUtils]: 47: Hoare triple {5430#true} ~from := #in~from; {5430#true} is VALID [2020-07-18 05:16:57,772 INFO L280 TraceCheckUtils]: 48: Hoare triple {5430#true} ~until := #in~until; {5430#true} is VALID [2020-07-18 05:16:57,772 INFO L280 TraceCheckUtils]: 49: Hoare triple {5430#true} ~len~1 := ~from; {5430#true} is VALID [2020-07-18 05:16:57,772 INFO L280 TraceCheckUtils]: 50: Hoare triple {5430#true} #t~short12 := ~len~1 < ~until; {5430#true} is VALID [2020-07-18 05:16:57,772 INFO L280 TraceCheckUtils]: 51: Hoare triple {5430#true} assume !#t~short12; {5430#true} is VALID [2020-07-18 05:16:57,773 INFO L280 TraceCheckUtils]: 52: Hoare triple {5430#true} assume !#t~short12; {5430#true} is VALID [2020-07-18 05:16:57,773 INFO L280 TraceCheckUtils]: 53: Hoare triple {5430#true} havoc #t~nondet11; {5430#true} is VALID [2020-07-18 05:16:57,773 INFO L280 TraceCheckUtils]: 54: Hoare triple {5430#true} havoc #t~short12; {5430#true} is VALID [2020-07-18 05:16:57,773 INFO L280 TraceCheckUtils]: 55: Hoare triple {5430#true} #res := ~len~1; {5430#true} is VALID [2020-07-18 05:16:57,773 INFO L280 TraceCheckUtils]: 56: Hoare triple {5430#true} assume true; {5430#true} is VALID [2020-07-18 05:16:57,774 INFO L275 TraceCheckUtils]: 57: Hoare quadruple {5430#true} {5431#false} #247#return; {5431#false} is VALID [2020-07-18 05:16:57,774 INFO L280 TraceCheckUtils]: 58: Hoare triple {5431#false} assume -2147483648 <= #t~ret16 && #t~ret16 <= 2147483647; {5431#false} is VALID [2020-07-18 05:16:57,774 INFO L280 TraceCheckUtils]: 59: Hoare triple {5431#false} ~k~0 := #t~ret16; {5431#false} is VALID [2020-07-18 05:16:57,774 INFO L280 TraceCheckUtils]: 60: Hoare triple {5431#false} havoc #t~ret16; {5431#false} is VALID [2020-07-18 05:16:57,774 INFO L280 TraceCheckUtils]: 61: Hoare triple {5431#false} ~i~0 := 0; {5431#false} is VALID [2020-07-18 05:16:57,774 INFO L280 TraceCheckUtils]: 62: Hoare triple {5431#false} #t~short18 := ~i~0 < ~k~0; {5431#false} is VALID [2020-07-18 05:16:57,775 INFO L280 TraceCheckUtils]: 63: Hoare triple {5431#false} assume !#t~short18; {5431#false} is VALID [2020-07-18 05:16:57,775 INFO L280 TraceCheckUtils]: 64: Hoare triple {5431#false} assume !#t~short18; {5431#false} is VALID [2020-07-18 05:16:57,775 INFO L280 TraceCheckUtils]: 65: Hoare triple {5431#false} havoc #t~nondet17; {5431#false} is VALID [2020-07-18 05:16:57,775 INFO L280 TraceCheckUtils]: 66: Hoare triple {5431#false} havoc #t~short18; {5431#false} is VALID [2020-07-18 05:16:57,775 INFO L280 TraceCheckUtils]: 67: Hoare triple {5431#false} SUMMARY for call #t~mem21.base, #t~mem21.offset := read~$Pointer$(~#s~0.base, ~#s~0.offset, 4); srcloc: L620-12 {5431#false} is VALID [2020-07-18 05:16:57,775 INFO L263 TraceCheckUtils]: 68: Hoare triple {5431#false} call #t~ret22 := sll_length(#t~mem21.base, #t~mem21.offset); {5430#true} is VALID [2020-07-18 05:16:57,776 INFO L280 TraceCheckUtils]: 69: Hoare triple {5430#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {5430#true} is VALID [2020-07-18 05:16:57,776 INFO L280 TraceCheckUtils]: 70: Hoare triple {5430#true} ~len~0 := 0; {5430#true} is VALID [2020-07-18 05:16:57,776 INFO L280 TraceCheckUtils]: 71: Hoare triple {5430#true} assume !(~head.base != 0 || ~head.offset != 0); {5430#true} is VALID [2020-07-18 05:16:57,776 INFO L280 TraceCheckUtils]: 72: Hoare triple {5430#true} #res := ~len~0; {5430#true} is VALID [2020-07-18 05:16:57,776 INFO L280 TraceCheckUtils]: 73: Hoare triple {5430#true} assume true; {5430#true} is VALID [2020-07-18 05:16:57,777 INFO L275 TraceCheckUtils]: 74: Hoare quadruple {5430#true} {5431#false} #253#return; {5431#false} is VALID [2020-07-18 05:16:57,777 INFO L280 TraceCheckUtils]: 75: Hoare triple {5431#false} assume -2147483648 <= #t~ret22 && #t~ret22 <= 2147483647; {5431#false} is VALID [2020-07-18 05:16:57,777 INFO L280 TraceCheckUtils]: 76: Hoare triple {5431#false} assume ~k~0 + ~len~2 != #t~ret22; {5431#false} is VALID [2020-07-18 05:16:57,777 INFO L280 TraceCheckUtils]: 77: Hoare triple {5431#false} havoc #t~ret22; {5431#false} is VALID [2020-07-18 05:16:57,777 INFO L280 TraceCheckUtils]: 78: Hoare triple {5431#false} havoc #t~mem21.base, #t~mem21.offset; {5431#false} is VALID [2020-07-18 05:16:57,778 INFO L280 TraceCheckUtils]: 79: Hoare triple {5431#false} assume !false; {5431#false} is VALID [2020-07-18 05:16:57,787 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 0 proven. 13 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2020-07-18 05:16:57,787 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1509795471] [2020-07-18 05:16:57,788 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2020-07-18 05:16:57,788 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14] total 14 [2020-07-18 05:16:57,788 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1499820011] [2020-07-18 05:16:57,789 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 80 [2020-07-18 05:16:57,789 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 05:16:57,790 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states. [2020-07-18 05:16:57,885 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 80 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:16:57,885 INFO L459 AbstractCegarLoop]: Interpolant automaton has 14 states [2020-07-18 05:16:57,886 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 05:16:57,886 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2020-07-18 05:16:57,886 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=27, Invalid=155, Unknown=0, NotChecked=0, Total=182 [2020-07-18 05:16:57,886 INFO L87 Difference]: Start difference. First operand 161 states and 174 transitions. Second operand 14 states. [2020-07-18 05:17:01,784 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:17:01,784 INFO L93 Difference]: Finished difference Result 307 states and 339 transitions. [2020-07-18 05:17:01,784 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2020-07-18 05:17:01,785 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 80 [2020-07-18 05:17:01,786 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 05:17:01,786 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2020-07-18 05:17:01,810 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 334 transitions. [2020-07-18 05:17:01,810 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2020-07-18 05:17:01,822 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 334 transitions. [2020-07-18 05:17:01,823 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 24 states and 334 transitions. [2020-07-18 05:17:02,216 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:17:02,222 INFO L225 Difference]: With dead ends: 307 [2020-07-18 05:17:02,222 INFO L226 Difference]: Without dead ends: 221 [2020-07-18 05:17:02,224 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 42 GetRequests, 13 SyntacticMatches, 0 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 120 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=160, Invalid=770, Unknown=0, NotChecked=0, Total=930 [2020-07-18 05:17:02,224 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 221 states. [2020-07-18 05:17:02,619 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 221 to 170. [2020-07-18 05:17:02,619 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 05:17:02,619 INFO L82 GeneralOperation]: Start isEquivalent. First operand 221 states. Second operand 170 states. [2020-07-18 05:17:02,619 INFO L74 IsIncluded]: Start isIncluded. First operand 221 states. Second operand 170 states. [2020-07-18 05:17:02,619 INFO L87 Difference]: Start difference. First operand 221 states. Second operand 170 states. [2020-07-18 05:17:02,628 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:17:02,628 INFO L93 Difference]: Finished difference Result 221 states and 245 transitions. [2020-07-18 05:17:02,628 INFO L276 IsEmpty]: Start isEmpty. Operand 221 states and 245 transitions. [2020-07-18 05:17:02,629 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 05:17:02,630 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 05:17:02,630 INFO L74 IsIncluded]: Start isIncluded. First operand 170 states. Second operand 221 states. [2020-07-18 05:17:02,630 INFO L87 Difference]: Start difference. First operand 170 states. Second operand 221 states. [2020-07-18 05:17:02,637 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:17:02,638 INFO L93 Difference]: Finished difference Result 221 states and 245 transitions. [2020-07-18 05:17:02,638 INFO L276 IsEmpty]: Start isEmpty. Operand 221 states and 245 transitions. [2020-07-18 05:17:02,639 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 05:17:02,639 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 05:17:02,639 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 05:17:02,639 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 05:17:02,639 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 170 states. [2020-07-18 05:17:02,643 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 170 states to 170 states and 184 transitions. [2020-07-18 05:17:02,644 INFO L78 Accepts]: Start accepts. Automaton has 170 states and 184 transitions. Word has length 80 [2020-07-18 05:17:02,644 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 05:17:02,644 INFO L479 AbstractCegarLoop]: Abstraction has 170 states and 184 transitions. [2020-07-18 05:17:02,644 INFO L480 AbstractCegarLoop]: Interpolant automaton has 14 states. [2020-07-18 05:17:02,644 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 170 states and 184 transitions. [2020-07-18 05:17:02,940 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 184 edges. 184 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:17:02,941 INFO L276 IsEmpty]: Start isEmpty. Operand 170 states and 184 transitions. [2020-07-18 05:17:02,943 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 82 [2020-07-18 05:17:02,943 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 05:17:02,943 INFO L422 BasicCegarLoop]: trace histogram [3, 2, 2, 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] [2020-07-18 05:17:02,943 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2020-07-18 05:17:02,944 INFO L427 AbstractCegarLoop]: === Iteration 6 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 05:17:02,944 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 05:17:02,944 INFO L82 PathProgramCache]: Analyzing trace with hash 1107353865, now seen corresponding path program 2 times [2020-07-18 05:17:02,944 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 05:17:02,944 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1453161193] [2020-07-18 05:17:02,945 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 05:17:02,966 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:03,035 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:03,039 INFO L280 TraceCheckUtils]: 0: Hoare triple {6992#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {6934#true} is VALID [2020-07-18 05:17:03,040 INFO L280 TraceCheckUtils]: 1: Hoare triple {6934#true} #valid := #valid[0 := 0]; {6934#true} is VALID [2020-07-18 05:17:03,040 INFO L280 TraceCheckUtils]: 2: Hoare triple {6934#true} assume 0 < #StackHeapBarrier; {6934#true} is VALID [2020-07-18 05:17:03,040 INFO L280 TraceCheckUtils]: 3: Hoare triple {6934#true} assume true; {6934#true} is VALID [2020-07-18 05:17:03,040 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {6934#true} {6934#true} #259#return; {6934#true} is VALID [2020-07-18 05:17:03,044 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:03,139 INFO L280 TraceCheckUtils]: 0: Hoare triple {6934#true} ~from := #in~from; {6993#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:17:03,140 INFO L280 TraceCheckUtils]: 1: Hoare triple {6993#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~until := #in~until; {6993#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:17:03,141 INFO L280 TraceCheckUtils]: 2: Hoare triple {6993#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~len~1 := ~from; {6994#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:03,141 INFO L280 TraceCheckUtils]: 3: Hoare triple {6994#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #t~short12 := ~len~1 < ~until; {6994#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:03,142 INFO L280 TraceCheckUtils]: 4: Hoare triple {6994#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume #t~short12; {6994#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:03,143 INFO L280 TraceCheckUtils]: 5: Hoare triple {6994#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {6994#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:03,143 INFO L280 TraceCheckUtils]: 6: Hoare triple {6994#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #t~short12 := 0 != #t~nondet11; {6994#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:03,144 INFO L280 TraceCheckUtils]: 7: Hoare triple {6994#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume !!#t~short12; {6994#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:03,144 INFO L280 TraceCheckUtils]: 8: Hoare triple {6994#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} havoc #t~nondet11; {6994#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:03,145 INFO L280 TraceCheckUtils]: 9: Hoare triple {6994#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} havoc #t~short12; {6994#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:03,145 INFO L280 TraceCheckUtils]: 10: Hoare triple {6994#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #t~post13 := ~len~1; {6995#(or (<= 2 |_get_nondet_int_#t~post13|) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:03,146 INFO L280 TraceCheckUtils]: 11: Hoare triple {6995#(or (<= 2 |_get_nondet_int_#t~post13|) (not (= 2 |_get_nondet_int_#in~from|)))} ~len~1 := 1 + #t~post13; {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:03,147 INFO L280 TraceCheckUtils]: 12: Hoare triple {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} havoc #t~post13; {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:03,147 INFO L280 TraceCheckUtils]: 13: Hoare triple {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} #t~short12 := ~len~1 < ~until; {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:03,148 INFO L280 TraceCheckUtils]: 14: Hoare triple {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} assume #t~short12; {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:03,148 INFO L280 TraceCheckUtils]: 15: Hoare triple {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:03,149 INFO L280 TraceCheckUtils]: 16: Hoare triple {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} #t~short12 := 0 != #t~nondet11; {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:03,150 INFO L280 TraceCheckUtils]: 17: Hoare triple {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} assume !#t~short12; {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:03,150 INFO L280 TraceCheckUtils]: 18: Hoare triple {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} havoc #t~nondet11; {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:03,151 INFO L280 TraceCheckUtils]: 19: Hoare triple {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} havoc #t~short12; {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:03,151 INFO L280 TraceCheckUtils]: 20: Hoare triple {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} #res := ~len~1; {6997#(or (<= 3 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:03,152 INFO L280 TraceCheckUtils]: 21: Hoare triple {6997#(or (<= 3 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} assume true; {6997#(or (<= 3 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:03,153 INFO L275 TraceCheckUtils]: 22: Hoare quadruple {6997#(or (<= 3 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} {6934#true} #243#return; {6964#(<= 3 |main_#t~ret14|)} is VALID [2020-07-18 05:17:03,181 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:03,241 INFO L280 TraceCheckUtils]: 0: Hoare triple {6998#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~len := #in~len; {6999#(= |sll_create_#in~len| sll_create_~len)} is VALID [2020-07-18 05:17:03,242 INFO L280 TraceCheckUtils]: 1: Hoare triple {6999#(= |sll_create_#in~len| sll_create_~len)} ~head~0.base, ~head~0.offset := 0, 0; {6999#(= |sll_create_#in~len| sll_create_~len)} is VALID [2020-07-18 05:17:03,243 INFO L280 TraceCheckUtils]: 2: Hoare triple {6999#(= |sll_create_#in~len| sll_create_~len)} #t~post2 := ~len; {7000#(= |sll_create_#in~len| |sll_create_#t~post2|)} is VALID [2020-07-18 05:17:03,243 INFO L280 TraceCheckUtils]: 3: Hoare triple {7000#(= |sll_create_#in~len| |sll_create_#t~post2|)} ~len := #t~post2 - 1; {7000#(= |sll_create_#in~len| |sll_create_#t~post2|)} is VALID [2020-07-18 05:17:03,244 INFO L280 TraceCheckUtils]: 4: Hoare triple {7000#(= |sll_create_#in~len| |sll_create_#t~post2|)} assume !(#t~post2 > 0); {7001#(<= |sll_create_#in~len| 0)} is VALID [2020-07-18 05:17:03,245 INFO L280 TraceCheckUtils]: 5: Hoare triple {7001#(<= |sll_create_#in~len| 0)} havoc #t~post2; {7001#(<= |sll_create_#in~len| 0)} is VALID [2020-07-18 05:17:03,245 INFO L280 TraceCheckUtils]: 6: Hoare triple {7001#(<= |sll_create_#in~len| 0)} #res.base, #res.offset := ~head~0.base, ~head~0.offset; {7001#(<= |sll_create_#in~len| 0)} is VALID [2020-07-18 05:17:03,246 INFO L280 TraceCheckUtils]: 7: Hoare triple {7001#(<= |sll_create_#in~len| 0)} assume true; {7001#(<= |sll_create_#in~len| 0)} is VALID [2020-07-18 05:17:03,247 INFO L275 TraceCheckUtils]: 8: Hoare quadruple {7001#(<= |sll_create_#in~len| 0)} {6965#(<= 3 main_~len~2)} #245#return; {6935#false} is VALID [2020-07-18 05:17:03,249 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:03,253 INFO L280 TraceCheckUtils]: 0: Hoare triple {6934#true} ~from := #in~from; {6934#true} is VALID [2020-07-18 05:17:03,253 INFO L280 TraceCheckUtils]: 1: Hoare triple {6934#true} ~until := #in~until; {6934#true} is VALID [2020-07-18 05:17:03,253 INFO L280 TraceCheckUtils]: 2: Hoare triple {6934#true} ~len~1 := ~from; {6934#true} is VALID [2020-07-18 05:17:03,253 INFO L280 TraceCheckUtils]: 3: Hoare triple {6934#true} #t~short12 := ~len~1 < ~until; {6934#true} is VALID [2020-07-18 05:17:03,254 INFO L280 TraceCheckUtils]: 4: Hoare triple {6934#true} assume !#t~short12; {6934#true} is VALID [2020-07-18 05:17:03,254 INFO L280 TraceCheckUtils]: 5: Hoare triple {6934#true} assume !#t~short12; {6934#true} is VALID [2020-07-18 05:17:03,254 INFO L280 TraceCheckUtils]: 6: Hoare triple {6934#true} havoc #t~nondet11; {6934#true} is VALID [2020-07-18 05:17:03,254 INFO L280 TraceCheckUtils]: 7: Hoare triple {6934#true} havoc #t~short12; {6934#true} is VALID [2020-07-18 05:17:03,254 INFO L280 TraceCheckUtils]: 8: Hoare triple {6934#true} #res := ~len~1; {6934#true} is VALID [2020-07-18 05:17:03,255 INFO L280 TraceCheckUtils]: 9: Hoare triple {6934#true} assume true; {6934#true} is VALID [2020-07-18 05:17:03,255 INFO L275 TraceCheckUtils]: 10: Hoare quadruple {6934#true} {6935#false} #247#return; {6935#false} is VALID [2020-07-18 05:17:03,256 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:03,259 INFO L280 TraceCheckUtils]: 0: Hoare triple {6934#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {6934#true} is VALID [2020-07-18 05:17:03,259 INFO L280 TraceCheckUtils]: 1: Hoare triple {6934#true} ~len~0 := 0; {6934#true} is VALID [2020-07-18 05:17:03,260 INFO L280 TraceCheckUtils]: 2: Hoare triple {6934#true} assume !(~head.base != 0 || ~head.offset != 0); {6934#true} is VALID [2020-07-18 05:17:03,260 INFO L280 TraceCheckUtils]: 3: Hoare triple {6934#true} #res := ~len~0; {6934#true} is VALID [2020-07-18 05:17:03,260 INFO L280 TraceCheckUtils]: 4: Hoare triple {6934#true} assume true; {6934#true} is VALID [2020-07-18 05:17:03,260 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {6934#true} {6935#false} #253#return; {6935#false} is VALID [2020-07-18 05:17:03,261 INFO L263 TraceCheckUtils]: 0: Hoare triple {6934#true} call ULTIMATE.init(); {6992#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 05:17:03,261 INFO L280 TraceCheckUtils]: 1: Hoare triple {6992#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {6934#true} is VALID [2020-07-18 05:17:03,262 INFO L280 TraceCheckUtils]: 2: Hoare triple {6934#true} #valid := #valid[0 := 0]; {6934#true} is VALID [2020-07-18 05:17:03,262 INFO L280 TraceCheckUtils]: 3: Hoare triple {6934#true} assume 0 < #StackHeapBarrier; {6934#true} is VALID [2020-07-18 05:17:03,262 INFO L280 TraceCheckUtils]: 4: Hoare triple {6934#true} assume true; {6934#true} is VALID [2020-07-18 05:17:03,262 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {6934#true} {6934#true} #259#return; {6934#true} is VALID [2020-07-18 05:17:03,262 INFO L263 TraceCheckUtils]: 6: Hoare triple {6934#true} call #t~ret24 := main(); {6934#true} is VALID [2020-07-18 05:17:03,262 INFO L263 TraceCheckUtils]: 7: Hoare triple {6934#true} call #t~ret14 := _get_nondet_int(2, 5); {6934#true} is VALID [2020-07-18 05:17:03,263 INFO L280 TraceCheckUtils]: 8: Hoare triple {6934#true} ~from := #in~from; {6993#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:17:03,264 INFO L280 TraceCheckUtils]: 9: Hoare triple {6993#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~until := #in~until; {6993#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:17:03,264 INFO L280 TraceCheckUtils]: 10: Hoare triple {6993#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~len~1 := ~from; {6994#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:03,265 INFO L280 TraceCheckUtils]: 11: Hoare triple {6994#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #t~short12 := ~len~1 < ~until; {6994#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:03,265 INFO L280 TraceCheckUtils]: 12: Hoare triple {6994#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume #t~short12; {6994#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:03,266 INFO L280 TraceCheckUtils]: 13: Hoare triple {6994#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {6994#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:03,266 INFO L280 TraceCheckUtils]: 14: Hoare triple {6994#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #t~short12 := 0 != #t~nondet11; {6994#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:03,267 INFO L280 TraceCheckUtils]: 15: Hoare triple {6994#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume !!#t~short12; {6994#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:03,267 INFO L280 TraceCheckUtils]: 16: Hoare triple {6994#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} havoc #t~nondet11; {6994#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:03,268 INFO L280 TraceCheckUtils]: 17: Hoare triple {6994#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} havoc #t~short12; {6994#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:03,269 INFO L280 TraceCheckUtils]: 18: Hoare triple {6994#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #t~post13 := ~len~1; {6995#(or (<= 2 |_get_nondet_int_#t~post13|) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:03,269 INFO L280 TraceCheckUtils]: 19: Hoare triple {6995#(or (<= 2 |_get_nondet_int_#t~post13|) (not (= 2 |_get_nondet_int_#in~from|)))} ~len~1 := 1 + #t~post13; {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:03,270 INFO L280 TraceCheckUtils]: 20: Hoare triple {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} havoc #t~post13; {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:03,271 INFO L280 TraceCheckUtils]: 21: Hoare triple {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} #t~short12 := ~len~1 < ~until; {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:03,271 INFO L280 TraceCheckUtils]: 22: Hoare triple {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} assume #t~short12; {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:03,272 INFO L280 TraceCheckUtils]: 23: Hoare triple {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:03,272 INFO L280 TraceCheckUtils]: 24: Hoare triple {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} #t~short12 := 0 != #t~nondet11; {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:03,273 INFO L280 TraceCheckUtils]: 25: Hoare triple {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} assume !#t~short12; {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:03,273 INFO L280 TraceCheckUtils]: 26: Hoare triple {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} havoc #t~nondet11; {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:03,274 INFO L280 TraceCheckUtils]: 27: Hoare triple {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} havoc #t~short12; {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:03,274 INFO L280 TraceCheckUtils]: 28: Hoare triple {6996#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} #res := ~len~1; {6997#(or (<= 3 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:03,275 INFO L280 TraceCheckUtils]: 29: Hoare triple {6997#(or (<= 3 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} assume true; {6997#(or (<= 3 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:03,276 INFO L275 TraceCheckUtils]: 30: Hoare quadruple {6997#(or (<= 3 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} {6934#true} #243#return; {6964#(<= 3 |main_#t~ret14|)} is VALID [2020-07-18 05:17:03,276 INFO L280 TraceCheckUtils]: 31: Hoare triple {6964#(<= 3 |main_#t~ret14|)} assume -2147483648 <= #t~ret14 && #t~ret14 <= 2147483647; {6964#(<= 3 |main_#t~ret14|)} is VALID [2020-07-18 05:17:03,277 INFO L280 TraceCheckUtils]: 32: Hoare triple {6964#(<= 3 |main_#t~ret14|)} ~len~2 := #t~ret14; {6965#(<= 3 main_~len~2)} is VALID [2020-07-18 05:17:03,278 INFO L280 TraceCheckUtils]: 33: Hoare triple {6965#(<= 3 main_~len~2)} havoc #t~ret14; {6965#(<= 3 main_~len~2)} is VALID [2020-07-18 05:17:03,278 INFO L280 TraceCheckUtils]: 34: Hoare triple {6965#(<= 3 main_~len~2)} SUMMARY for call ~#s~0.base, ~#s~0.offset := #Ultimate.allocOnStack(4); srcloc: L617 {6965#(<= 3 main_~len~2)} is VALID [2020-07-18 05:17:03,279 INFO L263 TraceCheckUtils]: 35: Hoare triple {6965#(<= 3 main_~len~2)} call #t~ret15.base, #t~ret15.offset := sll_create(~len~2); {6998#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-18 05:17:03,280 INFO L280 TraceCheckUtils]: 36: Hoare triple {6998#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~len := #in~len; {6999#(= |sll_create_#in~len| sll_create_~len)} is VALID [2020-07-18 05:17:03,280 INFO L280 TraceCheckUtils]: 37: Hoare triple {6999#(= |sll_create_#in~len| sll_create_~len)} ~head~0.base, ~head~0.offset := 0, 0; {6999#(= |sll_create_#in~len| sll_create_~len)} is VALID [2020-07-18 05:17:03,281 INFO L280 TraceCheckUtils]: 38: Hoare triple {6999#(= |sll_create_#in~len| sll_create_~len)} #t~post2 := ~len; {7000#(= |sll_create_#in~len| |sll_create_#t~post2|)} is VALID [2020-07-18 05:17:03,281 INFO L280 TraceCheckUtils]: 39: Hoare triple {7000#(= |sll_create_#in~len| |sll_create_#t~post2|)} ~len := #t~post2 - 1; {7000#(= |sll_create_#in~len| |sll_create_#t~post2|)} is VALID [2020-07-18 05:17:03,282 INFO L280 TraceCheckUtils]: 40: Hoare triple {7000#(= |sll_create_#in~len| |sll_create_#t~post2|)} assume !(#t~post2 > 0); {7001#(<= |sll_create_#in~len| 0)} is VALID [2020-07-18 05:17:03,283 INFO L280 TraceCheckUtils]: 41: Hoare triple {7001#(<= |sll_create_#in~len| 0)} havoc #t~post2; {7001#(<= |sll_create_#in~len| 0)} is VALID [2020-07-18 05:17:03,283 INFO L280 TraceCheckUtils]: 42: Hoare triple {7001#(<= |sll_create_#in~len| 0)} #res.base, #res.offset := ~head~0.base, ~head~0.offset; {7001#(<= |sll_create_#in~len| 0)} is VALID [2020-07-18 05:17:03,284 INFO L280 TraceCheckUtils]: 43: Hoare triple {7001#(<= |sll_create_#in~len| 0)} assume true; {7001#(<= |sll_create_#in~len| 0)} is VALID [2020-07-18 05:17:03,285 INFO L275 TraceCheckUtils]: 44: Hoare quadruple {7001#(<= |sll_create_#in~len| 0)} {6965#(<= 3 main_~len~2)} #245#return; {6935#false} is VALID [2020-07-18 05:17:03,285 INFO L280 TraceCheckUtils]: 45: Hoare triple {6935#false} SUMMARY for call write~init~$Pointer$(#t~ret15.base, #t~ret15.offset, ~#s~0.base, ~#s~0.offset, 4); srcloc: L617-2 {6935#false} is VALID [2020-07-18 05:17:03,285 INFO L280 TraceCheckUtils]: 46: Hoare triple {6935#false} havoc #t~ret15.base, #t~ret15.offset; {6935#false} is VALID [2020-07-18 05:17:03,285 INFO L263 TraceCheckUtils]: 47: Hoare triple {6935#false} call #t~ret16 := _get_nondet_int(0, ~len~2 - 1); {6934#true} is VALID [2020-07-18 05:17:03,285 INFO L280 TraceCheckUtils]: 48: Hoare triple {6934#true} ~from := #in~from; {6934#true} is VALID [2020-07-18 05:17:03,286 INFO L280 TraceCheckUtils]: 49: Hoare triple {6934#true} ~until := #in~until; {6934#true} is VALID [2020-07-18 05:17:03,286 INFO L280 TraceCheckUtils]: 50: Hoare triple {6934#true} ~len~1 := ~from; {6934#true} is VALID [2020-07-18 05:17:03,286 INFO L280 TraceCheckUtils]: 51: Hoare triple {6934#true} #t~short12 := ~len~1 < ~until; {6934#true} is VALID [2020-07-18 05:17:03,286 INFO L280 TraceCheckUtils]: 52: Hoare triple {6934#true} assume !#t~short12; {6934#true} is VALID [2020-07-18 05:17:03,286 INFO L280 TraceCheckUtils]: 53: Hoare triple {6934#true} assume !#t~short12; {6934#true} is VALID [2020-07-18 05:17:03,287 INFO L280 TraceCheckUtils]: 54: Hoare triple {6934#true} havoc #t~nondet11; {6934#true} is VALID [2020-07-18 05:17:03,287 INFO L280 TraceCheckUtils]: 55: Hoare triple {6934#true} havoc #t~short12; {6934#true} is VALID [2020-07-18 05:17:03,287 INFO L280 TraceCheckUtils]: 56: Hoare triple {6934#true} #res := ~len~1; {6934#true} is VALID [2020-07-18 05:17:03,287 INFO L280 TraceCheckUtils]: 57: Hoare triple {6934#true} assume true; {6934#true} is VALID [2020-07-18 05:17:03,287 INFO L275 TraceCheckUtils]: 58: Hoare quadruple {6934#true} {6935#false} #247#return; {6935#false} is VALID [2020-07-18 05:17:03,287 INFO L280 TraceCheckUtils]: 59: Hoare triple {6935#false} assume -2147483648 <= #t~ret16 && #t~ret16 <= 2147483647; {6935#false} is VALID [2020-07-18 05:17:03,288 INFO L280 TraceCheckUtils]: 60: Hoare triple {6935#false} ~k~0 := #t~ret16; {6935#false} is VALID [2020-07-18 05:17:03,288 INFO L280 TraceCheckUtils]: 61: Hoare triple {6935#false} havoc #t~ret16; {6935#false} is VALID [2020-07-18 05:17:03,288 INFO L280 TraceCheckUtils]: 62: Hoare triple {6935#false} ~i~0 := 0; {6935#false} is VALID [2020-07-18 05:17:03,288 INFO L280 TraceCheckUtils]: 63: Hoare triple {6935#false} #t~short18 := ~i~0 < ~k~0; {6935#false} is VALID [2020-07-18 05:17:03,288 INFO L280 TraceCheckUtils]: 64: Hoare triple {6935#false} assume !#t~short18; {6935#false} is VALID [2020-07-18 05:17:03,288 INFO L280 TraceCheckUtils]: 65: Hoare triple {6935#false} assume !#t~short18; {6935#false} is VALID [2020-07-18 05:17:03,289 INFO L280 TraceCheckUtils]: 66: Hoare triple {6935#false} havoc #t~nondet17; {6935#false} is VALID [2020-07-18 05:17:03,289 INFO L280 TraceCheckUtils]: 67: Hoare triple {6935#false} havoc #t~short18; {6935#false} is VALID [2020-07-18 05:17:03,289 INFO L280 TraceCheckUtils]: 68: Hoare triple {6935#false} SUMMARY for call #t~mem21.base, #t~mem21.offset := read~$Pointer$(~#s~0.base, ~#s~0.offset, 4); srcloc: L620-12 {6935#false} is VALID [2020-07-18 05:17:03,289 INFO L263 TraceCheckUtils]: 69: Hoare triple {6935#false} call #t~ret22 := sll_length(#t~mem21.base, #t~mem21.offset); {6934#true} is VALID [2020-07-18 05:17:03,289 INFO L280 TraceCheckUtils]: 70: Hoare triple {6934#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {6934#true} is VALID [2020-07-18 05:17:03,289 INFO L280 TraceCheckUtils]: 71: Hoare triple {6934#true} ~len~0 := 0; {6934#true} is VALID [2020-07-18 05:17:03,290 INFO L280 TraceCheckUtils]: 72: Hoare triple {6934#true} assume !(~head.base != 0 || ~head.offset != 0); {6934#true} is VALID [2020-07-18 05:17:03,290 INFO L280 TraceCheckUtils]: 73: Hoare triple {6934#true} #res := ~len~0; {6934#true} is VALID [2020-07-18 05:17:03,290 INFO L280 TraceCheckUtils]: 74: Hoare triple {6934#true} assume true; {6934#true} is VALID [2020-07-18 05:17:03,290 INFO L275 TraceCheckUtils]: 75: Hoare quadruple {6934#true} {6935#false} #253#return; {6935#false} is VALID [2020-07-18 05:17:03,290 INFO L280 TraceCheckUtils]: 76: Hoare triple {6935#false} assume -2147483648 <= #t~ret22 && #t~ret22 <= 2147483647; {6935#false} is VALID [2020-07-18 05:17:03,291 INFO L280 TraceCheckUtils]: 77: Hoare triple {6935#false} assume ~k~0 + ~len~2 != #t~ret22; {6935#false} is VALID [2020-07-18 05:17:03,291 INFO L280 TraceCheckUtils]: 78: Hoare triple {6935#false} havoc #t~ret22; {6935#false} is VALID [2020-07-18 05:17:03,291 INFO L280 TraceCheckUtils]: 79: Hoare triple {6935#false} havoc #t~mem21.base, #t~mem21.offset; {6935#false} is VALID [2020-07-18 05:17:03,291 INFO L280 TraceCheckUtils]: 80: Hoare triple {6935#false} assume !false; {6935#false} is VALID [2020-07-18 05:17:03,308 INFO L134 CoverageAnalysis]: Checked inductivity of 19 backedges. 0 proven. 18 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2020-07-18 05:17:03,309 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1453161193] [2020-07-18 05:17:03,309 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2020-07-18 05:17:03,309 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14] total 14 [2020-07-18 05:17:03,310 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [916752612] [2020-07-18 05:17:03,310 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 81 [2020-07-18 05:17:03,310 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 05:17:03,311 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states. [2020-07-18 05:17:03,399 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 81 edges. 81 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:17:03,399 INFO L459 AbstractCegarLoop]: Interpolant automaton has 14 states [2020-07-18 05:17:03,399 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 05:17:03,400 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2020-07-18 05:17:03,400 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=25, Invalid=157, Unknown=0, NotChecked=0, Total=182 [2020-07-18 05:17:03,400 INFO L87 Difference]: Start difference. First operand 170 states and 184 transitions. Second operand 14 states. [2020-07-18 05:17:08,669 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:17:08,670 INFO L93 Difference]: Finished difference Result 306 states and 337 transitions. [2020-07-18 05:17:08,670 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2020-07-18 05:17:08,670 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 81 [2020-07-18 05:17:08,670 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 05:17:08,670 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2020-07-18 05:17:08,674 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 321 transitions. [2020-07-18 05:17:08,674 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2020-07-18 05:17:08,678 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 321 transitions. [2020-07-18 05:17:08,678 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 22 states and 321 transitions. [2020-07-18 05:17:09,072 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 321 edges. 321 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:17:09,078 INFO L225 Difference]: With dead ends: 306 [2020-07-18 05:17:09,078 INFO L226 Difference]: Without dead ends: 216 [2020-07-18 05:17:09,079 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 45 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 119 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=172, Invalid=820, Unknown=0, NotChecked=0, Total=992 [2020-07-18 05:17:09,080 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 216 states. [2020-07-18 05:17:09,489 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 216 to 170. [2020-07-18 05:17:09,489 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 05:17:09,490 INFO L82 GeneralOperation]: Start isEquivalent. First operand 216 states. Second operand 170 states. [2020-07-18 05:17:09,490 INFO L74 IsIncluded]: Start isIncluded. First operand 216 states. Second operand 170 states. [2020-07-18 05:17:09,490 INFO L87 Difference]: Start difference. First operand 216 states. Second operand 170 states. [2020-07-18 05:17:09,498 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:17:09,498 INFO L93 Difference]: Finished difference Result 216 states and 239 transitions. [2020-07-18 05:17:09,499 INFO L276 IsEmpty]: Start isEmpty. Operand 216 states and 239 transitions. [2020-07-18 05:17:09,500 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 05:17:09,500 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 05:17:09,500 INFO L74 IsIncluded]: Start isIncluded. First operand 170 states. Second operand 216 states. [2020-07-18 05:17:09,501 INFO L87 Difference]: Start difference. First operand 170 states. Second operand 216 states. [2020-07-18 05:17:09,508 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:17:09,508 INFO L93 Difference]: Finished difference Result 216 states and 239 transitions. [2020-07-18 05:17:09,508 INFO L276 IsEmpty]: Start isEmpty. Operand 216 states and 239 transitions. [2020-07-18 05:17:09,509 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 05:17:09,509 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 05:17:09,510 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 05:17:09,510 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 05:17:09,510 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 170 states. [2020-07-18 05:17:09,514 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 170 states to 170 states and 183 transitions. [2020-07-18 05:17:09,515 INFO L78 Accepts]: Start accepts. Automaton has 170 states and 183 transitions. Word has length 81 [2020-07-18 05:17:09,515 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 05:17:09,515 INFO L479 AbstractCegarLoop]: Abstraction has 170 states and 183 transitions. [2020-07-18 05:17:09,515 INFO L480 AbstractCegarLoop]: Interpolant automaton has 14 states. [2020-07-18 05:17:09,515 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 170 states and 183 transitions. [2020-07-18 05:17:09,845 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 183 edges. 183 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:17:09,845 INFO L276 IsEmpty]: Start isEmpty. Operand 170 states and 183 transitions. [2020-07-18 05:17:09,846 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 90 [2020-07-18 05:17:09,846 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 05:17:09,847 INFO L422 BasicCegarLoop]: trace histogram [3, 3, 2, 2, 2, 2, 2, 2, 2, 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] [2020-07-18 05:17:09,847 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2020-07-18 05:17:09,847 INFO L427 AbstractCegarLoop]: === Iteration 7 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 05:17:09,847 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 05:17:09,848 INFO L82 PathProgramCache]: Analyzing trace with hash -574415326, now seen corresponding path program 2 times [2020-07-18 05:17:09,848 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 05:17:09,848 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [605678439] [2020-07-18 05:17:09,848 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 05:17:09,866 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:09,925 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:09,928 INFO L280 TraceCheckUtils]: 0: Hoare triple {8498#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {8431#true} is VALID [2020-07-18 05:17:09,928 INFO L280 TraceCheckUtils]: 1: Hoare triple {8431#true} #valid := #valid[0 := 0]; {8431#true} is VALID [2020-07-18 05:17:09,928 INFO L280 TraceCheckUtils]: 2: Hoare triple {8431#true} assume 0 < #StackHeapBarrier; {8431#true} is VALID [2020-07-18 05:17:09,929 INFO L280 TraceCheckUtils]: 3: Hoare triple {8431#true} assume true; {8431#true} is VALID [2020-07-18 05:17:09,929 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {8431#true} {8431#true} #259#return; {8431#true} is VALID [2020-07-18 05:17:09,929 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:09,940 INFO L280 TraceCheckUtils]: 0: Hoare triple {8431#true} ~from := #in~from; {8431#true} is VALID [2020-07-18 05:17:09,941 INFO L280 TraceCheckUtils]: 1: Hoare triple {8431#true} ~until := #in~until; {8431#true} is VALID [2020-07-18 05:17:09,941 INFO L280 TraceCheckUtils]: 2: Hoare triple {8431#true} ~len~1 := ~from; {8431#true} is VALID [2020-07-18 05:17:09,941 INFO L280 TraceCheckUtils]: 3: Hoare triple {8431#true} #t~short12 := ~len~1 < ~until; {8431#true} is VALID [2020-07-18 05:17:09,941 INFO L280 TraceCheckUtils]: 4: Hoare triple {8431#true} assume #t~short12; {8431#true} is VALID [2020-07-18 05:17:09,941 INFO L280 TraceCheckUtils]: 5: Hoare triple {8431#true} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {8431#true} is VALID [2020-07-18 05:17:09,941 INFO L280 TraceCheckUtils]: 6: Hoare triple {8431#true} #t~short12 := 0 != #t~nondet11; {8431#true} is VALID [2020-07-18 05:17:09,941 INFO L280 TraceCheckUtils]: 7: Hoare triple {8431#true} assume !#t~short12; {8431#true} is VALID [2020-07-18 05:17:09,942 INFO L280 TraceCheckUtils]: 8: Hoare triple {8431#true} havoc #t~nondet11; {8431#true} is VALID [2020-07-18 05:17:09,942 INFO L280 TraceCheckUtils]: 9: Hoare triple {8431#true} havoc #t~short12; {8431#true} is VALID [2020-07-18 05:17:09,942 INFO L280 TraceCheckUtils]: 10: Hoare triple {8431#true} #res := ~len~1; {8431#true} is VALID [2020-07-18 05:17:09,942 INFO L280 TraceCheckUtils]: 11: Hoare triple {8431#true} assume true; {8431#true} is VALID [2020-07-18 05:17:09,942 INFO L275 TraceCheckUtils]: 12: Hoare quadruple {8431#true} {8431#true} #243#return; {8431#true} is VALID [2020-07-18 05:17:09,966 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:10,068 INFO L280 TraceCheckUtils]: 0: Hoare triple {8499#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~len := #in~len; {8431#true} is VALID [2020-07-18 05:17:10,068 INFO L280 TraceCheckUtils]: 1: Hoare triple {8431#true} ~head~0.base, ~head~0.offset := 0, 0; {8431#true} is VALID [2020-07-18 05:17:10,069 INFO L280 TraceCheckUtils]: 2: Hoare triple {8431#true} #t~post2 := ~len; {8431#true} is VALID [2020-07-18 05:17:10,069 INFO L280 TraceCheckUtils]: 3: Hoare triple {8431#true} ~len := #t~post2 - 1; {8431#true} is VALID [2020-07-18 05:17:10,069 INFO L280 TraceCheckUtils]: 4: Hoare triple {8431#true} assume !!(#t~post2 > 0); {8431#true} is VALID [2020-07-18 05:17:10,069 INFO L280 TraceCheckUtils]: 5: Hoare triple {8431#true} havoc #t~post2; {8431#true} is VALID [2020-07-18 05:17:10,070 INFO L280 TraceCheckUtils]: 6: Hoare triple {8431#true} SUMMARY for call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(4); srcloc: L566 {8431#true} is VALID [2020-07-18 05:17:10,070 INFO L280 TraceCheckUtils]: 7: Hoare triple {8431#true} ~new_head~0.base, ~new_head~0.offset := #t~malloc3.base, #t~malloc3.offset; {8431#true} is VALID [2020-07-18 05:17:10,070 INFO L280 TraceCheckUtils]: 8: Hoare triple {8431#true} assume !(0 == ~new_head~0.base && 0 == ~new_head~0.offset); {8431#true} is VALID [2020-07-18 05:17:10,070 INFO L280 TraceCheckUtils]: 9: Hoare triple {8431#true} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4); srcloc: L567-1 {8431#true} is VALID [2020-07-18 05:17:10,070 INFO L280 TraceCheckUtils]: 10: Hoare triple {8431#true} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset; {8431#true} is VALID [2020-07-18 05:17:10,071 INFO L280 TraceCheckUtils]: 11: Hoare triple {8431#true} #t~post2 := ~len; {8431#true} is VALID [2020-07-18 05:17:10,071 INFO L280 TraceCheckUtils]: 12: Hoare triple {8431#true} ~len := #t~post2 - 1; {8431#true} is VALID [2020-07-18 05:17:10,071 INFO L280 TraceCheckUtils]: 13: Hoare triple {8431#true} assume !!(#t~post2 > 0); {8431#true} is VALID [2020-07-18 05:17:10,071 INFO L280 TraceCheckUtils]: 14: Hoare triple {8431#true} havoc #t~post2; {8431#true} is VALID [2020-07-18 05:17:10,072 INFO L280 TraceCheckUtils]: 15: Hoare triple {8431#true} SUMMARY for call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(4); srcloc: L566 {8500#(or (< 0 |sll_create_#t~malloc3.base|) (<= (+ |sll_create_#t~malloc3.base| 1) 0))} is VALID [2020-07-18 05:17:10,073 INFO L280 TraceCheckUtils]: 16: Hoare triple {8500#(or (< 0 |sll_create_#t~malloc3.base|) (<= (+ |sll_create_#t~malloc3.base| 1) 0))} ~new_head~0.base, ~new_head~0.offset := #t~malloc3.base, #t~malloc3.offset; {8501#(or (<= 1 sll_create_~new_head~0.base) (<= (+ sll_create_~new_head~0.base 1) 0))} is VALID [2020-07-18 05:17:10,073 INFO L280 TraceCheckUtils]: 17: Hoare triple {8501#(or (<= 1 sll_create_~new_head~0.base) (<= (+ sll_create_~new_head~0.base 1) 0))} assume !(0 == ~new_head~0.base && 0 == ~new_head~0.offset); {8501#(or (<= 1 sll_create_~new_head~0.base) (<= (+ sll_create_~new_head~0.base 1) 0))} is VALID [2020-07-18 05:17:10,074 INFO L280 TraceCheckUtils]: 18: Hoare triple {8501#(or (<= 1 sll_create_~new_head~0.base) (<= (+ sll_create_~new_head~0.base 1) 0))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4); srcloc: L567-1 {8501#(or (<= 1 sll_create_~new_head~0.base) (<= (+ sll_create_~new_head~0.base 1) 0))} is VALID [2020-07-18 05:17:10,074 INFO L280 TraceCheckUtils]: 19: Hoare triple {8501#(or (<= 1 sll_create_~new_head~0.base) (<= (+ sll_create_~new_head~0.base 1) 0))} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset; {8502#(or (<= (+ sll_create_~head~0.base 1) 0) (<= 1 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:10,075 INFO L280 TraceCheckUtils]: 20: Hoare triple {8502#(or (<= (+ sll_create_~head~0.base 1) 0) (<= 1 sll_create_~head~0.base))} #t~post2 := ~len; {8502#(or (<= (+ sll_create_~head~0.base 1) 0) (<= 1 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:10,075 INFO L280 TraceCheckUtils]: 21: Hoare triple {8502#(or (<= (+ sll_create_~head~0.base 1) 0) (<= 1 sll_create_~head~0.base))} ~len := #t~post2 - 1; {8502#(or (<= (+ sll_create_~head~0.base 1) 0) (<= 1 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:10,076 INFO L280 TraceCheckUtils]: 22: Hoare triple {8502#(or (<= (+ sll_create_~head~0.base 1) 0) (<= 1 sll_create_~head~0.base))} assume !(#t~post2 > 0); {8502#(or (<= (+ sll_create_~head~0.base 1) 0) (<= 1 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:10,077 INFO L280 TraceCheckUtils]: 23: Hoare triple {8502#(or (<= (+ sll_create_~head~0.base 1) 0) (<= 1 sll_create_~head~0.base))} havoc #t~post2; {8502#(or (<= (+ sll_create_~head~0.base 1) 0) (<= 1 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:10,077 INFO L280 TraceCheckUtils]: 24: Hoare triple {8502#(or (<= (+ sll_create_~head~0.base 1) 0) (<= 1 sll_create_~head~0.base))} #res.base, #res.offset := ~head~0.base, ~head~0.offset; {8503#(or (<= 1 |sll_create_#res.base|) (<= (+ |sll_create_#res.base| 1) 0))} is VALID [2020-07-18 05:17:10,077 INFO L280 TraceCheckUtils]: 25: Hoare triple {8503#(or (<= 1 |sll_create_#res.base|) (<= (+ |sll_create_#res.base| 1) 0))} assume true; {8503#(or (<= 1 |sll_create_#res.base|) (<= (+ |sll_create_#res.base| 1) 0))} is VALID [2020-07-18 05:17:10,078 INFO L275 TraceCheckUtils]: 26: Hoare quadruple {8503#(or (<= 1 |sll_create_#res.base|) (<= (+ |sll_create_#res.base| 1) 0))} {8431#true} #245#return; {8478#(not (= 0 |main_#t~ret15.base|))} is VALID [2020-07-18 05:17:10,081 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:10,091 INFO L280 TraceCheckUtils]: 0: Hoare triple {8431#true} ~from := #in~from; {8431#true} is VALID [2020-07-18 05:17:10,091 INFO L280 TraceCheckUtils]: 1: Hoare triple {8431#true} ~until := #in~until; {8431#true} is VALID [2020-07-18 05:17:10,091 INFO L280 TraceCheckUtils]: 2: Hoare triple {8431#true} ~len~1 := ~from; {8431#true} is VALID [2020-07-18 05:17:10,091 INFO L280 TraceCheckUtils]: 3: Hoare triple {8431#true} #t~short12 := ~len~1 < ~until; {8431#true} is VALID [2020-07-18 05:17:10,091 INFO L280 TraceCheckUtils]: 4: Hoare triple {8431#true} assume !#t~short12; {8431#true} is VALID [2020-07-18 05:17:10,091 INFO L280 TraceCheckUtils]: 5: Hoare triple {8431#true} assume !#t~short12; {8431#true} is VALID [2020-07-18 05:17:10,091 INFO L280 TraceCheckUtils]: 6: Hoare triple {8431#true} havoc #t~nondet11; {8431#true} is VALID [2020-07-18 05:17:10,092 INFO L280 TraceCheckUtils]: 7: Hoare triple {8431#true} havoc #t~short12; {8431#true} is VALID [2020-07-18 05:17:10,092 INFO L280 TraceCheckUtils]: 8: Hoare triple {8431#true} #res := ~len~1; {8431#true} is VALID [2020-07-18 05:17:10,092 INFO L280 TraceCheckUtils]: 9: Hoare triple {8431#true} assume true; {8431#true} is VALID [2020-07-18 05:17:10,093 INFO L275 TraceCheckUtils]: 10: Hoare quadruple {8431#true} {8479#(not (= 0 (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)))} #247#return; {8479#(not (= 0 (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)))} is VALID [2020-07-18 05:17:10,094 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:10,133 INFO L280 TraceCheckUtils]: 0: Hoare triple {8431#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {8504#(= |sll_length_#in~head.base| sll_length_~head.base)} is VALID [2020-07-18 05:17:10,134 INFO L280 TraceCheckUtils]: 1: Hoare triple {8504#(= |sll_length_#in~head.base| sll_length_~head.base)} ~len~0 := 0; {8504#(= |sll_length_#in~head.base| sll_length_~head.base)} is VALID [2020-07-18 05:17:10,135 INFO L280 TraceCheckUtils]: 2: Hoare triple {8504#(= |sll_length_#in~head.base| sll_length_~head.base)} assume !(~head.base != 0 || ~head.offset != 0); {8505#(= 0 |sll_length_#in~head.base|)} is VALID [2020-07-18 05:17:10,135 INFO L280 TraceCheckUtils]: 3: Hoare triple {8505#(= 0 |sll_length_#in~head.base|)} #res := ~len~0; {8505#(= 0 |sll_length_#in~head.base|)} is VALID [2020-07-18 05:17:10,136 INFO L280 TraceCheckUtils]: 4: Hoare triple {8505#(= 0 |sll_length_#in~head.base|)} assume true; {8505#(= 0 |sll_length_#in~head.base|)} is VALID [2020-07-18 05:17:10,137 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {8505#(= 0 |sll_length_#in~head.base|)} {8491#(not (= 0 |main_#t~mem21.base|))} #253#return; {8432#false} is VALID [2020-07-18 05:17:10,137 INFO L263 TraceCheckUtils]: 0: Hoare triple {8431#true} call ULTIMATE.init(); {8498#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 05:17:10,138 INFO L280 TraceCheckUtils]: 1: Hoare triple {8498#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {8431#true} is VALID [2020-07-18 05:17:10,138 INFO L280 TraceCheckUtils]: 2: Hoare triple {8431#true} #valid := #valid[0 := 0]; {8431#true} is VALID [2020-07-18 05:17:10,138 INFO L280 TraceCheckUtils]: 3: Hoare triple {8431#true} assume 0 < #StackHeapBarrier; {8431#true} is VALID [2020-07-18 05:17:10,138 INFO L280 TraceCheckUtils]: 4: Hoare triple {8431#true} assume true; {8431#true} is VALID [2020-07-18 05:17:10,138 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {8431#true} {8431#true} #259#return; {8431#true} is VALID [2020-07-18 05:17:10,139 INFO L263 TraceCheckUtils]: 6: Hoare triple {8431#true} call #t~ret24 := main(); {8431#true} is VALID [2020-07-18 05:17:10,139 INFO L263 TraceCheckUtils]: 7: Hoare triple {8431#true} call #t~ret14 := _get_nondet_int(2, 5); {8431#true} is VALID [2020-07-18 05:17:10,139 INFO L280 TraceCheckUtils]: 8: Hoare triple {8431#true} ~from := #in~from; {8431#true} is VALID [2020-07-18 05:17:10,139 INFO L280 TraceCheckUtils]: 9: Hoare triple {8431#true} ~until := #in~until; {8431#true} is VALID [2020-07-18 05:17:10,139 INFO L280 TraceCheckUtils]: 10: Hoare triple {8431#true} ~len~1 := ~from; {8431#true} is VALID [2020-07-18 05:17:10,140 INFO L280 TraceCheckUtils]: 11: Hoare triple {8431#true} #t~short12 := ~len~1 < ~until; {8431#true} is VALID [2020-07-18 05:17:10,140 INFO L280 TraceCheckUtils]: 12: Hoare triple {8431#true} assume #t~short12; {8431#true} is VALID [2020-07-18 05:17:10,140 INFO L280 TraceCheckUtils]: 13: Hoare triple {8431#true} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {8431#true} is VALID [2020-07-18 05:17:10,140 INFO L280 TraceCheckUtils]: 14: Hoare triple {8431#true} #t~short12 := 0 != #t~nondet11; {8431#true} is VALID [2020-07-18 05:17:10,140 INFO L280 TraceCheckUtils]: 15: Hoare triple {8431#true} assume !#t~short12; {8431#true} is VALID [2020-07-18 05:17:10,140 INFO L280 TraceCheckUtils]: 16: Hoare triple {8431#true} havoc #t~nondet11; {8431#true} is VALID [2020-07-18 05:17:10,141 INFO L280 TraceCheckUtils]: 17: Hoare triple {8431#true} havoc #t~short12; {8431#true} is VALID [2020-07-18 05:17:10,141 INFO L280 TraceCheckUtils]: 18: Hoare triple {8431#true} #res := ~len~1; {8431#true} is VALID [2020-07-18 05:17:10,141 INFO L280 TraceCheckUtils]: 19: Hoare triple {8431#true} assume true; {8431#true} is VALID [2020-07-18 05:17:10,141 INFO L275 TraceCheckUtils]: 20: Hoare quadruple {8431#true} {8431#true} #243#return; {8431#true} is VALID [2020-07-18 05:17:10,141 INFO L280 TraceCheckUtils]: 21: Hoare triple {8431#true} assume -2147483648 <= #t~ret14 && #t~ret14 <= 2147483647; {8431#true} is VALID [2020-07-18 05:17:10,141 INFO L280 TraceCheckUtils]: 22: Hoare triple {8431#true} ~len~2 := #t~ret14; {8431#true} is VALID [2020-07-18 05:17:10,142 INFO L280 TraceCheckUtils]: 23: Hoare triple {8431#true} havoc #t~ret14; {8431#true} is VALID [2020-07-18 05:17:10,142 INFO L280 TraceCheckUtils]: 24: Hoare triple {8431#true} SUMMARY for call ~#s~0.base, ~#s~0.offset := #Ultimate.allocOnStack(4); srcloc: L617 {8431#true} is VALID [2020-07-18 05:17:10,143 INFO L263 TraceCheckUtils]: 25: Hoare triple {8431#true} call #t~ret15.base, #t~ret15.offset := sll_create(~len~2); {8499#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-18 05:17:10,143 INFO L280 TraceCheckUtils]: 26: Hoare triple {8499#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~len := #in~len; {8431#true} is VALID [2020-07-18 05:17:10,143 INFO L280 TraceCheckUtils]: 27: Hoare triple {8431#true} ~head~0.base, ~head~0.offset := 0, 0; {8431#true} is VALID [2020-07-18 05:17:10,144 INFO L280 TraceCheckUtils]: 28: Hoare triple {8431#true} #t~post2 := ~len; {8431#true} is VALID [2020-07-18 05:17:10,144 INFO L280 TraceCheckUtils]: 29: Hoare triple {8431#true} ~len := #t~post2 - 1; {8431#true} is VALID [2020-07-18 05:17:10,144 INFO L280 TraceCheckUtils]: 30: Hoare triple {8431#true} assume !!(#t~post2 > 0); {8431#true} is VALID [2020-07-18 05:17:10,144 INFO L280 TraceCheckUtils]: 31: Hoare triple {8431#true} havoc #t~post2; {8431#true} is VALID [2020-07-18 05:17:10,144 INFO L280 TraceCheckUtils]: 32: Hoare triple {8431#true} SUMMARY for call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(4); srcloc: L566 {8431#true} is VALID [2020-07-18 05:17:10,145 INFO L280 TraceCheckUtils]: 33: Hoare triple {8431#true} ~new_head~0.base, ~new_head~0.offset := #t~malloc3.base, #t~malloc3.offset; {8431#true} is VALID [2020-07-18 05:17:10,145 INFO L280 TraceCheckUtils]: 34: Hoare triple {8431#true} assume !(0 == ~new_head~0.base && 0 == ~new_head~0.offset); {8431#true} is VALID [2020-07-18 05:17:10,145 INFO L280 TraceCheckUtils]: 35: Hoare triple {8431#true} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4); srcloc: L567-1 {8431#true} is VALID [2020-07-18 05:17:10,145 INFO L280 TraceCheckUtils]: 36: Hoare triple {8431#true} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset; {8431#true} is VALID [2020-07-18 05:17:10,145 INFO L280 TraceCheckUtils]: 37: Hoare triple {8431#true} #t~post2 := ~len; {8431#true} is VALID [2020-07-18 05:17:10,145 INFO L280 TraceCheckUtils]: 38: Hoare triple {8431#true} ~len := #t~post2 - 1; {8431#true} is VALID [2020-07-18 05:17:10,146 INFO L280 TraceCheckUtils]: 39: Hoare triple {8431#true} assume !!(#t~post2 > 0); {8431#true} is VALID [2020-07-18 05:17:10,146 INFO L280 TraceCheckUtils]: 40: Hoare triple {8431#true} havoc #t~post2; {8431#true} is VALID [2020-07-18 05:17:10,147 INFO L280 TraceCheckUtils]: 41: Hoare triple {8431#true} SUMMARY for call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(4); srcloc: L566 {8500#(or (< 0 |sll_create_#t~malloc3.base|) (<= (+ |sll_create_#t~malloc3.base| 1) 0))} is VALID [2020-07-18 05:17:10,148 INFO L280 TraceCheckUtils]: 42: Hoare triple {8500#(or (< 0 |sll_create_#t~malloc3.base|) (<= (+ |sll_create_#t~malloc3.base| 1) 0))} ~new_head~0.base, ~new_head~0.offset := #t~malloc3.base, #t~malloc3.offset; {8501#(or (<= 1 sll_create_~new_head~0.base) (<= (+ sll_create_~new_head~0.base 1) 0))} is VALID [2020-07-18 05:17:10,148 INFO L280 TraceCheckUtils]: 43: Hoare triple {8501#(or (<= 1 sll_create_~new_head~0.base) (<= (+ sll_create_~new_head~0.base 1) 0))} assume !(0 == ~new_head~0.base && 0 == ~new_head~0.offset); {8501#(or (<= 1 sll_create_~new_head~0.base) (<= (+ sll_create_~new_head~0.base 1) 0))} is VALID [2020-07-18 05:17:10,149 INFO L280 TraceCheckUtils]: 44: Hoare triple {8501#(or (<= 1 sll_create_~new_head~0.base) (<= (+ sll_create_~new_head~0.base 1) 0))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4); srcloc: L567-1 {8501#(or (<= 1 sll_create_~new_head~0.base) (<= (+ sll_create_~new_head~0.base 1) 0))} is VALID [2020-07-18 05:17:10,149 INFO L280 TraceCheckUtils]: 45: Hoare triple {8501#(or (<= 1 sll_create_~new_head~0.base) (<= (+ sll_create_~new_head~0.base 1) 0))} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset; {8502#(or (<= (+ sll_create_~head~0.base 1) 0) (<= 1 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:10,150 INFO L280 TraceCheckUtils]: 46: Hoare triple {8502#(or (<= (+ sll_create_~head~0.base 1) 0) (<= 1 sll_create_~head~0.base))} #t~post2 := ~len; {8502#(or (<= (+ sll_create_~head~0.base 1) 0) (<= 1 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:10,151 INFO L280 TraceCheckUtils]: 47: Hoare triple {8502#(or (<= (+ sll_create_~head~0.base 1) 0) (<= 1 sll_create_~head~0.base))} ~len := #t~post2 - 1; {8502#(or (<= (+ sll_create_~head~0.base 1) 0) (<= 1 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:10,151 INFO L280 TraceCheckUtils]: 48: Hoare triple {8502#(or (<= (+ sll_create_~head~0.base 1) 0) (<= 1 sll_create_~head~0.base))} assume !(#t~post2 > 0); {8502#(or (<= (+ sll_create_~head~0.base 1) 0) (<= 1 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:10,152 INFO L280 TraceCheckUtils]: 49: Hoare triple {8502#(or (<= (+ sll_create_~head~0.base 1) 0) (<= 1 sll_create_~head~0.base))} havoc #t~post2; {8502#(or (<= (+ sll_create_~head~0.base 1) 0) (<= 1 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:10,152 INFO L280 TraceCheckUtils]: 50: Hoare triple {8502#(or (<= (+ sll_create_~head~0.base 1) 0) (<= 1 sll_create_~head~0.base))} #res.base, #res.offset := ~head~0.base, ~head~0.offset; {8503#(or (<= 1 |sll_create_#res.base|) (<= (+ |sll_create_#res.base| 1) 0))} is VALID [2020-07-18 05:17:10,153 INFO L280 TraceCheckUtils]: 51: Hoare triple {8503#(or (<= 1 |sll_create_#res.base|) (<= (+ |sll_create_#res.base| 1) 0))} assume true; {8503#(or (<= 1 |sll_create_#res.base|) (<= (+ |sll_create_#res.base| 1) 0))} is VALID [2020-07-18 05:17:10,154 INFO L275 TraceCheckUtils]: 52: Hoare quadruple {8503#(or (<= 1 |sll_create_#res.base|) (<= (+ |sll_create_#res.base| 1) 0))} {8431#true} #245#return; {8478#(not (= 0 |main_#t~ret15.base|))} is VALID [2020-07-18 05:17:10,155 INFO L280 TraceCheckUtils]: 53: Hoare triple {8478#(not (= 0 |main_#t~ret15.base|))} SUMMARY for call write~init~$Pointer$(#t~ret15.base, #t~ret15.offset, ~#s~0.base, ~#s~0.offset, 4); srcloc: L617-2 {8479#(not (= 0 (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)))} is VALID [2020-07-18 05:17:10,155 INFO L280 TraceCheckUtils]: 54: Hoare triple {8479#(not (= 0 (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)))} havoc #t~ret15.base, #t~ret15.offset; {8479#(not (= 0 (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)))} is VALID [2020-07-18 05:17:10,155 INFO L263 TraceCheckUtils]: 55: Hoare triple {8479#(not (= 0 (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)))} call #t~ret16 := _get_nondet_int(0, ~len~2 - 1); {8431#true} is VALID [2020-07-18 05:17:10,156 INFO L280 TraceCheckUtils]: 56: Hoare triple {8431#true} ~from := #in~from; {8431#true} is VALID [2020-07-18 05:17:10,156 INFO L280 TraceCheckUtils]: 57: Hoare triple {8431#true} ~until := #in~until; {8431#true} is VALID [2020-07-18 05:17:10,156 INFO L280 TraceCheckUtils]: 58: Hoare triple {8431#true} ~len~1 := ~from; {8431#true} is VALID [2020-07-18 05:17:10,156 INFO L280 TraceCheckUtils]: 59: Hoare triple {8431#true} #t~short12 := ~len~1 < ~until; {8431#true} is VALID [2020-07-18 05:17:10,156 INFO L280 TraceCheckUtils]: 60: Hoare triple {8431#true} assume !#t~short12; {8431#true} is VALID [2020-07-18 05:17:10,157 INFO L280 TraceCheckUtils]: 61: Hoare triple {8431#true} assume !#t~short12; {8431#true} is VALID [2020-07-18 05:17:10,157 INFO L280 TraceCheckUtils]: 62: Hoare triple {8431#true} havoc #t~nondet11; {8431#true} is VALID [2020-07-18 05:17:10,157 INFO L280 TraceCheckUtils]: 63: Hoare triple {8431#true} havoc #t~short12; {8431#true} is VALID [2020-07-18 05:17:10,157 INFO L280 TraceCheckUtils]: 64: Hoare triple {8431#true} #res := ~len~1; {8431#true} is VALID [2020-07-18 05:17:10,157 INFO L280 TraceCheckUtils]: 65: Hoare triple {8431#true} assume true; {8431#true} is VALID [2020-07-18 05:17:10,158 INFO L275 TraceCheckUtils]: 66: Hoare quadruple {8431#true} {8479#(not (= 0 (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)))} #247#return; {8479#(not (= 0 (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)))} is VALID [2020-07-18 05:17:10,159 INFO L280 TraceCheckUtils]: 67: Hoare triple {8479#(not (= 0 (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)))} assume -2147483648 <= #t~ret16 && #t~ret16 <= 2147483647; {8479#(not (= 0 (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)))} is VALID [2020-07-18 05:17:10,159 INFO L280 TraceCheckUtils]: 68: Hoare triple {8479#(not (= 0 (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)))} ~k~0 := #t~ret16; {8479#(not (= 0 (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)))} is VALID [2020-07-18 05:17:10,160 INFO L280 TraceCheckUtils]: 69: Hoare triple {8479#(not (= 0 (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)))} havoc #t~ret16; {8479#(not (= 0 (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)))} is VALID [2020-07-18 05:17:10,160 INFO L280 TraceCheckUtils]: 70: Hoare triple {8479#(not (= 0 (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)))} ~i~0 := 0; {8479#(not (= 0 (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)))} is VALID [2020-07-18 05:17:10,161 INFO L280 TraceCheckUtils]: 71: Hoare triple {8479#(not (= 0 (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)))} #t~short18 := ~i~0 < ~k~0; {8479#(not (= 0 (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)))} is VALID [2020-07-18 05:17:10,161 INFO L280 TraceCheckUtils]: 72: Hoare triple {8479#(not (= 0 (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)))} assume !#t~short18; {8479#(not (= 0 (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)))} is VALID [2020-07-18 05:17:10,162 INFO L280 TraceCheckUtils]: 73: Hoare triple {8479#(not (= 0 (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)))} assume !#t~short18; {8479#(not (= 0 (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)))} is VALID [2020-07-18 05:17:10,162 INFO L280 TraceCheckUtils]: 74: Hoare triple {8479#(not (= 0 (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)))} havoc #t~nondet17; {8479#(not (= 0 (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)))} is VALID [2020-07-18 05:17:10,163 INFO L280 TraceCheckUtils]: 75: Hoare triple {8479#(not (= 0 (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)))} havoc #t~short18; {8479#(not (= 0 (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)))} is VALID [2020-07-18 05:17:10,164 INFO L280 TraceCheckUtils]: 76: Hoare triple {8479#(not (= 0 (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)))} SUMMARY for call #t~mem21.base, #t~mem21.offset := read~$Pointer$(~#s~0.base, ~#s~0.offset, 4); srcloc: L620-12 {8491#(not (= 0 |main_#t~mem21.base|))} is VALID [2020-07-18 05:17:10,164 INFO L263 TraceCheckUtils]: 77: Hoare triple {8491#(not (= 0 |main_#t~mem21.base|))} call #t~ret22 := sll_length(#t~mem21.base, #t~mem21.offset); {8431#true} is VALID [2020-07-18 05:17:10,164 INFO L280 TraceCheckUtils]: 78: Hoare triple {8431#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {8504#(= |sll_length_#in~head.base| sll_length_~head.base)} is VALID [2020-07-18 05:17:10,165 INFO L280 TraceCheckUtils]: 79: Hoare triple {8504#(= |sll_length_#in~head.base| sll_length_~head.base)} ~len~0 := 0; {8504#(= |sll_length_#in~head.base| sll_length_~head.base)} is VALID [2020-07-18 05:17:10,165 INFO L280 TraceCheckUtils]: 80: Hoare triple {8504#(= |sll_length_#in~head.base| sll_length_~head.base)} assume !(~head.base != 0 || ~head.offset != 0); {8505#(= 0 |sll_length_#in~head.base|)} is VALID [2020-07-18 05:17:10,166 INFO L280 TraceCheckUtils]: 81: Hoare triple {8505#(= 0 |sll_length_#in~head.base|)} #res := ~len~0; {8505#(= 0 |sll_length_#in~head.base|)} is VALID [2020-07-18 05:17:10,167 INFO L280 TraceCheckUtils]: 82: Hoare triple {8505#(= 0 |sll_length_#in~head.base|)} assume true; {8505#(= 0 |sll_length_#in~head.base|)} is VALID [2020-07-18 05:17:10,168 INFO L275 TraceCheckUtils]: 83: Hoare quadruple {8505#(= 0 |sll_length_#in~head.base|)} {8491#(not (= 0 |main_#t~mem21.base|))} #253#return; {8432#false} is VALID [2020-07-18 05:17:10,168 INFO L280 TraceCheckUtils]: 84: Hoare triple {8432#false} assume -2147483648 <= #t~ret22 && #t~ret22 <= 2147483647; {8432#false} is VALID [2020-07-18 05:17:10,168 INFO L280 TraceCheckUtils]: 85: Hoare triple {8432#false} assume ~k~0 + ~len~2 != #t~ret22; {8432#false} is VALID [2020-07-18 05:17:10,168 INFO L280 TraceCheckUtils]: 86: Hoare triple {8432#false} havoc #t~ret22; {8432#false} is VALID [2020-07-18 05:17:10,168 INFO L280 TraceCheckUtils]: 87: Hoare triple {8432#false} havoc #t~mem21.base, #t~mem21.offset; {8432#false} is VALID [2020-07-18 05:17:10,169 INFO L280 TraceCheckUtils]: 88: Hoare triple {8432#false} assume !false; {8432#false} is VALID [2020-07-18 05:17:10,178 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 10 proven. 0 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2020-07-18 05:17:10,179 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [605678439] [2020-07-18 05:17:10,179 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-18 05:17:10,179 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2020-07-18 05:17:10,179 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [701575039] [2020-07-18 05:17:10,180 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 89 [2020-07-18 05:17:10,180 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 05:17:10,181 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states. [2020-07-18 05:17:10,257 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 05:17:10,258 INFO L459 AbstractCegarLoop]: Interpolant automaton has 13 states [2020-07-18 05:17:10,258 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 05:17:10,258 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2020-07-18 05:17:10,258 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=133, Unknown=0, NotChecked=0, Total=156 [2020-07-18 05:17:10,258 INFO L87 Difference]: Start difference. First operand 170 states and 183 transitions. Second operand 13 states. [2020-07-18 05:17:13,359 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:17:13,360 INFO L93 Difference]: Finished difference Result 207 states and 225 transitions. [2020-07-18 05:17:13,360 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2020-07-18 05:17:13,360 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 89 [2020-07-18 05:17:13,360 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 05:17:13,361 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2020-07-18 05:17:13,364 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 174 transitions. [2020-07-18 05:17:13,365 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2020-07-18 05:17:13,368 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 174 transitions. [2020-07-18 05:17:13,368 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 174 transitions. [2020-07-18 05:17:13,617 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 174 edges. 174 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:17:13,624 INFO L225 Difference]: With dead ends: 207 [2020-07-18 05:17:13,624 INFO L226 Difference]: Without dead ends: 201 [2020-07-18 05:17:13,626 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 30 GetRequests, 11 SyntacticMatches, 0 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 22 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=67, Invalid=353, Unknown=0, NotChecked=0, Total=420 [2020-07-18 05:17:13,627 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 201 states. [2020-07-18 05:17:14,152 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 201 to 183. [2020-07-18 05:17:14,152 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 05:17:14,152 INFO L82 GeneralOperation]: Start isEquivalent. First operand 201 states. Second operand 183 states. [2020-07-18 05:17:14,152 INFO L74 IsIncluded]: Start isIncluded. First operand 201 states. Second operand 183 states. [2020-07-18 05:17:14,153 INFO L87 Difference]: Start difference. First operand 201 states. Second operand 183 states. [2020-07-18 05:17:14,163 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:17:14,164 INFO L93 Difference]: Finished difference Result 201 states and 219 transitions. [2020-07-18 05:17:14,164 INFO L276 IsEmpty]: Start isEmpty. Operand 201 states and 219 transitions. [2020-07-18 05:17:14,165 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 05:17:14,165 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 05:17:14,165 INFO L74 IsIncluded]: Start isIncluded. First operand 183 states. Second operand 201 states. [2020-07-18 05:17:14,165 INFO L87 Difference]: Start difference. First operand 183 states. Second operand 201 states. [2020-07-18 05:17:14,174 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:17:14,174 INFO L93 Difference]: Finished difference Result 201 states and 219 transitions. [2020-07-18 05:17:14,174 INFO L276 IsEmpty]: Start isEmpty. Operand 201 states and 219 transitions. [2020-07-18 05:17:14,175 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 05:17:14,175 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 05:17:14,175 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 05:17:14,175 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 05:17:14,175 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 183 states. [2020-07-18 05:17:14,180 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 183 states to 183 states and 200 transitions. [2020-07-18 05:17:14,180 INFO L78 Accepts]: Start accepts. Automaton has 183 states and 200 transitions. Word has length 89 [2020-07-18 05:17:14,181 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 05:17:14,181 INFO L479 AbstractCegarLoop]: Abstraction has 183 states and 200 transitions. [2020-07-18 05:17:14,181 INFO L480 AbstractCegarLoop]: Interpolant automaton has 13 states. [2020-07-18 05:17:14,181 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 183 states and 200 transitions. [2020-07-18 05:17:14,508 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 200 edges. 200 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:17:14,508 INFO L276 IsEmpty]: Start isEmpty. Operand 183 states and 200 transitions. [2020-07-18 05:17:14,509 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 97 [2020-07-18 05:17:14,510 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 05:17:14,510 INFO L422 BasicCegarLoop]: trace histogram [3, 3, 2, 2, 2, 2, 2, 2, 2, 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] [2020-07-18 05:17:14,510 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2020-07-18 05:17:14,510 INFO L427 AbstractCegarLoop]: === Iteration 8 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 05:17:14,510 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 05:17:14,511 INFO L82 PathProgramCache]: Analyzing trace with hash 263120297, now seen corresponding path program 1 times [2020-07-18 05:17:14,511 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 05:17:14,511 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1244156927] [2020-07-18 05:17:14,511 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 05:17:14,528 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:14,589 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:14,598 INFO L280 TraceCheckUtils]: 0: Hoare triple {9782#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {9708#true} is VALID [2020-07-18 05:17:14,598 INFO L280 TraceCheckUtils]: 1: Hoare triple {9708#true} #valid := #valid[0 := 0]; {9708#true} is VALID [2020-07-18 05:17:14,599 INFO L280 TraceCheckUtils]: 2: Hoare triple {9708#true} assume 0 < #StackHeapBarrier; {9708#true} is VALID [2020-07-18 05:17:14,599 INFO L280 TraceCheckUtils]: 3: Hoare triple {9708#true} assume true; {9708#true} is VALID [2020-07-18 05:17:14,599 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {9708#true} {9708#true} #259#return; {9708#true} is VALID [2020-07-18 05:17:14,600 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:14,604 INFO L280 TraceCheckUtils]: 0: Hoare triple {9708#true} ~from := #in~from; {9708#true} is VALID [2020-07-18 05:17:14,604 INFO L280 TraceCheckUtils]: 1: Hoare triple {9708#true} ~until := #in~until; {9708#true} is VALID [2020-07-18 05:17:14,604 INFO L280 TraceCheckUtils]: 2: Hoare triple {9708#true} ~len~1 := ~from; {9708#true} is VALID [2020-07-18 05:17:14,605 INFO L280 TraceCheckUtils]: 3: Hoare triple {9708#true} #t~short12 := ~len~1 < ~until; {9708#true} is VALID [2020-07-18 05:17:14,605 INFO L280 TraceCheckUtils]: 4: Hoare triple {9708#true} assume #t~short12; {9708#true} is VALID [2020-07-18 05:17:14,605 INFO L280 TraceCheckUtils]: 5: Hoare triple {9708#true} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {9708#true} is VALID [2020-07-18 05:17:14,605 INFO L280 TraceCheckUtils]: 6: Hoare triple {9708#true} #t~short12 := 0 != #t~nondet11; {9708#true} is VALID [2020-07-18 05:17:14,605 INFO L280 TraceCheckUtils]: 7: Hoare triple {9708#true} assume !#t~short12; {9708#true} is VALID [2020-07-18 05:17:14,606 INFO L280 TraceCheckUtils]: 8: Hoare triple {9708#true} havoc #t~nondet11; {9708#true} is VALID [2020-07-18 05:17:14,606 INFO L280 TraceCheckUtils]: 9: Hoare triple {9708#true} havoc #t~short12; {9708#true} is VALID [2020-07-18 05:17:14,606 INFO L280 TraceCheckUtils]: 10: Hoare triple {9708#true} #res := ~len~1; {9708#true} is VALID [2020-07-18 05:17:14,606 INFO L280 TraceCheckUtils]: 11: Hoare triple {9708#true} assume true; {9708#true} is VALID [2020-07-18 05:17:14,606 INFO L275 TraceCheckUtils]: 12: Hoare quadruple {9708#true} {9708#true} #243#return; {9708#true} is VALID [2020-07-18 05:17:14,627 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:14,746 INFO L280 TraceCheckUtils]: 0: Hoare triple {9783#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~len := #in~len; {9708#true} is VALID [2020-07-18 05:17:14,746 INFO L280 TraceCheckUtils]: 1: Hoare triple {9708#true} ~head~0.base, ~head~0.offset := 0, 0; {9708#true} is VALID [2020-07-18 05:17:14,746 INFO L280 TraceCheckUtils]: 2: Hoare triple {9708#true} #t~post2 := ~len; {9708#true} is VALID [2020-07-18 05:17:14,747 INFO L280 TraceCheckUtils]: 3: Hoare triple {9708#true} ~len := #t~post2 - 1; {9708#true} is VALID [2020-07-18 05:17:14,747 INFO L280 TraceCheckUtils]: 4: Hoare triple {9708#true} assume !!(#t~post2 > 0); {9708#true} is VALID [2020-07-18 05:17:14,747 INFO L280 TraceCheckUtils]: 5: Hoare triple {9708#true} havoc #t~post2; {9708#true} is VALID [2020-07-18 05:17:14,748 INFO L280 TraceCheckUtils]: 6: Hoare triple {9708#true} SUMMARY for call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(4); srcloc: L566 {9784#(= 0 |sll_create_#t~malloc3.offset|)} is VALID [2020-07-18 05:17:14,748 INFO L280 TraceCheckUtils]: 7: Hoare triple {9784#(= 0 |sll_create_#t~malloc3.offset|)} ~new_head~0.base, ~new_head~0.offset := #t~malloc3.base, #t~malloc3.offset; {9785#(= sll_create_~new_head~0.offset 0)} is VALID [2020-07-18 05:17:14,749 INFO L280 TraceCheckUtils]: 8: Hoare triple {9785#(= sll_create_~new_head~0.offset 0)} assume !(0 == ~new_head~0.base && 0 == ~new_head~0.offset); {9786#(not (= 0 sll_create_~new_head~0.base))} is VALID [2020-07-18 05:17:14,749 INFO L280 TraceCheckUtils]: 9: Hoare triple {9786#(not (= 0 sll_create_~new_head~0.base))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4); srcloc: L567-1 {9786#(not (= 0 sll_create_~new_head~0.base))} is VALID [2020-07-18 05:17:14,750 INFO L280 TraceCheckUtils]: 10: Hoare triple {9786#(not (= 0 sll_create_~new_head~0.base))} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset; {9787#(not (= 0 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:14,751 INFO L280 TraceCheckUtils]: 11: Hoare triple {9787#(not (= 0 sll_create_~head~0.base))} #t~post2 := ~len; {9787#(not (= 0 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:14,751 INFO L280 TraceCheckUtils]: 12: Hoare triple {9787#(not (= 0 sll_create_~head~0.base))} ~len := #t~post2 - 1; {9787#(not (= 0 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:14,752 INFO L280 TraceCheckUtils]: 13: Hoare triple {9787#(not (= 0 sll_create_~head~0.base))} assume !!(#t~post2 > 0); {9787#(not (= 0 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:14,752 INFO L280 TraceCheckUtils]: 14: Hoare triple {9787#(not (= 0 sll_create_~head~0.base))} havoc #t~post2; {9787#(not (= 0 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:14,753 INFO L280 TraceCheckUtils]: 15: Hoare triple {9787#(not (= 0 sll_create_~head~0.base))} SUMMARY for call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(4); srcloc: L566 {9787#(not (= 0 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:14,753 INFO L280 TraceCheckUtils]: 16: Hoare triple {9787#(not (= 0 sll_create_~head~0.base))} ~new_head~0.base, ~new_head~0.offset := #t~malloc3.base, #t~malloc3.offset; {9787#(not (= 0 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:14,754 INFO L280 TraceCheckUtils]: 17: Hoare triple {9787#(not (= 0 sll_create_~head~0.base))} assume !(0 == ~new_head~0.base && 0 == ~new_head~0.offset); {9787#(not (= 0 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:14,754 INFO L280 TraceCheckUtils]: 18: Hoare triple {9787#(not (= 0 sll_create_~head~0.base))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4); srcloc: L567-1 {9788#(not (= 0 (select (select |#memory_$Pointer$.base| sll_create_~new_head~0.base) sll_create_~new_head~0.offset)))} is VALID [2020-07-18 05:17:14,755 INFO L280 TraceCheckUtils]: 19: Hoare triple {9788#(not (= 0 (select (select |#memory_$Pointer$.base| sll_create_~new_head~0.base) sll_create_~new_head~0.offset)))} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset; {9789#(not (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)))} is VALID [2020-07-18 05:17:14,756 INFO L280 TraceCheckUtils]: 20: Hoare triple {9789#(not (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)))} #t~post2 := ~len; {9789#(not (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)))} is VALID [2020-07-18 05:17:14,756 INFO L280 TraceCheckUtils]: 21: Hoare triple {9789#(not (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)))} ~len := #t~post2 - 1; {9789#(not (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)))} is VALID [2020-07-18 05:17:14,757 INFO L280 TraceCheckUtils]: 22: Hoare triple {9789#(not (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)))} assume !(#t~post2 > 0); {9789#(not (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)))} is VALID [2020-07-18 05:17:14,757 INFO L280 TraceCheckUtils]: 23: Hoare triple {9789#(not (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)))} havoc #t~post2; {9789#(not (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)))} is VALID [2020-07-18 05:17:14,758 INFO L280 TraceCheckUtils]: 24: Hoare triple {9789#(not (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)))} #res.base, #res.offset := ~head~0.base, ~head~0.offset; {9790#(not (= 0 (select (select |#memory_$Pointer$.base| |sll_create_#res.base|) |sll_create_#res.offset|)))} is VALID [2020-07-18 05:17:14,759 INFO L280 TraceCheckUtils]: 25: Hoare triple {9790#(not (= 0 (select (select |#memory_$Pointer$.base| |sll_create_#res.base|) |sll_create_#res.offset|)))} assume true; {9790#(not (= 0 (select (select |#memory_$Pointer$.base| |sll_create_#res.base|) |sll_create_#res.offset|)))} is VALID [2020-07-18 05:17:14,760 INFO L275 TraceCheckUtils]: 26: Hoare quadruple {9790#(not (= 0 (select (select |#memory_$Pointer$.base| |sll_create_#res.base|) |sll_create_#res.offset|)))} {9708#true} #245#return; {9755#(not (= 0 (select (select |#memory_$Pointer$.base| |main_#t~ret15.base|) |main_#t~ret15.offset|)))} is VALID [2020-07-18 05:17:14,763 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:14,767 INFO L280 TraceCheckUtils]: 0: Hoare triple {9708#true} ~from := #in~from; {9708#true} is VALID [2020-07-18 05:17:14,767 INFO L280 TraceCheckUtils]: 1: Hoare triple {9708#true} ~until := #in~until; {9708#true} is VALID [2020-07-18 05:17:14,768 INFO L280 TraceCheckUtils]: 2: Hoare triple {9708#true} ~len~1 := ~from; {9708#true} is VALID [2020-07-18 05:17:14,768 INFO L280 TraceCheckUtils]: 3: Hoare triple {9708#true} #t~short12 := ~len~1 < ~until; {9708#true} is VALID [2020-07-18 05:17:14,768 INFO L280 TraceCheckUtils]: 4: Hoare triple {9708#true} assume !#t~short12; {9708#true} is VALID [2020-07-18 05:17:14,768 INFO L280 TraceCheckUtils]: 5: Hoare triple {9708#true} assume !#t~short12; {9708#true} is VALID [2020-07-18 05:17:14,768 INFO L280 TraceCheckUtils]: 6: Hoare triple {9708#true} havoc #t~nondet11; {9708#true} is VALID [2020-07-18 05:17:14,769 INFO L280 TraceCheckUtils]: 7: Hoare triple {9708#true} havoc #t~short12; {9708#true} is VALID [2020-07-18 05:17:14,769 INFO L280 TraceCheckUtils]: 8: Hoare triple {9708#true} #res := ~len~1; {9708#true} is VALID [2020-07-18 05:17:14,769 INFO L280 TraceCheckUtils]: 9: Hoare triple {9708#true} assume true; {9708#true} is VALID [2020-07-18 05:17:14,770 INFO L275 TraceCheckUtils]: 10: Hoare quadruple {9708#true} {9756#(not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)) 0))} #247#return; {9756#(not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)) 0))} is VALID [2020-07-18 05:17:14,772 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:14,866 INFO L280 TraceCheckUtils]: 0: Hoare triple {9708#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {9791#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} is VALID [2020-07-18 05:17:14,867 INFO L280 TraceCheckUtils]: 1: Hoare triple {9791#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} ~len~0 := 0; {9791#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} is VALID [2020-07-18 05:17:14,868 INFO L280 TraceCheckUtils]: 2: Hoare triple {9791#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} assume !!(~head.base != 0 || ~head.offset != 0); {9791#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} is VALID [2020-07-18 05:17:14,868 INFO L280 TraceCheckUtils]: 3: Hoare triple {9791#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} #t~post4 := ~len~0; {9791#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} is VALID [2020-07-18 05:17:14,869 INFO L280 TraceCheckUtils]: 4: Hoare triple {9791#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} ~len~0 := 1 + #t~post4; {9791#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} is VALID [2020-07-18 05:17:14,870 INFO L280 TraceCheckUtils]: 5: Hoare triple {9791#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} havoc #t~post4; {9791#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} is VALID [2020-07-18 05:17:14,871 INFO L280 TraceCheckUtils]: 6: Hoare triple {9791#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} SUMMARY for call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~head.base, ~head.offset, 4); srcloc: L579 {9792#(= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) |sll_length_#t~mem5.base|)} is VALID [2020-07-18 05:17:14,871 INFO L280 TraceCheckUtils]: 7: Hoare triple {9792#(= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) |sll_length_#t~mem5.base|)} ~head.base, ~head.offset := #t~mem5.base, #t~mem5.offset; {9793#(= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.base)} is VALID [2020-07-18 05:17:14,872 INFO L280 TraceCheckUtils]: 8: Hoare triple {9793#(= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.base)} havoc #t~mem5.base, #t~mem5.offset; {9793#(= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.base)} is VALID [2020-07-18 05:17:14,873 INFO L280 TraceCheckUtils]: 9: Hoare triple {9793#(= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.base)} assume !(~head.base != 0 || ~head.offset != 0); {9794#(= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) 0)} is VALID [2020-07-18 05:17:14,873 INFO L280 TraceCheckUtils]: 10: Hoare triple {9794#(= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) 0)} #res := ~len~0; {9794#(= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) 0)} is VALID [2020-07-18 05:17:14,874 INFO L280 TraceCheckUtils]: 11: Hoare triple {9794#(= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) 0)} assume true; {9794#(= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) 0)} is VALID [2020-07-18 05:17:14,875 INFO L275 TraceCheckUtils]: 12: Hoare quadruple {9794#(= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) 0)} {9768#(not (= (select (select |#memory_$Pointer$.base| |main_#t~mem21.base|) |main_#t~mem21.offset|) 0))} #253#return; {9709#false} is VALID [2020-07-18 05:17:14,876 INFO L263 TraceCheckUtils]: 0: Hoare triple {9708#true} call ULTIMATE.init(); {9782#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 05:17:14,876 INFO L280 TraceCheckUtils]: 1: Hoare triple {9782#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {9708#true} is VALID [2020-07-18 05:17:14,876 INFO L280 TraceCheckUtils]: 2: Hoare triple {9708#true} #valid := #valid[0 := 0]; {9708#true} is VALID [2020-07-18 05:17:14,876 INFO L280 TraceCheckUtils]: 3: Hoare triple {9708#true} assume 0 < #StackHeapBarrier; {9708#true} is VALID [2020-07-18 05:17:14,877 INFO L280 TraceCheckUtils]: 4: Hoare triple {9708#true} assume true; {9708#true} is VALID [2020-07-18 05:17:14,877 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {9708#true} {9708#true} #259#return; {9708#true} is VALID [2020-07-18 05:17:14,877 INFO L263 TraceCheckUtils]: 6: Hoare triple {9708#true} call #t~ret24 := main(); {9708#true} is VALID [2020-07-18 05:17:14,877 INFO L263 TraceCheckUtils]: 7: Hoare triple {9708#true} call #t~ret14 := _get_nondet_int(2, 5); {9708#true} is VALID [2020-07-18 05:17:14,877 INFO L280 TraceCheckUtils]: 8: Hoare triple {9708#true} ~from := #in~from; {9708#true} is VALID [2020-07-18 05:17:14,877 INFO L280 TraceCheckUtils]: 9: Hoare triple {9708#true} ~until := #in~until; {9708#true} is VALID [2020-07-18 05:17:14,878 INFO L280 TraceCheckUtils]: 10: Hoare triple {9708#true} ~len~1 := ~from; {9708#true} is VALID [2020-07-18 05:17:14,878 INFO L280 TraceCheckUtils]: 11: Hoare triple {9708#true} #t~short12 := ~len~1 < ~until; {9708#true} is VALID [2020-07-18 05:17:14,878 INFO L280 TraceCheckUtils]: 12: Hoare triple {9708#true} assume #t~short12; {9708#true} is VALID [2020-07-18 05:17:14,878 INFO L280 TraceCheckUtils]: 13: Hoare triple {9708#true} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {9708#true} is VALID [2020-07-18 05:17:14,878 INFO L280 TraceCheckUtils]: 14: Hoare triple {9708#true} #t~short12 := 0 != #t~nondet11; {9708#true} is VALID [2020-07-18 05:17:14,879 INFO L280 TraceCheckUtils]: 15: Hoare triple {9708#true} assume !#t~short12; {9708#true} is VALID [2020-07-18 05:17:14,879 INFO L280 TraceCheckUtils]: 16: Hoare triple {9708#true} havoc #t~nondet11; {9708#true} is VALID [2020-07-18 05:17:14,879 INFO L280 TraceCheckUtils]: 17: Hoare triple {9708#true} havoc #t~short12; {9708#true} is VALID [2020-07-18 05:17:14,879 INFO L280 TraceCheckUtils]: 18: Hoare triple {9708#true} #res := ~len~1; {9708#true} is VALID [2020-07-18 05:17:14,879 INFO L280 TraceCheckUtils]: 19: Hoare triple {9708#true} assume true; {9708#true} is VALID [2020-07-18 05:17:14,879 INFO L275 TraceCheckUtils]: 20: Hoare quadruple {9708#true} {9708#true} #243#return; {9708#true} is VALID [2020-07-18 05:17:14,880 INFO L280 TraceCheckUtils]: 21: Hoare triple {9708#true} assume -2147483648 <= #t~ret14 && #t~ret14 <= 2147483647; {9708#true} is VALID [2020-07-18 05:17:14,880 INFO L280 TraceCheckUtils]: 22: Hoare triple {9708#true} ~len~2 := #t~ret14; {9708#true} is VALID [2020-07-18 05:17:14,880 INFO L280 TraceCheckUtils]: 23: Hoare triple {9708#true} havoc #t~ret14; {9708#true} is VALID [2020-07-18 05:17:14,880 INFO L280 TraceCheckUtils]: 24: Hoare triple {9708#true} SUMMARY for call ~#s~0.base, ~#s~0.offset := #Ultimate.allocOnStack(4); srcloc: L617 {9708#true} is VALID [2020-07-18 05:17:14,881 INFO L263 TraceCheckUtils]: 25: Hoare triple {9708#true} call #t~ret15.base, #t~ret15.offset := sll_create(~len~2); {9783#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-18 05:17:14,881 INFO L280 TraceCheckUtils]: 26: Hoare triple {9783#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~len := #in~len; {9708#true} is VALID [2020-07-18 05:17:14,881 INFO L280 TraceCheckUtils]: 27: Hoare triple {9708#true} ~head~0.base, ~head~0.offset := 0, 0; {9708#true} is VALID [2020-07-18 05:17:14,882 INFO L280 TraceCheckUtils]: 28: Hoare triple {9708#true} #t~post2 := ~len; {9708#true} is VALID [2020-07-18 05:17:14,882 INFO L280 TraceCheckUtils]: 29: Hoare triple {9708#true} ~len := #t~post2 - 1; {9708#true} is VALID [2020-07-18 05:17:14,882 INFO L280 TraceCheckUtils]: 30: Hoare triple {9708#true} assume !!(#t~post2 > 0); {9708#true} is VALID [2020-07-18 05:17:14,882 INFO L280 TraceCheckUtils]: 31: Hoare triple {9708#true} havoc #t~post2; {9708#true} is VALID [2020-07-18 05:17:14,882 INFO L280 TraceCheckUtils]: 32: Hoare triple {9708#true} SUMMARY for call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(4); srcloc: L566 {9784#(= 0 |sll_create_#t~malloc3.offset|)} is VALID [2020-07-18 05:17:14,883 INFO L280 TraceCheckUtils]: 33: Hoare triple {9784#(= 0 |sll_create_#t~malloc3.offset|)} ~new_head~0.base, ~new_head~0.offset := #t~malloc3.base, #t~malloc3.offset; {9785#(= sll_create_~new_head~0.offset 0)} is VALID [2020-07-18 05:17:14,884 INFO L280 TraceCheckUtils]: 34: Hoare triple {9785#(= sll_create_~new_head~0.offset 0)} assume !(0 == ~new_head~0.base && 0 == ~new_head~0.offset); {9786#(not (= 0 sll_create_~new_head~0.base))} is VALID [2020-07-18 05:17:14,884 INFO L280 TraceCheckUtils]: 35: Hoare triple {9786#(not (= 0 sll_create_~new_head~0.base))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4); srcloc: L567-1 {9786#(not (= 0 sll_create_~new_head~0.base))} is VALID [2020-07-18 05:17:14,885 INFO L280 TraceCheckUtils]: 36: Hoare triple {9786#(not (= 0 sll_create_~new_head~0.base))} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset; {9787#(not (= 0 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:14,885 INFO L280 TraceCheckUtils]: 37: Hoare triple {9787#(not (= 0 sll_create_~head~0.base))} #t~post2 := ~len; {9787#(not (= 0 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:14,885 INFO L280 TraceCheckUtils]: 38: Hoare triple {9787#(not (= 0 sll_create_~head~0.base))} ~len := #t~post2 - 1; {9787#(not (= 0 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:14,886 INFO L280 TraceCheckUtils]: 39: Hoare triple {9787#(not (= 0 sll_create_~head~0.base))} assume !!(#t~post2 > 0); {9787#(not (= 0 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:14,886 INFO L280 TraceCheckUtils]: 40: Hoare triple {9787#(not (= 0 sll_create_~head~0.base))} havoc #t~post2; {9787#(not (= 0 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:14,886 INFO L280 TraceCheckUtils]: 41: Hoare triple {9787#(not (= 0 sll_create_~head~0.base))} SUMMARY for call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(4); srcloc: L566 {9787#(not (= 0 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:14,887 INFO L280 TraceCheckUtils]: 42: Hoare triple {9787#(not (= 0 sll_create_~head~0.base))} ~new_head~0.base, ~new_head~0.offset := #t~malloc3.base, #t~malloc3.offset; {9787#(not (= 0 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:14,887 INFO L280 TraceCheckUtils]: 43: Hoare triple {9787#(not (= 0 sll_create_~head~0.base))} assume !(0 == ~new_head~0.base && 0 == ~new_head~0.offset); {9787#(not (= 0 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:14,888 INFO L280 TraceCheckUtils]: 44: Hoare triple {9787#(not (= 0 sll_create_~head~0.base))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4); srcloc: L567-1 {9788#(not (= 0 (select (select |#memory_$Pointer$.base| sll_create_~new_head~0.base) sll_create_~new_head~0.offset)))} is VALID [2020-07-18 05:17:14,888 INFO L280 TraceCheckUtils]: 45: Hoare triple {9788#(not (= 0 (select (select |#memory_$Pointer$.base| sll_create_~new_head~0.base) sll_create_~new_head~0.offset)))} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset; {9789#(not (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)))} is VALID [2020-07-18 05:17:14,889 INFO L280 TraceCheckUtils]: 46: Hoare triple {9789#(not (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)))} #t~post2 := ~len; {9789#(not (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)))} is VALID [2020-07-18 05:17:14,889 INFO L280 TraceCheckUtils]: 47: Hoare triple {9789#(not (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)))} ~len := #t~post2 - 1; {9789#(not (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)))} is VALID [2020-07-18 05:17:14,889 INFO L280 TraceCheckUtils]: 48: Hoare triple {9789#(not (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)))} assume !(#t~post2 > 0); {9789#(not (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)))} is VALID [2020-07-18 05:17:14,890 INFO L280 TraceCheckUtils]: 49: Hoare triple {9789#(not (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)))} havoc #t~post2; {9789#(not (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)))} is VALID [2020-07-18 05:17:14,890 INFO L280 TraceCheckUtils]: 50: Hoare triple {9789#(not (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)))} #res.base, #res.offset := ~head~0.base, ~head~0.offset; {9790#(not (= 0 (select (select |#memory_$Pointer$.base| |sll_create_#res.base|) |sll_create_#res.offset|)))} is VALID [2020-07-18 05:17:14,891 INFO L280 TraceCheckUtils]: 51: Hoare triple {9790#(not (= 0 (select (select |#memory_$Pointer$.base| |sll_create_#res.base|) |sll_create_#res.offset|)))} assume true; {9790#(not (= 0 (select (select |#memory_$Pointer$.base| |sll_create_#res.base|) |sll_create_#res.offset|)))} is VALID [2020-07-18 05:17:14,896 INFO L275 TraceCheckUtils]: 52: Hoare quadruple {9790#(not (= 0 (select (select |#memory_$Pointer$.base| |sll_create_#res.base|) |sll_create_#res.offset|)))} {9708#true} #245#return; {9755#(not (= 0 (select (select |#memory_$Pointer$.base| |main_#t~ret15.base|) |main_#t~ret15.offset|)))} is VALID [2020-07-18 05:17:14,900 INFO L280 TraceCheckUtils]: 53: Hoare triple {9755#(not (= 0 (select (select |#memory_$Pointer$.base| |main_#t~ret15.base|) |main_#t~ret15.offset|)))} SUMMARY for call write~init~$Pointer$(#t~ret15.base, #t~ret15.offset, ~#s~0.base, ~#s~0.offset, 4); srcloc: L617-2 {9756#(not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)) 0))} is VALID [2020-07-18 05:17:14,900 INFO L280 TraceCheckUtils]: 54: Hoare triple {9756#(not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)) 0))} havoc #t~ret15.base, #t~ret15.offset; {9756#(not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)) 0))} is VALID [2020-07-18 05:17:14,900 INFO L263 TraceCheckUtils]: 55: Hoare triple {9756#(not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)) 0))} call #t~ret16 := _get_nondet_int(0, ~len~2 - 1); {9708#true} is VALID [2020-07-18 05:17:14,901 INFO L280 TraceCheckUtils]: 56: Hoare triple {9708#true} ~from := #in~from; {9708#true} is VALID [2020-07-18 05:17:14,901 INFO L280 TraceCheckUtils]: 57: Hoare triple {9708#true} ~until := #in~until; {9708#true} is VALID [2020-07-18 05:17:14,901 INFO L280 TraceCheckUtils]: 58: Hoare triple {9708#true} ~len~1 := ~from; {9708#true} is VALID [2020-07-18 05:17:14,901 INFO L280 TraceCheckUtils]: 59: Hoare triple {9708#true} #t~short12 := ~len~1 < ~until; {9708#true} is VALID [2020-07-18 05:17:14,901 INFO L280 TraceCheckUtils]: 60: Hoare triple {9708#true} assume !#t~short12; {9708#true} is VALID [2020-07-18 05:17:14,902 INFO L280 TraceCheckUtils]: 61: Hoare triple {9708#true} assume !#t~short12; {9708#true} is VALID [2020-07-18 05:17:14,902 INFO L280 TraceCheckUtils]: 62: Hoare triple {9708#true} havoc #t~nondet11; {9708#true} is VALID [2020-07-18 05:17:14,902 INFO L280 TraceCheckUtils]: 63: Hoare triple {9708#true} havoc #t~short12; {9708#true} is VALID [2020-07-18 05:17:14,902 INFO L280 TraceCheckUtils]: 64: Hoare triple {9708#true} #res := ~len~1; {9708#true} is VALID [2020-07-18 05:17:14,902 INFO L280 TraceCheckUtils]: 65: Hoare triple {9708#true} assume true; {9708#true} is VALID [2020-07-18 05:17:14,903 INFO L275 TraceCheckUtils]: 66: Hoare quadruple {9708#true} {9756#(not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)) 0))} #247#return; {9756#(not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)) 0))} is VALID [2020-07-18 05:17:14,904 INFO L280 TraceCheckUtils]: 67: Hoare triple {9756#(not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)) 0))} assume -2147483648 <= #t~ret16 && #t~ret16 <= 2147483647; {9756#(not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)) 0))} is VALID [2020-07-18 05:17:14,904 INFO L280 TraceCheckUtils]: 68: Hoare triple {9756#(not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)) 0))} ~k~0 := #t~ret16; {9756#(not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)) 0))} is VALID [2020-07-18 05:17:14,905 INFO L280 TraceCheckUtils]: 69: Hoare triple {9756#(not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)) 0))} havoc #t~ret16; {9756#(not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)) 0))} is VALID [2020-07-18 05:17:14,905 INFO L280 TraceCheckUtils]: 70: Hoare triple {9756#(not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)) 0))} ~i~0 := 0; {9756#(not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)) 0))} is VALID [2020-07-18 05:17:14,906 INFO L280 TraceCheckUtils]: 71: Hoare triple {9756#(not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)) 0))} #t~short18 := ~i~0 < ~k~0; {9756#(not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)) 0))} is VALID [2020-07-18 05:17:14,906 INFO L280 TraceCheckUtils]: 72: Hoare triple {9756#(not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)) 0))} assume !#t~short18; {9756#(not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)) 0))} is VALID [2020-07-18 05:17:14,907 INFO L280 TraceCheckUtils]: 73: Hoare triple {9756#(not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)) 0))} assume !#t~short18; {9756#(not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)) 0))} is VALID [2020-07-18 05:17:14,908 INFO L280 TraceCheckUtils]: 74: Hoare triple {9756#(not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)) 0))} havoc #t~nondet17; {9756#(not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)) 0))} is VALID [2020-07-18 05:17:14,908 INFO L280 TraceCheckUtils]: 75: Hoare triple {9756#(not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)) 0))} havoc #t~short18; {9756#(not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)) 0))} is VALID [2020-07-18 05:17:14,909 INFO L280 TraceCheckUtils]: 76: Hoare triple {9756#(not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)) 0))} SUMMARY for call #t~mem21.base, #t~mem21.offset := read~$Pointer$(~#s~0.base, ~#s~0.offset, 4); srcloc: L620-12 {9768#(not (= (select (select |#memory_$Pointer$.base| |main_#t~mem21.base|) |main_#t~mem21.offset|) 0))} is VALID [2020-07-18 05:17:14,909 INFO L263 TraceCheckUtils]: 77: Hoare triple {9768#(not (= (select (select |#memory_$Pointer$.base| |main_#t~mem21.base|) |main_#t~mem21.offset|) 0))} call #t~ret22 := sll_length(#t~mem21.base, #t~mem21.offset); {9708#true} is VALID [2020-07-18 05:17:14,910 INFO L280 TraceCheckUtils]: 78: Hoare triple {9708#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {9791#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} is VALID [2020-07-18 05:17:14,910 INFO L280 TraceCheckUtils]: 79: Hoare triple {9791#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} ~len~0 := 0; {9791#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} is VALID [2020-07-18 05:17:14,911 INFO L280 TraceCheckUtils]: 80: Hoare triple {9791#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} assume !!(~head.base != 0 || ~head.offset != 0); {9791#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} is VALID [2020-07-18 05:17:14,912 INFO L280 TraceCheckUtils]: 81: Hoare triple {9791#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} #t~post4 := ~len~0; {9791#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} is VALID [2020-07-18 05:17:14,912 INFO L280 TraceCheckUtils]: 82: Hoare triple {9791#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} ~len~0 := 1 + #t~post4; {9791#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} is VALID [2020-07-18 05:17:14,913 INFO L280 TraceCheckUtils]: 83: Hoare triple {9791#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} havoc #t~post4; {9791#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} is VALID [2020-07-18 05:17:14,913 INFO L280 TraceCheckUtils]: 84: Hoare triple {9791#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} SUMMARY for call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~head.base, ~head.offset, 4); srcloc: L579 {9792#(= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) |sll_length_#t~mem5.base|)} is VALID [2020-07-18 05:17:14,914 INFO L280 TraceCheckUtils]: 85: Hoare triple {9792#(= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) |sll_length_#t~mem5.base|)} ~head.base, ~head.offset := #t~mem5.base, #t~mem5.offset; {9793#(= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.base)} is VALID [2020-07-18 05:17:14,915 INFO L280 TraceCheckUtils]: 86: Hoare triple {9793#(= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.base)} havoc #t~mem5.base, #t~mem5.offset; {9793#(= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.base)} is VALID [2020-07-18 05:17:14,915 INFO L280 TraceCheckUtils]: 87: Hoare triple {9793#(= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.base)} assume !(~head.base != 0 || ~head.offset != 0); {9794#(= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) 0)} is VALID [2020-07-18 05:17:14,916 INFO L280 TraceCheckUtils]: 88: Hoare triple {9794#(= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) 0)} #res := ~len~0; {9794#(= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) 0)} is VALID [2020-07-18 05:17:14,916 INFO L280 TraceCheckUtils]: 89: Hoare triple {9794#(= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) 0)} assume true; {9794#(= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) 0)} is VALID [2020-07-18 05:17:14,917 INFO L275 TraceCheckUtils]: 90: Hoare quadruple {9794#(= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) 0)} {9768#(not (= (select (select |#memory_$Pointer$.base| |main_#t~mem21.base|) |main_#t~mem21.offset|) 0))} #253#return; {9709#false} is VALID [2020-07-18 05:17:14,918 INFO L280 TraceCheckUtils]: 91: Hoare triple {9709#false} assume -2147483648 <= #t~ret22 && #t~ret22 <= 2147483647; {9709#false} is VALID [2020-07-18 05:17:14,918 INFO L280 TraceCheckUtils]: 92: Hoare triple {9709#false} assume ~k~0 + ~len~2 != #t~ret22; {9709#false} is VALID [2020-07-18 05:17:14,918 INFO L280 TraceCheckUtils]: 93: Hoare triple {9709#false} havoc #t~ret22; {9709#false} is VALID [2020-07-18 05:17:14,918 INFO L280 TraceCheckUtils]: 94: Hoare triple {9709#false} havoc #t~mem21.base, #t~mem21.offset; {9709#false} is VALID [2020-07-18 05:17:14,918 INFO L280 TraceCheckUtils]: 95: Hoare triple {9709#false} assume !false; {9709#false} is VALID [2020-07-18 05:17:14,933 INFO L134 CoverageAnalysis]: Checked inductivity of 27 backedges. 8 proven. 8 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2020-07-18 05:17:14,933 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1244156927] [2020-07-18 05:17:14,933 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2020-07-18 05:17:14,934 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18] total 18 [2020-07-18 05:17:14,934 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2135848733] [2020-07-18 05:17:14,934 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 96 [2020-07-18 05:17:14,935 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 05:17:14,935 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states. [2020-07-18 05:17:15,032 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 87 edges. 87 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:17:15,032 INFO L459 AbstractCegarLoop]: Interpolant automaton has 18 states [2020-07-18 05:17:15,032 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 05:17:15,032 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2020-07-18 05:17:15,033 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=273, Unknown=0, NotChecked=0, Total=306 [2020-07-18 05:17:15,033 INFO L87 Difference]: Start difference. First operand 183 states and 200 transitions. Second operand 18 states. [2020-07-18 05:17:20,600 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:17:20,600 INFO L93 Difference]: Finished difference Result 239 states and 263 transitions. [2020-07-18 05:17:20,600 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2020-07-18 05:17:20,601 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 96 [2020-07-18 05:17:20,601 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 05:17:20,601 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2020-07-18 05:17:20,604 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 207 transitions. [2020-07-18 05:17:20,605 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2020-07-18 05:17:20,609 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 207 transitions. [2020-07-18 05:17:20,609 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 23 states and 207 transitions. [2020-07-18 05:17:20,893 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:17:20,899 INFO L225 Difference]: With dead ends: 239 [2020-07-18 05:17:20,899 INFO L226 Difference]: Without dead ends: 233 [2020-07-18 05:17:20,900 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 45 GetRequests, 12 SyntacticMatches, 0 SemanticMatches, 33 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 109 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=169, Invalid=1021, Unknown=0, NotChecked=0, Total=1190 [2020-07-18 05:17:20,901 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 233 states. [2020-07-18 05:17:21,506 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 233 to 209. [2020-07-18 05:17:21,506 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 05:17:21,507 INFO L82 GeneralOperation]: Start isEquivalent. First operand 233 states. Second operand 209 states. [2020-07-18 05:17:21,507 INFO L74 IsIncluded]: Start isIncluded. First operand 233 states. Second operand 209 states. [2020-07-18 05:17:21,507 INFO L87 Difference]: Start difference. First operand 233 states. Second operand 209 states. [2020-07-18 05:17:21,513 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:17:21,514 INFO L93 Difference]: Finished difference Result 233 states and 257 transitions. [2020-07-18 05:17:21,514 INFO L276 IsEmpty]: Start isEmpty. Operand 233 states and 257 transitions. [2020-07-18 05:17:21,515 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 05:17:21,515 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 05:17:21,515 INFO L74 IsIncluded]: Start isIncluded. First operand 209 states. Second operand 233 states. [2020-07-18 05:17:21,515 INFO L87 Difference]: Start difference. First operand 209 states. Second operand 233 states. [2020-07-18 05:17:21,522 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:17:21,523 INFO L93 Difference]: Finished difference Result 233 states and 257 transitions. [2020-07-18 05:17:21,523 INFO L276 IsEmpty]: Start isEmpty. Operand 233 states and 257 transitions. [2020-07-18 05:17:21,524 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 05:17:21,524 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 05:17:21,524 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 05:17:21,524 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 05:17:21,524 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 209 states. [2020-07-18 05:17:21,530 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 209 states to 209 states and 232 transitions. [2020-07-18 05:17:21,530 INFO L78 Accepts]: Start accepts. Automaton has 209 states and 232 transitions. Word has length 96 [2020-07-18 05:17:21,531 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 05:17:21,531 INFO L479 AbstractCegarLoop]: Abstraction has 209 states and 232 transitions. [2020-07-18 05:17:21,531 INFO L480 AbstractCegarLoop]: Interpolant automaton has 18 states. [2020-07-18 05:17:21,531 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 209 states and 232 transitions. [2020-07-18 05:17:22,026 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 232 edges. 232 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:17:22,026 INFO L276 IsEmpty]: Start isEmpty. Operand 209 states and 232 transitions. [2020-07-18 05:17:22,028 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 98 [2020-07-18 05:17:22,028 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 05:17:22,029 INFO L422 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 2, 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] [2020-07-18 05:17:22,029 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7 [2020-07-18 05:17:22,029 INFO L427 AbstractCegarLoop]: === Iteration 9 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 05:17:22,030 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 05:17:22,030 INFO L82 PathProgramCache]: Analyzing trace with hash 1940597340, now seen corresponding path program 1 times [2020-07-18 05:17:22,030 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 05:17:22,030 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1769667781] [2020-07-18 05:17:22,030 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 05:17:22,046 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:22,097 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:22,101 INFO L280 TraceCheckUtils]: 0: Hoare triple {11270#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {11196#true} is VALID [2020-07-18 05:17:22,102 INFO L280 TraceCheckUtils]: 1: Hoare triple {11196#true} #valid := #valid[0 := 0]; {11196#true} is VALID [2020-07-18 05:17:22,102 INFO L280 TraceCheckUtils]: 2: Hoare triple {11196#true} assume 0 < #StackHeapBarrier; {11196#true} is VALID [2020-07-18 05:17:22,102 INFO L280 TraceCheckUtils]: 3: Hoare triple {11196#true} assume true; {11196#true} is VALID [2020-07-18 05:17:22,103 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {11196#true} {11196#true} #259#return; {11196#true} is VALID [2020-07-18 05:17:22,107 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:22,239 INFO L280 TraceCheckUtils]: 0: Hoare triple {11196#true} ~from := #in~from; {11271#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:17:22,240 INFO L280 TraceCheckUtils]: 1: Hoare triple {11271#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~until := #in~until; {11271#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:17:22,241 INFO L280 TraceCheckUtils]: 2: Hoare triple {11271#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~len~1 := ~from; {11272#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:22,242 INFO L280 TraceCheckUtils]: 3: Hoare triple {11272#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #t~short12 := ~len~1 < ~until; {11272#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:22,243 INFO L280 TraceCheckUtils]: 4: Hoare triple {11272#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume #t~short12; {11272#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:22,244 INFO L280 TraceCheckUtils]: 5: Hoare triple {11272#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {11272#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:22,245 INFO L280 TraceCheckUtils]: 6: Hoare triple {11272#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #t~short12 := 0 != #t~nondet11; {11272#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:22,246 INFO L280 TraceCheckUtils]: 7: Hoare triple {11272#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume !!#t~short12; {11272#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:22,247 INFO L280 TraceCheckUtils]: 8: Hoare triple {11272#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} havoc #t~nondet11; {11272#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:22,247 INFO L280 TraceCheckUtils]: 9: Hoare triple {11272#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} havoc #t~short12; {11272#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:22,248 INFO L280 TraceCheckUtils]: 10: Hoare triple {11272#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #t~post13 := ~len~1; {11273#(or (<= 2 |_get_nondet_int_#t~post13|) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:22,250 INFO L280 TraceCheckUtils]: 11: Hoare triple {11273#(or (<= 2 |_get_nondet_int_#t~post13|) (not (= 2 |_get_nondet_int_#in~from|)))} ~len~1 := 1 + #t~post13; {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:22,251 INFO L280 TraceCheckUtils]: 12: Hoare triple {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} havoc #t~post13; {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:22,251 INFO L280 TraceCheckUtils]: 13: Hoare triple {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} #t~short12 := ~len~1 < ~until; {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:22,252 INFO L280 TraceCheckUtils]: 14: Hoare triple {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} assume #t~short12; {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:22,253 INFO L280 TraceCheckUtils]: 15: Hoare triple {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:22,254 INFO L280 TraceCheckUtils]: 16: Hoare triple {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} #t~short12 := 0 != #t~nondet11; {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:22,254 INFO L280 TraceCheckUtils]: 17: Hoare triple {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} assume !#t~short12; {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:22,255 INFO L280 TraceCheckUtils]: 18: Hoare triple {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} havoc #t~nondet11; {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:22,256 INFO L280 TraceCheckUtils]: 19: Hoare triple {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} havoc #t~short12; {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:22,257 INFO L280 TraceCheckUtils]: 20: Hoare triple {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} #res := ~len~1; {11275#(or (<= 3 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:22,257 INFO L280 TraceCheckUtils]: 21: Hoare triple {11275#(or (<= 3 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} assume true; {11275#(or (<= 3 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:22,259 INFO L275 TraceCheckUtils]: 22: Hoare quadruple {11275#(or (<= 3 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} {11196#true} #243#return; {11226#(<= 3 |main_#t~ret14|)} is VALID [2020-07-18 05:17:22,291 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:22,428 INFO L280 TraceCheckUtils]: 0: Hoare triple {11276#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~len := #in~len; {11277#(= |sll_create_#in~len| sll_create_~len)} is VALID [2020-07-18 05:17:22,429 INFO L280 TraceCheckUtils]: 1: Hoare triple {11277#(= |sll_create_#in~len| sll_create_~len)} ~head~0.base, ~head~0.offset := 0, 0; {11277#(= |sll_create_#in~len| sll_create_~len)} is VALID [2020-07-18 05:17:22,430 INFO L280 TraceCheckUtils]: 2: Hoare triple {11277#(= |sll_create_#in~len| sll_create_~len)} #t~post2 := ~len; {11278#(= |sll_create_#in~len| |sll_create_#t~post2|)} is VALID [2020-07-18 05:17:22,431 INFO L280 TraceCheckUtils]: 3: Hoare triple {11278#(= |sll_create_#in~len| |sll_create_#t~post2|)} ~len := #t~post2 - 1; {11279#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:17:22,432 INFO L280 TraceCheckUtils]: 4: Hoare triple {11279#(<= |sll_create_#in~len| (+ sll_create_~len 1))} assume !!(#t~post2 > 0); {11279#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:17:22,432 INFO L280 TraceCheckUtils]: 5: Hoare triple {11279#(<= |sll_create_#in~len| (+ sll_create_~len 1))} havoc #t~post2; {11279#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:17:22,433 INFO L280 TraceCheckUtils]: 6: Hoare triple {11279#(<= |sll_create_#in~len| (+ sll_create_~len 1))} SUMMARY for call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(4); srcloc: L566 {11279#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:17:22,434 INFO L280 TraceCheckUtils]: 7: Hoare triple {11279#(<= |sll_create_#in~len| (+ sll_create_~len 1))} ~new_head~0.base, ~new_head~0.offset := #t~malloc3.base, #t~malloc3.offset; {11279#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:17:22,435 INFO L280 TraceCheckUtils]: 8: Hoare triple {11279#(<= |sll_create_#in~len| (+ sll_create_~len 1))} assume !(0 == ~new_head~0.base && 0 == ~new_head~0.offset); {11279#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:17:22,436 INFO L280 TraceCheckUtils]: 9: Hoare triple {11279#(<= |sll_create_#in~len| (+ sll_create_~len 1))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4); srcloc: L567-1 {11279#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:17:22,437 INFO L280 TraceCheckUtils]: 10: Hoare triple {11279#(<= |sll_create_#in~len| (+ sll_create_~len 1))} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset; {11279#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:17:22,438 INFO L280 TraceCheckUtils]: 11: Hoare triple {11279#(<= |sll_create_#in~len| (+ sll_create_~len 1))} #t~post2 := ~len; {11280#(<= |sll_create_#in~len| (+ |sll_create_#t~post2| 1))} is VALID [2020-07-18 05:17:22,438 INFO L280 TraceCheckUtils]: 12: Hoare triple {11280#(<= |sll_create_#in~len| (+ |sll_create_#t~post2| 1))} ~len := #t~post2 - 1; {11280#(<= |sll_create_#in~len| (+ |sll_create_#t~post2| 1))} is VALID [2020-07-18 05:17:22,439 INFO L280 TraceCheckUtils]: 13: Hoare triple {11280#(<= |sll_create_#in~len| (+ |sll_create_#t~post2| 1))} assume !(#t~post2 > 0); {11281#(<= |sll_create_#in~len| 1)} is VALID [2020-07-18 05:17:22,440 INFO L280 TraceCheckUtils]: 14: Hoare triple {11281#(<= |sll_create_#in~len| 1)} havoc #t~post2; {11281#(<= |sll_create_#in~len| 1)} is VALID [2020-07-18 05:17:22,441 INFO L280 TraceCheckUtils]: 15: Hoare triple {11281#(<= |sll_create_#in~len| 1)} #res.base, #res.offset := ~head~0.base, ~head~0.offset; {11281#(<= |sll_create_#in~len| 1)} is VALID [2020-07-18 05:17:22,441 INFO L280 TraceCheckUtils]: 16: Hoare triple {11281#(<= |sll_create_#in~len| 1)} assume true; {11281#(<= |sll_create_#in~len| 1)} is VALID [2020-07-18 05:17:22,443 INFO L275 TraceCheckUtils]: 17: Hoare quadruple {11281#(<= |sll_create_#in~len| 1)} {11227#(<= 3 main_~len~2)} #245#return; {11197#false} is VALID [2020-07-18 05:17:22,445 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:22,449 INFO L280 TraceCheckUtils]: 0: Hoare triple {11196#true} ~from := #in~from; {11196#true} is VALID [2020-07-18 05:17:22,449 INFO L280 TraceCheckUtils]: 1: Hoare triple {11196#true} ~until := #in~until; {11196#true} is VALID [2020-07-18 05:17:22,450 INFO L280 TraceCheckUtils]: 2: Hoare triple {11196#true} ~len~1 := ~from; {11196#true} is VALID [2020-07-18 05:17:22,450 INFO L280 TraceCheckUtils]: 3: Hoare triple {11196#true} #t~short12 := ~len~1 < ~until; {11196#true} is VALID [2020-07-18 05:17:22,450 INFO L280 TraceCheckUtils]: 4: Hoare triple {11196#true} assume !#t~short12; {11196#true} is VALID [2020-07-18 05:17:22,451 INFO L280 TraceCheckUtils]: 5: Hoare triple {11196#true} assume !#t~short12; {11196#true} is VALID [2020-07-18 05:17:22,451 INFO L280 TraceCheckUtils]: 6: Hoare triple {11196#true} havoc #t~nondet11; {11196#true} is VALID [2020-07-18 05:17:22,451 INFO L280 TraceCheckUtils]: 7: Hoare triple {11196#true} havoc #t~short12; {11196#true} is VALID [2020-07-18 05:17:22,451 INFO L280 TraceCheckUtils]: 8: Hoare triple {11196#true} #res := ~len~1; {11196#true} is VALID [2020-07-18 05:17:22,452 INFO L280 TraceCheckUtils]: 9: Hoare triple {11196#true} assume true; {11196#true} is VALID [2020-07-18 05:17:22,452 INFO L275 TraceCheckUtils]: 10: Hoare quadruple {11196#true} {11197#false} #247#return; {11197#false} is VALID [2020-07-18 05:17:22,454 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:22,458 INFO L280 TraceCheckUtils]: 0: Hoare triple {11196#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {11196#true} is VALID [2020-07-18 05:17:22,459 INFO L280 TraceCheckUtils]: 1: Hoare triple {11196#true} ~len~0 := 0; {11196#true} is VALID [2020-07-18 05:17:22,459 INFO L280 TraceCheckUtils]: 2: Hoare triple {11196#true} assume !!(~head.base != 0 || ~head.offset != 0); {11196#true} is VALID [2020-07-18 05:17:22,459 INFO L280 TraceCheckUtils]: 3: Hoare triple {11196#true} #t~post4 := ~len~0; {11196#true} is VALID [2020-07-18 05:17:22,459 INFO L280 TraceCheckUtils]: 4: Hoare triple {11196#true} ~len~0 := 1 + #t~post4; {11196#true} is VALID [2020-07-18 05:17:22,460 INFO L280 TraceCheckUtils]: 5: Hoare triple {11196#true} havoc #t~post4; {11196#true} is VALID [2020-07-18 05:17:22,460 INFO L280 TraceCheckUtils]: 6: Hoare triple {11196#true} SUMMARY for call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~head.base, ~head.offset, 4); srcloc: L579 {11196#true} is VALID [2020-07-18 05:17:22,460 INFO L280 TraceCheckUtils]: 7: Hoare triple {11196#true} ~head.base, ~head.offset := #t~mem5.base, #t~mem5.offset; {11196#true} is VALID [2020-07-18 05:17:22,460 INFO L280 TraceCheckUtils]: 8: Hoare triple {11196#true} havoc #t~mem5.base, #t~mem5.offset; {11196#true} is VALID [2020-07-18 05:17:22,460 INFO L280 TraceCheckUtils]: 9: Hoare triple {11196#true} assume !(~head.base != 0 || ~head.offset != 0); {11196#true} is VALID [2020-07-18 05:17:22,461 INFO L280 TraceCheckUtils]: 10: Hoare triple {11196#true} #res := ~len~0; {11196#true} is VALID [2020-07-18 05:17:22,461 INFO L280 TraceCheckUtils]: 11: Hoare triple {11196#true} assume true; {11196#true} is VALID [2020-07-18 05:17:22,461 INFO L275 TraceCheckUtils]: 12: Hoare quadruple {11196#true} {11197#false} #253#return; {11197#false} is VALID [2020-07-18 05:17:22,462 INFO L263 TraceCheckUtils]: 0: Hoare triple {11196#true} call ULTIMATE.init(); {11270#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 05:17:22,462 INFO L280 TraceCheckUtils]: 1: Hoare triple {11270#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {11196#true} is VALID [2020-07-18 05:17:22,462 INFO L280 TraceCheckUtils]: 2: Hoare triple {11196#true} #valid := #valid[0 := 0]; {11196#true} is VALID [2020-07-18 05:17:22,463 INFO L280 TraceCheckUtils]: 3: Hoare triple {11196#true} assume 0 < #StackHeapBarrier; {11196#true} is VALID [2020-07-18 05:17:22,463 INFO L280 TraceCheckUtils]: 4: Hoare triple {11196#true} assume true; {11196#true} is VALID [2020-07-18 05:17:22,463 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {11196#true} {11196#true} #259#return; {11196#true} is VALID [2020-07-18 05:17:22,463 INFO L263 TraceCheckUtils]: 6: Hoare triple {11196#true} call #t~ret24 := main(); {11196#true} is VALID [2020-07-18 05:17:22,464 INFO L263 TraceCheckUtils]: 7: Hoare triple {11196#true} call #t~ret14 := _get_nondet_int(2, 5); {11196#true} is VALID [2020-07-18 05:17:22,464 INFO L280 TraceCheckUtils]: 8: Hoare triple {11196#true} ~from := #in~from; {11271#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:17:22,465 INFO L280 TraceCheckUtils]: 9: Hoare triple {11271#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~until := #in~until; {11271#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:17:22,465 INFO L280 TraceCheckUtils]: 10: Hoare triple {11271#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~len~1 := ~from; {11272#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:22,466 INFO L280 TraceCheckUtils]: 11: Hoare triple {11272#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #t~short12 := ~len~1 < ~until; {11272#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:22,466 INFO L280 TraceCheckUtils]: 12: Hoare triple {11272#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume #t~short12; {11272#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:22,467 INFO L280 TraceCheckUtils]: 13: Hoare triple {11272#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {11272#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:22,467 INFO L280 TraceCheckUtils]: 14: Hoare triple {11272#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #t~short12 := 0 != #t~nondet11; {11272#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:22,468 INFO L280 TraceCheckUtils]: 15: Hoare triple {11272#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume !!#t~short12; {11272#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:22,468 INFO L280 TraceCheckUtils]: 16: Hoare triple {11272#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} havoc #t~nondet11; {11272#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:22,469 INFO L280 TraceCheckUtils]: 17: Hoare triple {11272#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} havoc #t~short12; {11272#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:22,470 INFO L280 TraceCheckUtils]: 18: Hoare triple {11272#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #t~post13 := ~len~1; {11273#(or (<= 2 |_get_nondet_int_#t~post13|) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:22,470 INFO L280 TraceCheckUtils]: 19: Hoare triple {11273#(or (<= 2 |_get_nondet_int_#t~post13|) (not (= 2 |_get_nondet_int_#in~from|)))} ~len~1 := 1 + #t~post13; {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:22,471 INFO L280 TraceCheckUtils]: 20: Hoare triple {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} havoc #t~post13; {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:22,471 INFO L280 TraceCheckUtils]: 21: Hoare triple {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} #t~short12 := ~len~1 < ~until; {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:22,472 INFO L280 TraceCheckUtils]: 22: Hoare triple {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} assume #t~short12; {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:22,473 INFO L280 TraceCheckUtils]: 23: Hoare triple {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:22,474 INFO L280 TraceCheckUtils]: 24: Hoare triple {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} #t~short12 := 0 != #t~nondet11; {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:22,474 INFO L280 TraceCheckUtils]: 25: Hoare triple {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} assume !#t~short12; {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:22,475 INFO L280 TraceCheckUtils]: 26: Hoare triple {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} havoc #t~nondet11; {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:22,476 INFO L280 TraceCheckUtils]: 27: Hoare triple {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} havoc #t~short12; {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:22,477 INFO L280 TraceCheckUtils]: 28: Hoare triple {11274#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} #res := ~len~1; {11275#(or (<= 3 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:22,478 INFO L280 TraceCheckUtils]: 29: Hoare triple {11275#(or (<= 3 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} assume true; {11275#(or (<= 3 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:22,479 INFO L275 TraceCheckUtils]: 30: Hoare quadruple {11275#(or (<= 3 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} {11196#true} #243#return; {11226#(<= 3 |main_#t~ret14|)} is VALID [2020-07-18 05:17:22,480 INFO L280 TraceCheckUtils]: 31: Hoare triple {11226#(<= 3 |main_#t~ret14|)} assume -2147483648 <= #t~ret14 && #t~ret14 <= 2147483647; {11226#(<= 3 |main_#t~ret14|)} is VALID [2020-07-18 05:17:22,481 INFO L280 TraceCheckUtils]: 32: Hoare triple {11226#(<= 3 |main_#t~ret14|)} ~len~2 := #t~ret14; {11227#(<= 3 main_~len~2)} is VALID [2020-07-18 05:17:22,482 INFO L280 TraceCheckUtils]: 33: Hoare triple {11227#(<= 3 main_~len~2)} havoc #t~ret14; {11227#(<= 3 main_~len~2)} is VALID [2020-07-18 05:17:22,483 INFO L280 TraceCheckUtils]: 34: Hoare triple {11227#(<= 3 main_~len~2)} SUMMARY for call ~#s~0.base, ~#s~0.offset := #Ultimate.allocOnStack(4); srcloc: L617 {11227#(<= 3 main_~len~2)} is VALID [2020-07-18 05:17:22,484 INFO L263 TraceCheckUtils]: 35: Hoare triple {11227#(<= 3 main_~len~2)} call #t~ret15.base, #t~ret15.offset := sll_create(~len~2); {11276#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-18 05:17:22,485 INFO L280 TraceCheckUtils]: 36: Hoare triple {11276#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~len := #in~len; {11277#(= |sll_create_#in~len| sll_create_~len)} is VALID [2020-07-18 05:17:22,486 INFO L280 TraceCheckUtils]: 37: Hoare triple {11277#(= |sll_create_#in~len| sll_create_~len)} ~head~0.base, ~head~0.offset := 0, 0; {11277#(= |sll_create_#in~len| sll_create_~len)} is VALID [2020-07-18 05:17:22,487 INFO L280 TraceCheckUtils]: 38: Hoare triple {11277#(= |sll_create_#in~len| sll_create_~len)} #t~post2 := ~len; {11278#(= |sll_create_#in~len| |sll_create_#t~post2|)} is VALID [2020-07-18 05:17:22,488 INFO L280 TraceCheckUtils]: 39: Hoare triple {11278#(= |sll_create_#in~len| |sll_create_#t~post2|)} ~len := #t~post2 - 1; {11279#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:17:22,489 INFO L280 TraceCheckUtils]: 40: Hoare triple {11279#(<= |sll_create_#in~len| (+ sll_create_~len 1))} assume !!(#t~post2 > 0); {11279#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:17:22,489 INFO L280 TraceCheckUtils]: 41: Hoare triple {11279#(<= |sll_create_#in~len| (+ sll_create_~len 1))} havoc #t~post2; {11279#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:17:22,490 INFO L280 TraceCheckUtils]: 42: Hoare triple {11279#(<= |sll_create_#in~len| (+ sll_create_~len 1))} SUMMARY for call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(4); srcloc: L566 {11279#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:17:22,491 INFO L280 TraceCheckUtils]: 43: Hoare triple {11279#(<= |sll_create_#in~len| (+ sll_create_~len 1))} ~new_head~0.base, ~new_head~0.offset := #t~malloc3.base, #t~malloc3.offset; {11279#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:17:22,492 INFO L280 TraceCheckUtils]: 44: Hoare triple {11279#(<= |sll_create_#in~len| (+ sll_create_~len 1))} assume !(0 == ~new_head~0.base && 0 == ~new_head~0.offset); {11279#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:17:22,492 INFO L280 TraceCheckUtils]: 45: Hoare triple {11279#(<= |sll_create_#in~len| (+ sll_create_~len 1))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4); srcloc: L567-1 {11279#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:17:22,493 INFO L280 TraceCheckUtils]: 46: Hoare triple {11279#(<= |sll_create_#in~len| (+ sll_create_~len 1))} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset; {11279#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:17:22,494 INFO L280 TraceCheckUtils]: 47: Hoare triple {11279#(<= |sll_create_#in~len| (+ sll_create_~len 1))} #t~post2 := ~len; {11280#(<= |sll_create_#in~len| (+ |sll_create_#t~post2| 1))} is VALID [2020-07-18 05:17:22,495 INFO L280 TraceCheckUtils]: 48: Hoare triple {11280#(<= |sll_create_#in~len| (+ |sll_create_#t~post2| 1))} ~len := #t~post2 - 1; {11280#(<= |sll_create_#in~len| (+ |sll_create_#t~post2| 1))} is VALID [2020-07-18 05:17:22,496 INFO L280 TraceCheckUtils]: 49: Hoare triple {11280#(<= |sll_create_#in~len| (+ |sll_create_#t~post2| 1))} assume !(#t~post2 > 0); {11281#(<= |sll_create_#in~len| 1)} is VALID [2020-07-18 05:17:22,497 INFO L280 TraceCheckUtils]: 50: Hoare triple {11281#(<= |sll_create_#in~len| 1)} havoc #t~post2; {11281#(<= |sll_create_#in~len| 1)} is VALID [2020-07-18 05:17:22,498 INFO L280 TraceCheckUtils]: 51: Hoare triple {11281#(<= |sll_create_#in~len| 1)} #res.base, #res.offset := ~head~0.base, ~head~0.offset; {11281#(<= |sll_create_#in~len| 1)} is VALID [2020-07-18 05:17:22,498 INFO L280 TraceCheckUtils]: 52: Hoare triple {11281#(<= |sll_create_#in~len| 1)} assume true; {11281#(<= |sll_create_#in~len| 1)} is VALID [2020-07-18 05:17:22,500 INFO L275 TraceCheckUtils]: 53: Hoare quadruple {11281#(<= |sll_create_#in~len| 1)} {11227#(<= 3 main_~len~2)} #245#return; {11197#false} is VALID [2020-07-18 05:17:22,500 INFO L280 TraceCheckUtils]: 54: Hoare triple {11197#false} SUMMARY for call write~init~$Pointer$(#t~ret15.base, #t~ret15.offset, ~#s~0.base, ~#s~0.offset, 4); srcloc: L617-2 {11197#false} is VALID [2020-07-18 05:17:22,501 INFO L280 TraceCheckUtils]: 55: Hoare triple {11197#false} havoc #t~ret15.base, #t~ret15.offset; {11197#false} is VALID [2020-07-18 05:17:22,501 INFO L263 TraceCheckUtils]: 56: Hoare triple {11197#false} call #t~ret16 := _get_nondet_int(0, ~len~2 - 1); {11196#true} is VALID [2020-07-18 05:17:22,501 INFO L280 TraceCheckUtils]: 57: Hoare triple {11196#true} ~from := #in~from; {11196#true} is VALID [2020-07-18 05:17:22,502 INFO L280 TraceCheckUtils]: 58: Hoare triple {11196#true} ~until := #in~until; {11196#true} is VALID [2020-07-18 05:17:22,502 INFO L280 TraceCheckUtils]: 59: Hoare triple {11196#true} ~len~1 := ~from; {11196#true} is VALID [2020-07-18 05:17:22,502 INFO L280 TraceCheckUtils]: 60: Hoare triple {11196#true} #t~short12 := ~len~1 < ~until; {11196#true} is VALID [2020-07-18 05:17:22,503 INFO L280 TraceCheckUtils]: 61: Hoare triple {11196#true} assume !#t~short12; {11196#true} is VALID [2020-07-18 05:17:22,503 INFO L280 TraceCheckUtils]: 62: Hoare triple {11196#true} assume !#t~short12; {11196#true} is VALID [2020-07-18 05:17:22,503 INFO L280 TraceCheckUtils]: 63: Hoare triple {11196#true} havoc #t~nondet11; {11196#true} is VALID [2020-07-18 05:17:22,504 INFO L280 TraceCheckUtils]: 64: Hoare triple {11196#true} havoc #t~short12; {11196#true} is VALID [2020-07-18 05:17:22,504 INFO L280 TraceCheckUtils]: 65: Hoare triple {11196#true} #res := ~len~1; {11196#true} is VALID [2020-07-18 05:17:22,504 INFO L280 TraceCheckUtils]: 66: Hoare triple {11196#true} assume true; {11196#true} is VALID [2020-07-18 05:17:22,505 INFO L275 TraceCheckUtils]: 67: Hoare quadruple {11196#true} {11197#false} #247#return; {11197#false} is VALID [2020-07-18 05:17:22,505 INFO L280 TraceCheckUtils]: 68: Hoare triple {11197#false} assume -2147483648 <= #t~ret16 && #t~ret16 <= 2147483647; {11197#false} is VALID [2020-07-18 05:17:22,505 INFO L280 TraceCheckUtils]: 69: Hoare triple {11197#false} ~k~0 := #t~ret16; {11197#false} is VALID [2020-07-18 05:17:22,505 INFO L280 TraceCheckUtils]: 70: Hoare triple {11197#false} havoc #t~ret16; {11197#false} is VALID [2020-07-18 05:17:22,506 INFO L280 TraceCheckUtils]: 71: Hoare triple {11197#false} ~i~0 := 0; {11197#false} is VALID [2020-07-18 05:17:22,506 INFO L280 TraceCheckUtils]: 72: Hoare triple {11197#false} #t~short18 := ~i~0 < ~k~0; {11197#false} is VALID [2020-07-18 05:17:22,506 INFO L280 TraceCheckUtils]: 73: Hoare triple {11197#false} assume !#t~short18; {11197#false} is VALID [2020-07-18 05:17:22,507 INFO L280 TraceCheckUtils]: 74: Hoare triple {11197#false} assume !#t~short18; {11197#false} is VALID [2020-07-18 05:17:22,507 INFO L280 TraceCheckUtils]: 75: Hoare triple {11197#false} havoc #t~nondet17; {11197#false} is VALID [2020-07-18 05:17:22,507 INFO L280 TraceCheckUtils]: 76: Hoare triple {11197#false} havoc #t~short18; {11197#false} is VALID [2020-07-18 05:17:22,508 INFO L280 TraceCheckUtils]: 77: Hoare triple {11197#false} SUMMARY for call #t~mem21.base, #t~mem21.offset := read~$Pointer$(~#s~0.base, ~#s~0.offset, 4); srcloc: L620-12 {11197#false} is VALID [2020-07-18 05:17:22,508 INFO L263 TraceCheckUtils]: 78: Hoare triple {11197#false} call #t~ret22 := sll_length(#t~mem21.base, #t~mem21.offset); {11196#true} is VALID [2020-07-18 05:17:22,508 INFO L280 TraceCheckUtils]: 79: Hoare triple {11196#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {11196#true} is VALID [2020-07-18 05:17:22,509 INFO L280 TraceCheckUtils]: 80: Hoare triple {11196#true} ~len~0 := 0; {11196#true} is VALID [2020-07-18 05:17:22,509 INFO L280 TraceCheckUtils]: 81: Hoare triple {11196#true} assume !!(~head.base != 0 || ~head.offset != 0); {11196#true} is VALID [2020-07-18 05:17:22,509 INFO L280 TraceCheckUtils]: 82: Hoare triple {11196#true} #t~post4 := ~len~0; {11196#true} is VALID [2020-07-18 05:17:22,509 INFO L280 TraceCheckUtils]: 83: Hoare triple {11196#true} ~len~0 := 1 + #t~post4; {11196#true} is VALID [2020-07-18 05:17:22,510 INFO L280 TraceCheckUtils]: 84: Hoare triple {11196#true} havoc #t~post4; {11196#true} is VALID [2020-07-18 05:17:22,510 INFO L280 TraceCheckUtils]: 85: Hoare triple {11196#true} SUMMARY for call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~head.base, ~head.offset, 4); srcloc: L579 {11196#true} is VALID [2020-07-18 05:17:22,510 INFO L280 TraceCheckUtils]: 86: Hoare triple {11196#true} ~head.base, ~head.offset := #t~mem5.base, #t~mem5.offset; {11196#true} is VALID [2020-07-18 05:17:22,511 INFO L280 TraceCheckUtils]: 87: Hoare triple {11196#true} havoc #t~mem5.base, #t~mem5.offset; {11196#true} is VALID [2020-07-18 05:17:22,511 INFO L280 TraceCheckUtils]: 88: Hoare triple {11196#true} assume !(~head.base != 0 || ~head.offset != 0); {11196#true} is VALID [2020-07-18 05:17:22,511 INFO L280 TraceCheckUtils]: 89: Hoare triple {11196#true} #res := ~len~0; {11196#true} is VALID [2020-07-18 05:17:22,512 INFO L280 TraceCheckUtils]: 90: Hoare triple {11196#true} assume true; {11196#true} is VALID [2020-07-18 05:17:22,512 INFO L275 TraceCheckUtils]: 91: Hoare quadruple {11196#true} {11197#false} #253#return; {11197#false} is VALID [2020-07-18 05:17:22,512 INFO L280 TraceCheckUtils]: 92: Hoare triple {11197#false} assume -2147483648 <= #t~ret22 && #t~ret22 <= 2147483647; {11197#false} is VALID [2020-07-18 05:17:22,513 INFO L280 TraceCheckUtils]: 93: Hoare triple {11197#false} assume ~k~0 + ~len~2 != #t~ret22; {11197#false} is VALID [2020-07-18 05:17:22,513 INFO L280 TraceCheckUtils]: 94: Hoare triple {11197#false} havoc #t~ret22; {11197#false} is VALID [2020-07-18 05:17:22,513 INFO L280 TraceCheckUtils]: 95: Hoare triple {11197#false} havoc #t~mem21.base, #t~mem21.offset; {11197#false} is VALID [2020-07-18 05:17:22,514 INFO L280 TraceCheckUtils]: 96: Hoare triple {11197#false} assume !false; {11197#false} is VALID [2020-07-18 05:17:22,532 INFO L134 CoverageAnalysis]: Checked inductivity of 23 backedges. 0 proven. 21 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2020-07-18 05:17:22,532 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1769667781] [2020-07-18 05:17:22,538 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2020-07-18 05:17:22,538 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16] total 16 [2020-07-18 05:17:22,538 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1540269996] [2020-07-18 05:17:22,541 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 97 [2020-07-18 05:17:22,542 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 05:17:22,542 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states. [2020-07-18 05:17:22,653 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 97 edges. 97 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:17:22,653 INFO L459 AbstractCegarLoop]: Interpolant automaton has 16 states [2020-07-18 05:17:22,653 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 05:17:22,654 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2020-07-18 05:17:22,654 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=31, Invalid=209, Unknown=0, NotChecked=0, Total=240 [2020-07-18 05:17:22,654 INFO L87 Difference]: Start difference. First operand 209 states and 232 transitions. Second operand 16 states. [2020-07-18 05:17:28,647 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:17:28,648 INFO L93 Difference]: Finished difference Result 358 states and 404 transitions. [2020-07-18 05:17:28,648 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2020-07-18 05:17:28,648 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 97 [2020-07-18 05:17:28,648 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 05:17:28,648 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2020-07-18 05:17:28,652 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 329 transitions. [2020-07-18 05:17:28,653 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2020-07-18 05:17:28,657 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 329 transitions. [2020-07-18 05:17:28,657 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 26 states and 329 transitions. [2020-07-18 05:17:29,093 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 329 edges. 329 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:17:29,100 INFO L225 Difference]: With dead ends: 358 [2020-07-18 05:17:29,100 INFO L226 Difference]: Without dead ends: 245 [2020-07-18 05:17:29,102 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 48 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 33 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 143 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=187, Invalid=1003, Unknown=0, NotChecked=0, Total=1190 [2020-07-18 05:17:29,102 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 245 states. [2020-07-18 05:17:29,645 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 245 to 176. [2020-07-18 05:17:29,646 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 05:17:29,646 INFO L82 GeneralOperation]: Start isEquivalent. First operand 245 states. Second operand 176 states. [2020-07-18 05:17:29,646 INFO L74 IsIncluded]: Start isIncluded. First operand 245 states. Second operand 176 states. [2020-07-18 05:17:29,646 INFO L87 Difference]: Start difference. First operand 245 states. Second operand 176 states. [2020-07-18 05:17:29,656 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:17:29,656 INFO L93 Difference]: Finished difference Result 245 states and 277 transitions. [2020-07-18 05:17:29,656 INFO L276 IsEmpty]: Start isEmpty. Operand 245 states and 277 transitions. [2020-07-18 05:17:29,658 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 05:17:29,658 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 05:17:29,658 INFO L74 IsIncluded]: Start isIncluded. First operand 176 states. Second operand 245 states. [2020-07-18 05:17:29,658 INFO L87 Difference]: Start difference. First operand 176 states. Second operand 245 states. [2020-07-18 05:17:29,666 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:17:29,667 INFO L93 Difference]: Finished difference Result 245 states and 277 transitions. [2020-07-18 05:17:29,667 INFO L276 IsEmpty]: Start isEmpty. Operand 245 states and 277 transitions. [2020-07-18 05:17:29,668 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 05:17:29,668 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 05:17:29,668 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 05:17:29,668 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 05:17:29,669 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 176 states. [2020-07-18 05:17:29,672 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 176 states to 176 states and 192 transitions. [2020-07-18 05:17:29,673 INFO L78 Accepts]: Start accepts. Automaton has 176 states and 192 transitions. Word has length 97 [2020-07-18 05:17:29,673 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 05:17:29,673 INFO L479 AbstractCegarLoop]: Abstraction has 176 states and 192 transitions. [2020-07-18 05:17:29,673 INFO L480 AbstractCegarLoop]: Interpolant automaton has 16 states. [2020-07-18 05:17:29,673 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 176 states and 192 transitions. [2020-07-18 05:17:30,043 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 192 edges. 192 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:17:30,044 INFO L276 IsEmpty]: Start isEmpty. Operand 176 states and 192 transitions. [2020-07-18 05:17:30,045 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 104 [2020-07-18 05:17:30,045 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 05:17:30,045 INFO L422 BasicCegarLoop]: trace histogram [3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 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] [2020-07-18 05:17:30,045 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8 [2020-07-18 05:17:30,046 INFO L427 AbstractCegarLoop]: === Iteration 10 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 05:17:30,046 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 05:17:30,046 INFO L82 PathProgramCache]: Analyzing trace with hash -1056708542, now seen corresponding path program 2 times [2020-07-18 05:17:30,046 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 05:17:30,046 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1363616496] [2020-07-18 05:17:30,047 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 05:17:30,063 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:30,119 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:30,122 INFO L280 TraceCheckUtils]: 0: Hoare triple {12967#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {12887#true} is VALID [2020-07-18 05:17:30,122 INFO L280 TraceCheckUtils]: 1: Hoare triple {12887#true} #valid := #valid[0 := 0]; {12887#true} is VALID [2020-07-18 05:17:30,122 INFO L280 TraceCheckUtils]: 2: Hoare triple {12887#true} assume 0 < #StackHeapBarrier; {12887#true} is VALID [2020-07-18 05:17:30,123 INFO L280 TraceCheckUtils]: 3: Hoare triple {12887#true} assume true; {12887#true} is VALID [2020-07-18 05:17:30,123 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {12887#true} {12887#true} #259#return; {12887#true} is VALID [2020-07-18 05:17:30,125 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:30,184 INFO L280 TraceCheckUtils]: 0: Hoare triple {12887#true} ~from := #in~from; {12968#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:17:30,185 INFO L280 TraceCheckUtils]: 1: Hoare triple {12968#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~until := #in~until; {12968#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:17:30,186 INFO L280 TraceCheckUtils]: 2: Hoare triple {12968#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~len~1 := ~from; {12969#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:30,187 INFO L280 TraceCheckUtils]: 3: Hoare triple {12969#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #t~short12 := ~len~1 < ~until; {12969#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:30,187 INFO L280 TraceCheckUtils]: 4: Hoare triple {12969#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume #t~short12; {12969#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:30,188 INFO L280 TraceCheckUtils]: 5: Hoare triple {12969#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {12969#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:30,189 INFO L280 TraceCheckUtils]: 6: Hoare triple {12969#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #t~short12 := 0 != #t~nondet11; {12969#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:30,189 INFO L280 TraceCheckUtils]: 7: Hoare triple {12969#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume !#t~short12; {12969#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:30,190 INFO L280 TraceCheckUtils]: 8: Hoare triple {12969#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} havoc #t~nondet11; {12969#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:30,190 INFO L280 TraceCheckUtils]: 9: Hoare triple {12969#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} havoc #t~short12; {12969#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:30,191 INFO L280 TraceCheckUtils]: 10: Hoare triple {12969#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #res := ~len~1; {12970#(or (<= 2 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:30,192 INFO L280 TraceCheckUtils]: 11: Hoare triple {12970#(or (<= 2 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} assume true; {12970#(or (<= 2 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:30,193 INFO L275 TraceCheckUtils]: 12: Hoare quadruple {12970#(or (<= 2 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} {12887#true} #243#return; {12907#(<= 2 |main_#t~ret14|)} is VALID [2020-07-18 05:17:30,220 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:30,230 INFO L280 TraceCheckUtils]: 0: Hoare triple {12971#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~len := #in~len; {12887#true} is VALID [2020-07-18 05:17:30,231 INFO L280 TraceCheckUtils]: 1: Hoare triple {12887#true} ~head~0.base, ~head~0.offset := 0, 0; {12887#true} is VALID [2020-07-18 05:17:30,231 INFO L280 TraceCheckUtils]: 2: Hoare triple {12887#true} #t~post2 := ~len; {12887#true} is VALID [2020-07-18 05:17:30,231 INFO L280 TraceCheckUtils]: 3: Hoare triple {12887#true} ~len := #t~post2 - 1; {12887#true} is VALID [2020-07-18 05:17:30,231 INFO L280 TraceCheckUtils]: 4: Hoare triple {12887#true} assume !!(#t~post2 > 0); {12887#true} is VALID [2020-07-18 05:17:30,232 INFO L280 TraceCheckUtils]: 5: Hoare triple {12887#true} havoc #t~post2; {12887#true} is VALID [2020-07-18 05:17:30,232 INFO L280 TraceCheckUtils]: 6: Hoare triple {12887#true} SUMMARY for call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(4); srcloc: L566 {12887#true} is VALID [2020-07-18 05:17:30,232 INFO L280 TraceCheckUtils]: 7: Hoare triple {12887#true} ~new_head~0.base, ~new_head~0.offset := #t~malloc3.base, #t~malloc3.offset; {12887#true} is VALID [2020-07-18 05:17:30,232 INFO L280 TraceCheckUtils]: 8: Hoare triple {12887#true} assume !(0 == ~new_head~0.base && 0 == ~new_head~0.offset); {12887#true} is VALID [2020-07-18 05:17:30,232 INFO L280 TraceCheckUtils]: 9: Hoare triple {12887#true} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4); srcloc: L567-1 {12887#true} is VALID [2020-07-18 05:17:30,233 INFO L280 TraceCheckUtils]: 10: Hoare triple {12887#true} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset; {12887#true} is VALID [2020-07-18 05:17:30,233 INFO L280 TraceCheckUtils]: 11: Hoare triple {12887#true} #t~post2 := ~len; {12887#true} is VALID [2020-07-18 05:17:30,233 INFO L280 TraceCheckUtils]: 12: Hoare triple {12887#true} ~len := #t~post2 - 1; {12887#true} is VALID [2020-07-18 05:17:30,233 INFO L280 TraceCheckUtils]: 13: Hoare triple {12887#true} assume !!(#t~post2 > 0); {12887#true} is VALID [2020-07-18 05:17:30,233 INFO L280 TraceCheckUtils]: 14: Hoare triple {12887#true} havoc #t~post2; {12887#true} is VALID [2020-07-18 05:17:30,234 INFO L280 TraceCheckUtils]: 15: Hoare triple {12887#true} SUMMARY for call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(4); srcloc: L566 {12887#true} is VALID [2020-07-18 05:17:30,234 INFO L280 TraceCheckUtils]: 16: Hoare triple {12887#true} ~new_head~0.base, ~new_head~0.offset := #t~malloc3.base, #t~malloc3.offset; {12887#true} is VALID [2020-07-18 05:17:30,234 INFO L280 TraceCheckUtils]: 17: Hoare triple {12887#true} assume !(0 == ~new_head~0.base && 0 == ~new_head~0.offset); {12887#true} is VALID [2020-07-18 05:17:30,234 INFO L280 TraceCheckUtils]: 18: Hoare triple {12887#true} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4); srcloc: L567-1 {12887#true} is VALID [2020-07-18 05:17:30,235 INFO L280 TraceCheckUtils]: 19: Hoare triple {12887#true} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset; {12887#true} is VALID [2020-07-18 05:17:30,235 INFO L280 TraceCheckUtils]: 20: Hoare triple {12887#true} #t~post2 := ~len; {12887#true} is VALID [2020-07-18 05:17:30,235 INFO L280 TraceCheckUtils]: 21: Hoare triple {12887#true} ~len := #t~post2 - 1; {12887#true} is VALID [2020-07-18 05:17:30,235 INFO L280 TraceCheckUtils]: 22: Hoare triple {12887#true} assume !(#t~post2 > 0); {12887#true} is VALID [2020-07-18 05:17:30,235 INFO L280 TraceCheckUtils]: 23: Hoare triple {12887#true} havoc #t~post2; {12887#true} is VALID [2020-07-18 05:17:30,236 INFO L280 TraceCheckUtils]: 24: Hoare triple {12887#true} #res.base, #res.offset := ~head~0.base, ~head~0.offset; {12887#true} is VALID [2020-07-18 05:17:30,236 INFO L280 TraceCheckUtils]: 25: Hoare triple {12887#true} assume true; {12887#true} is VALID [2020-07-18 05:17:30,237 INFO L275 TraceCheckUtils]: 26: Hoare quadruple {12887#true} {12908#(<= 2 main_~len~2)} #245#return; {12908#(<= 2 main_~len~2)} is VALID [2020-07-18 05:17:30,250 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:30,362 INFO L280 TraceCheckUtils]: 0: Hoare triple {12887#true} ~from := #in~from; {12968#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:17:30,363 INFO L280 TraceCheckUtils]: 1: Hoare triple {12968#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~until := #in~until; {12972#(and (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= |_get_nondet_int_#in~from| _get_nondet_int_~from))} is VALID [2020-07-18 05:17:30,364 INFO L280 TraceCheckUtils]: 2: Hoare triple {12972#(and (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= |_get_nondet_int_#in~from| _get_nondet_int_~from))} ~len~1 := ~from; {12973#(and (or (not (= 0 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|)) (or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1)))} is VALID [2020-07-18 05:17:30,365 INFO L280 TraceCheckUtils]: 3: Hoare triple {12973#(and (or (not (= 0 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|)) (or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1)))} #t~short12 := ~len~1 < ~until; {12974#(or (<= |_get_nondet_int_#in~until| 0) |_get_nondet_int_#t~short12| (not (= 0 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:30,366 INFO L280 TraceCheckUtils]: 4: Hoare triple {12974#(or (<= |_get_nondet_int_#in~until| 0) |_get_nondet_int_#t~short12| (not (= 0 |_get_nondet_int_#in~from|)))} assume !#t~short12; {12975#(or (<= |_get_nondet_int_#in~until| 0) (not (= 0 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:30,366 INFO L280 TraceCheckUtils]: 5: Hoare triple {12975#(or (<= |_get_nondet_int_#in~until| 0) (not (= 0 |_get_nondet_int_#in~from|)))} assume !#t~short12; {12975#(or (<= |_get_nondet_int_#in~until| 0) (not (= 0 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:30,367 INFO L280 TraceCheckUtils]: 6: Hoare triple {12975#(or (<= |_get_nondet_int_#in~until| 0) (not (= 0 |_get_nondet_int_#in~from|)))} havoc #t~nondet11; {12975#(or (<= |_get_nondet_int_#in~until| 0) (not (= 0 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:30,368 INFO L280 TraceCheckUtils]: 7: Hoare triple {12975#(or (<= |_get_nondet_int_#in~until| 0) (not (= 0 |_get_nondet_int_#in~from|)))} havoc #t~short12; {12975#(or (<= |_get_nondet_int_#in~until| 0) (not (= 0 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:30,374 INFO L280 TraceCheckUtils]: 8: Hoare triple {12975#(or (<= |_get_nondet_int_#in~until| 0) (not (= 0 |_get_nondet_int_#in~from|)))} #res := ~len~1; {12975#(or (<= |_get_nondet_int_#in~until| 0) (not (= 0 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:30,374 INFO L280 TraceCheckUtils]: 9: Hoare triple {12975#(or (<= |_get_nondet_int_#in~until| 0) (not (= 0 |_get_nondet_int_#in~from|)))} assume true; {12975#(or (<= |_get_nondet_int_#in~until| 0) (not (= 0 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:30,375 INFO L275 TraceCheckUtils]: 10: Hoare quadruple {12975#(or (<= |_get_nondet_int_#in~until| 0) (not (= 0 |_get_nondet_int_#in~from|)))} {12908#(<= 2 main_~len~2)} #247#return; {12888#false} is VALID [2020-07-18 05:17:30,377 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:30,382 INFO L280 TraceCheckUtils]: 0: Hoare triple {12887#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {12887#true} is VALID [2020-07-18 05:17:30,383 INFO L280 TraceCheckUtils]: 1: Hoare triple {12887#true} ~len~0 := 0; {12887#true} is VALID [2020-07-18 05:17:30,383 INFO L280 TraceCheckUtils]: 2: Hoare triple {12887#true} assume !!(~head.base != 0 || ~head.offset != 0); {12887#true} is VALID [2020-07-18 05:17:30,383 INFO L280 TraceCheckUtils]: 3: Hoare triple {12887#true} #t~post4 := ~len~0; {12887#true} is VALID [2020-07-18 05:17:30,383 INFO L280 TraceCheckUtils]: 4: Hoare triple {12887#true} ~len~0 := 1 + #t~post4; {12887#true} is VALID [2020-07-18 05:17:30,383 INFO L280 TraceCheckUtils]: 5: Hoare triple {12887#true} havoc #t~post4; {12887#true} is VALID [2020-07-18 05:17:30,383 INFO L280 TraceCheckUtils]: 6: Hoare triple {12887#true} SUMMARY for call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~head.base, ~head.offset, 4); srcloc: L579 {12887#true} is VALID [2020-07-18 05:17:30,384 INFO L280 TraceCheckUtils]: 7: Hoare triple {12887#true} ~head.base, ~head.offset := #t~mem5.base, #t~mem5.offset; {12887#true} is VALID [2020-07-18 05:17:30,384 INFO L280 TraceCheckUtils]: 8: Hoare triple {12887#true} havoc #t~mem5.base, #t~mem5.offset; {12887#true} is VALID [2020-07-18 05:17:30,384 INFO L280 TraceCheckUtils]: 9: Hoare triple {12887#true} assume !!(~head.base != 0 || ~head.offset != 0); {12887#true} is VALID [2020-07-18 05:17:30,384 INFO L280 TraceCheckUtils]: 10: Hoare triple {12887#true} #t~post4 := ~len~0; {12887#true} is VALID [2020-07-18 05:17:30,384 INFO L280 TraceCheckUtils]: 11: Hoare triple {12887#true} ~len~0 := 1 + #t~post4; {12887#true} is VALID [2020-07-18 05:17:30,384 INFO L280 TraceCheckUtils]: 12: Hoare triple {12887#true} havoc #t~post4; {12887#true} is VALID [2020-07-18 05:17:30,384 INFO L280 TraceCheckUtils]: 13: Hoare triple {12887#true} SUMMARY for call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~head.base, ~head.offset, 4); srcloc: L579 {12887#true} is VALID [2020-07-18 05:17:30,385 INFO L280 TraceCheckUtils]: 14: Hoare triple {12887#true} ~head.base, ~head.offset := #t~mem5.base, #t~mem5.offset; {12887#true} is VALID [2020-07-18 05:17:30,385 INFO L280 TraceCheckUtils]: 15: Hoare triple {12887#true} havoc #t~mem5.base, #t~mem5.offset; {12887#true} is VALID [2020-07-18 05:17:30,385 INFO L280 TraceCheckUtils]: 16: Hoare triple {12887#true} assume !(~head.base != 0 || ~head.offset != 0); {12887#true} is VALID [2020-07-18 05:17:30,385 INFO L280 TraceCheckUtils]: 17: Hoare triple {12887#true} #res := ~len~0; {12887#true} is VALID [2020-07-18 05:17:30,385 INFO L280 TraceCheckUtils]: 18: Hoare triple {12887#true} assume true; {12887#true} is VALID [2020-07-18 05:17:30,385 INFO L275 TraceCheckUtils]: 19: Hoare quadruple {12887#true} {12888#false} #253#return; {12888#false} is VALID [2020-07-18 05:17:30,388 INFO L263 TraceCheckUtils]: 0: Hoare triple {12887#true} call ULTIMATE.init(); {12967#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 05:17:30,389 INFO L280 TraceCheckUtils]: 1: Hoare triple {12967#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {12887#true} is VALID [2020-07-18 05:17:30,389 INFO L280 TraceCheckUtils]: 2: Hoare triple {12887#true} #valid := #valid[0 := 0]; {12887#true} is VALID [2020-07-18 05:17:30,389 INFO L280 TraceCheckUtils]: 3: Hoare triple {12887#true} assume 0 < #StackHeapBarrier; {12887#true} is VALID [2020-07-18 05:17:30,389 INFO L280 TraceCheckUtils]: 4: Hoare triple {12887#true} assume true; {12887#true} is VALID [2020-07-18 05:17:30,390 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {12887#true} {12887#true} #259#return; {12887#true} is VALID [2020-07-18 05:17:30,390 INFO L263 TraceCheckUtils]: 6: Hoare triple {12887#true} call #t~ret24 := main(); {12887#true} is VALID [2020-07-18 05:17:30,390 INFO L263 TraceCheckUtils]: 7: Hoare triple {12887#true} call #t~ret14 := _get_nondet_int(2, 5); {12887#true} is VALID [2020-07-18 05:17:30,391 INFO L280 TraceCheckUtils]: 8: Hoare triple {12887#true} ~from := #in~from; {12968#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:17:30,391 INFO L280 TraceCheckUtils]: 9: Hoare triple {12968#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~until := #in~until; {12968#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:17:30,392 INFO L280 TraceCheckUtils]: 10: Hoare triple {12968#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~len~1 := ~from; {12969#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:30,393 INFO L280 TraceCheckUtils]: 11: Hoare triple {12969#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #t~short12 := ~len~1 < ~until; {12969#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:30,393 INFO L280 TraceCheckUtils]: 12: Hoare triple {12969#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume #t~short12; {12969#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:30,394 INFO L280 TraceCheckUtils]: 13: Hoare triple {12969#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {12969#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:30,394 INFO L280 TraceCheckUtils]: 14: Hoare triple {12969#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #t~short12 := 0 != #t~nondet11; {12969#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:30,395 INFO L280 TraceCheckUtils]: 15: Hoare triple {12969#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume !#t~short12; {12969#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:30,395 INFO L280 TraceCheckUtils]: 16: Hoare triple {12969#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} havoc #t~nondet11; {12969#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:30,396 INFO L280 TraceCheckUtils]: 17: Hoare triple {12969#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} havoc #t~short12; {12969#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:30,397 INFO L280 TraceCheckUtils]: 18: Hoare triple {12969#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #res := ~len~1; {12970#(or (<= 2 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:30,397 INFO L280 TraceCheckUtils]: 19: Hoare triple {12970#(or (<= 2 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} assume true; {12970#(or (<= 2 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:30,398 INFO L275 TraceCheckUtils]: 20: Hoare quadruple {12970#(or (<= 2 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} {12887#true} #243#return; {12907#(<= 2 |main_#t~ret14|)} is VALID [2020-07-18 05:17:30,399 INFO L280 TraceCheckUtils]: 21: Hoare triple {12907#(<= 2 |main_#t~ret14|)} assume -2147483648 <= #t~ret14 && #t~ret14 <= 2147483647; {12907#(<= 2 |main_#t~ret14|)} is VALID [2020-07-18 05:17:30,399 INFO L280 TraceCheckUtils]: 22: Hoare triple {12907#(<= 2 |main_#t~ret14|)} ~len~2 := #t~ret14; {12908#(<= 2 main_~len~2)} is VALID [2020-07-18 05:17:30,400 INFO L280 TraceCheckUtils]: 23: Hoare triple {12908#(<= 2 main_~len~2)} havoc #t~ret14; {12908#(<= 2 main_~len~2)} is VALID [2020-07-18 05:17:30,400 INFO L280 TraceCheckUtils]: 24: Hoare triple {12908#(<= 2 main_~len~2)} SUMMARY for call ~#s~0.base, ~#s~0.offset := #Ultimate.allocOnStack(4); srcloc: L617 {12908#(<= 2 main_~len~2)} is VALID [2020-07-18 05:17:30,401 INFO L263 TraceCheckUtils]: 25: Hoare triple {12908#(<= 2 main_~len~2)} call #t~ret15.base, #t~ret15.offset := sll_create(~len~2); {12971#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-18 05:17:30,402 INFO L280 TraceCheckUtils]: 26: Hoare triple {12971#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~len := #in~len; {12887#true} is VALID [2020-07-18 05:17:30,402 INFO L280 TraceCheckUtils]: 27: Hoare triple {12887#true} ~head~0.base, ~head~0.offset := 0, 0; {12887#true} is VALID [2020-07-18 05:17:30,402 INFO L280 TraceCheckUtils]: 28: Hoare triple {12887#true} #t~post2 := ~len; {12887#true} is VALID [2020-07-18 05:17:30,402 INFO L280 TraceCheckUtils]: 29: Hoare triple {12887#true} ~len := #t~post2 - 1; {12887#true} is VALID [2020-07-18 05:17:30,402 INFO L280 TraceCheckUtils]: 30: Hoare triple {12887#true} assume !!(#t~post2 > 0); {12887#true} is VALID [2020-07-18 05:17:30,403 INFO L280 TraceCheckUtils]: 31: Hoare triple {12887#true} havoc #t~post2; {12887#true} is VALID [2020-07-18 05:17:30,403 INFO L280 TraceCheckUtils]: 32: Hoare triple {12887#true} SUMMARY for call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(4); srcloc: L566 {12887#true} is VALID [2020-07-18 05:17:30,403 INFO L280 TraceCheckUtils]: 33: Hoare triple {12887#true} ~new_head~0.base, ~new_head~0.offset := #t~malloc3.base, #t~malloc3.offset; {12887#true} is VALID [2020-07-18 05:17:30,403 INFO L280 TraceCheckUtils]: 34: Hoare triple {12887#true} assume !(0 == ~new_head~0.base && 0 == ~new_head~0.offset); {12887#true} is VALID [2020-07-18 05:17:30,403 INFO L280 TraceCheckUtils]: 35: Hoare triple {12887#true} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4); srcloc: L567-1 {12887#true} is VALID [2020-07-18 05:17:30,403 INFO L280 TraceCheckUtils]: 36: Hoare triple {12887#true} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset; {12887#true} is VALID [2020-07-18 05:17:30,404 INFO L280 TraceCheckUtils]: 37: Hoare triple {12887#true} #t~post2 := ~len; {12887#true} is VALID [2020-07-18 05:17:30,404 INFO L280 TraceCheckUtils]: 38: Hoare triple {12887#true} ~len := #t~post2 - 1; {12887#true} is VALID [2020-07-18 05:17:30,404 INFO L280 TraceCheckUtils]: 39: Hoare triple {12887#true} assume !!(#t~post2 > 0); {12887#true} is VALID [2020-07-18 05:17:30,404 INFO L280 TraceCheckUtils]: 40: Hoare triple {12887#true} havoc #t~post2; {12887#true} is VALID [2020-07-18 05:17:30,404 INFO L280 TraceCheckUtils]: 41: Hoare triple {12887#true} SUMMARY for call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(4); srcloc: L566 {12887#true} is VALID [2020-07-18 05:17:30,405 INFO L280 TraceCheckUtils]: 42: Hoare triple {12887#true} ~new_head~0.base, ~new_head~0.offset := #t~malloc3.base, #t~malloc3.offset; {12887#true} is VALID [2020-07-18 05:17:30,405 INFO L280 TraceCheckUtils]: 43: Hoare triple {12887#true} assume !(0 == ~new_head~0.base && 0 == ~new_head~0.offset); {12887#true} is VALID [2020-07-18 05:17:30,405 INFO L280 TraceCheckUtils]: 44: Hoare triple {12887#true} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4); srcloc: L567-1 {12887#true} is VALID [2020-07-18 05:17:30,405 INFO L280 TraceCheckUtils]: 45: Hoare triple {12887#true} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset; {12887#true} is VALID [2020-07-18 05:17:30,405 INFO L280 TraceCheckUtils]: 46: Hoare triple {12887#true} #t~post2 := ~len; {12887#true} is VALID [2020-07-18 05:17:30,405 INFO L280 TraceCheckUtils]: 47: Hoare triple {12887#true} ~len := #t~post2 - 1; {12887#true} is VALID [2020-07-18 05:17:30,406 INFO L280 TraceCheckUtils]: 48: Hoare triple {12887#true} assume !(#t~post2 > 0); {12887#true} is VALID [2020-07-18 05:17:30,406 INFO L280 TraceCheckUtils]: 49: Hoare triple {12887#true} havoc #t~post2; {12887#true} is VALID [2020-07-18 05:17:30,406 INFO L280 TraceCheckUtils]: 50: Hoare triple {12887#true} #res.base, #res.offset := ~head~0.base, ~head~0.offset; {12887#true} is VALID [2020-07-18 05:17:30,406 INFO L280 TraceCheckUtils]: 51: Hoare triple {12887#true} assume true; {12887#true} is VALID [2020-07-18 05:17:30,407 INFO L275 TraceCheckUtils]: 52: Hoare quadruple {12887#true} {12908#(<= 2 main_~len~2)} #245#return; {12908#(<= 2 main_~len~2)} is VALID [2020-07-18 05:17:30,408 INFO L280 TraceCheckUtils]: 53: Hoare triple {12908#(<= 2 main_~len~2)} SUMMARY for call write~init~$Pointer$(#t~ret15.base, #t~ret15.offset, ~#s~0.base, ~#s~0.offset, 4); srcloc: L617-2 {12908#(<= 2 main_~len~2)} is VALID [2020-07-18 05:17:30,408 INFO L280 TraceCheckUtils]: 54: Hoare triple {12908#(<= 2 main_~len~2)} havoc #t~ret15.base, #t~ret15.offset; {12908#(<= 2 main_~len~2)} is VALID [2020-07-18 05:17:30,408 INFO L263 TraceCheckUtils]: 55: Hoare triple {12908#(<= 2 main_~len~2)} call #t~ret16 := _get_nondet_int(0, ~len~2 - 1); {12887#true} is VALID [2020-07-18 05:17:30,409 INFO L280 TraceCheckUtils]: 56: Hoare triple {12887#true} ~from := #in~from; {12968#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:17:30,410 INFO L280 TraceCheckUtils]: 57: Hoare triple {12968#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~until := #in~until; {12972#(and (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= |_get_nondet_int_#in~from| _get_nondet_int_~from))} is VALID [2020-07-18 05:17:30,410 INFO L280 TraceCheckUtils]: 58: Hoare triple {12972#(and (= _get_nondet_int_~until |_get_nondet_int_#in~until|) (= |_get_nondet_int_#in~from| _get_nondet_int_~from))} ~len~1 := ~from; {12973#(and (or (not (= 0 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|)) (or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1)))} is VALID [2020-07-18 05:17:30,411 INFO L280 TraceCheckUtils]: 59: Hoare triple {12973#(and (or (not (= 0 _get_nondet_int_~len~1)) (= _get_nondet_int_~until |_get_nondet_int_#in~until|)) (or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1)))} #t~short12 := ~len~1 < ~until; {12974#(or (<= |_get_nondet_int_#in~until| 0) |_get_nondet_int_#t~short12| (not (= 0 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:30,412 INFO L280 TraceCheckUtils]: 60: Hoare triple {12974#(or (<= |_get_nondet_int_#in~until| 0) |_get_nondet_int_#t~short12| (not (= 0 |_get_nondet_int_#in~from|)))} assume !#t~short12; {12975#(or (<= |_get_nondet_int_#in~until| 0) (not (= 0 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:30,412 INFO L280 TraceCheckUtils]: 61: Hoare triple {12975#(or (<= |_get_nondet_int_#in~until| 0) (not (= 0 |_get_nondet_int_#in~from|)))} assume !#t~short12; {12975#(or (<= |_get_nondet_int_#in~until| 0) (not (= 0 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:30,413 INFO L280 TraceCheckUtils]: 62: Hoare triple {12975#(or (<= |_get_nondet_int_#in~until| 0) (not (= 0 |_get_nondet_int_#in~from|)))} havoc #t~nondet11; {12975#(or (<= |_get_nondet_int_#in~until| 0) (not (= 0 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:30,413 INFO L280 TraceCheckUtils]: 63: Hoare triple {12975#(or (<= |_get_nondet_int_#in~until| 0) (not (= 0 |_get_nondet_int_#in~from|)))} havoc #t~short12; {12975#(or (<= |_get_nondet_int_#in~until| 0) (not (= 0 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:30,414 INFO L280 TraceCheckUtils]: 64: Hoare triple {12975#(or (<= |_get_nondet_int_#in~until| 0) (not (= 0 |_get_nondet_int_#in~from|)))} #res := ~len~1; {12975#(or (<= |_get_nondet_int_#in~until| 0) (not (= 0 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:30,415 INFO L280 TraceCheckUtils]: 65: Hoare triple {12975#(or (<= |_get_nondet_int_#in~until| 0) (not (= 0 |_get_nondet_int_#in~from|)))} assume true; {12975#(or (<= |_get_nondet_int_#in~until| 0) (not (= 0 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:30,416 INFO L275 TraceCheckUtils]: 66: Hoare quadruple {12975#(or (<= |_get_nondet_int_#in~until| 0) (not (= 0 |_get_nondet_int_#in~from|)))} {12908#(<= 2 main_~len~2)} #247#return; {12888#false} is VALID [2020-07-18 05:17:30,416 INFO L280 TraceCheckUtils]: 67: Hoare triple {12888#false} assume -2147483648 <= #t~ret16 && #t~ret16 <= 2147483647; {12888#false} is VALID [2020-07-18 05:17:30,416 INFO L280 TraceCheckUtils]: 68: Hoare triple {12888#false} ~k~0 := #t~ret16; {12888#false} is VALID [2020-07-18 05:17:30,416 INFO L280 TraceCheckUtils]: 69: Hoare triple {12888#false} havoc #t~ret16; {12888#false} is VALID [2020-07-18 05:17:30,416 INFO L280 TraceCheckUtils]: 70: Hoare triple {12888#false} ~i~0 := 0; {12888#false} is VALID [2020-07-18 05:17:30,417 INFO L280 TraceCheckUtils]: 71: Hoare triple {12888#false} #t~short18 := ~i~0 < ~k~0; {12888#false} is VALID [2020-07-18 05:17:30,417 INFO L280 TraceCheckUtils]: 72: Hoare triple {12888#false} assume !#t~short18; {12888#false} is VALID [2020-07-18 05:17:30,417 INFO L280 TraceCheckUtils]: 73: Hoare triple {12888#false} assume !#t~short18; {12888#false} is VALID [2020-07-18 05:17:30,417 INFO L280 TraceCheckUtils]: 74: Hoare triple {12888#false} havoc #t~nondet17; {12888#false} is VALID [2020-07-18 05:17:30,417 INFO L280 TraceCheckUtils]: 75: Hoare triple {12888#false} havoc #t~short18; {12888#false} is VALID [2020-07-18 05:17:30,418 INFO L280 TraceCheckUtils]: 76: Hoare triple {12888#false} SUMMARY for call #t~mem21.base, #t~mem21.offset := read~$Pointer$(~#s~0.base, ~#s~0.offset, 4); srcloc: L620-12 {12888#false} is VALID [2020-07-18 05:17:30,418 INFO L263 TraceCheckUtils]: 77: Hoare triple {12888#false} call #t~ret22 := sll_length(#t~mem21.base, #t~mem21.offset); {12887#true} is VALID [2020-07-18 05:17:30,418 INFO L280 TraceCheckUtils]: 78: Hoare triple {12887#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {12887#true} is VALID [2020-07-18 05:17:30,418 INFO L280 TraceCheckUtils]: 79: Hoare triple {12887#true} ~len~0 := 0; {12887#true} is VALID [2020-07-18 05:17:30,418 INFO L280 TraceCheckUtils]: 80: Hoare triple {12887#true} assume !!(~head.base != 0 || ~head.offset != 0); {12887#true} is VALID [2020-07-18 05:17:30,418 INFO L280 TraceCheckUtils]: 81: Hoare triple {12887#true} #t~post4 := ~len~0; {12887#true} is VALID [2020-07-18 05:17:30,419 INFO L280 TraceCheckUtils]: 82: Hoare triple {12887#true} ~len~0 := 1 + #t~post4; {12887#true} is VALID [2020-07-18 05:17:30,419 INFO L280 TraceCheckUtils]: 83: Hoare triple {12887#true} havoc #t~post4; {12887#true} is VALID [2020-07-18 05:17:30,419 INFO L280 TraceCheckUtils]: 84: Hoare triple {12887#true} SUMMARY for call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~head.base, ~head.offset, 4); srcloc: L579 {12887#true} is VALID [2020-07-18 05:17:30,419 INFO L280 TraceCheckUtils]: 85: Hoare triple {12887#true} ~head.base, ~head.offset := #t~mem5.base, #t~mem5.offset; {12887#true} is VALID [2020-07-18 05:17:30,419 INFO L280 TraceCheckUtils]: 86: Hoare triple {12887#true} havoc #t~mem5.base, #t~mem5.offset; {12887#true} is VALID [2020-07-18 05:17:30,420 INFO L280 TraceCheckUtils]: 87: Hoare triple {12887#true} assume !!(~head.base != 0 || ~head.offset != 0); {12887#true} is VALID [2020-07-18 05:17:30,420 INFO L280 TraceCheckUtils]: 88: Hoare triple {12887#true} #t~post4 := ~len~0; {12887#true} is VALID [2020-07-18 05:17:30,420 INFO L280 TraceCheckUtils]: 89: Hoare triple {12887#true} ~len~0 := 1 + #t~post4; {12887#true} is VALID [2020-07-18 05:17:30,420 INFO L280 TraceCheckUtils]: 90: Hoare triple {12887#true} havoc #t~post4; {12887#true} is VALID [2020-07-18 05:17:30,420 INFO L280 TraceCheckUtils]: 91: Hoare triple {12887#true} SUMMARY for call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~head.base, ~head.offset, 4); srcloc: L579 {12887#true} is VALID [2020-07-18 05:17:30,420 INFO L280 TraceCheckUtils]: 92: Hoare triple {12887#true} ~head.base, ~head.offset := #t~mem5.base, #t~mem5.offset; {12887#true} is VALID [2020-07-18 05:17:30,421 INFO L280 TraceCheckUtils]: 93: Hoare triple {12887#true} havoc #t~mem5.base, #t~mem5.offset; {12887#true} is VALID [2020-07-18 05:17:30,421 INFO L280 TraceCheckUtils]: 94: Hoare triple {12887#true} assume !(~head.base != 0 || ~head.offset != 0); {12887#true} is VALID [2020-07-18 05:17:30,421 INFO L280 TraceCheckUtils]: 95: Hoare triple {12887#true} #res := ~len~0; {12887#true} is VALID [2020-07-18 05:17:30,421 INFO L280 TraceCheckUtils]: 96: Hoare triple {12887#true} assume true; {12887#true} is VALID [2020-07-18 05:17:30,421 INFO L275 TraceCheckUtils]: 97: Hoare quadruple {12887#true} {12888#false} #253#return; {12888#false} is VALID [2020-07-18 05:17:30,421 INFO L280 TraceCheckUtils]: 98: Hoare triple {12888#false} assume -2147483648 <= #t~ret22 && #t~ret22 <= 2147483647; {12888#false} is VALID [2020-07-18 05:17:30,422 INFO L280 TraceCheckUtils]: 99: Hoare triple {12888#false} assume ~k~0 + ~len~2 != #t~ret22; {12888#false} is VALID [2020-07-18 05:17:30,422 INFO L280 TraceCheckUtils]: 100: Hoare triple {12888#false} havoc #t~ret22; {12888#false} is VALID [2020-07-18 05:17:30,422 INFO L280 TraceCheckUtils]: 101: Hoare triple {12888#false} havoc #t~mem21.base, #t~mem21.offset; {12888#false} is VALID [2020-07-18 05:17:30,422 INFO L280 TraceCheckUtils]: 102: Hoare triple {12888#false} assume !false; {12888#false} is VALID [2020-07-18 05:17:30,432 INFO L134 CoverageAnalysis]: Checked inductivity of 35 backedges. 1 proven. 8 refuted. 0 times theorem prover too weak. 26 trivial. 0 not checked. [2020-07-18 05:17:30,432 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1363616496] [2020-07-18 05:17:30,433 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2020-07-18 05:17:30,433 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13] total 13 [2020-07-18 05:17:30,433 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [871834624] [2020-07-18 05:17:30,433 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 103 [2020-07-18 05:17:30,434 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 05:17:30,434 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states. [2020-07-18 05:17:30,534 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 84 edges. 84 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:17:30,534 INFO L459 AbstractCegarLoop]: Interpolant automaton has 13 states [2020-07-18 05:17:30,534 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 05:17:30,535 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2020-07-18 05:17:30,535 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=25, Invalid=131, Unknown=0, NotChecked=0, Total=156 [2020-07-18 05:17:30,535 INFO L87 Difference]: Start difference. First operand 176 states and 192 transitions. Second operand 13 states. [2020-07-18 05:17:34,770 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:17:34,770 INFO L93 Difference]: Finished difference Result 369 states and 420 transitions. [2020-07-18 05:17:34,771 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2020-07-18 05:17:34,771 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 103 [2020-07-18 05:17:34,771 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 05:17:34,771 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2020-07-18 05:17:34,775 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 345 transitions. [2020-07-18 05:17:34,775 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2020-07-18 05:17:34,778 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 345 transitions. [2020-07-18 05:17:34,779 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 21 states and 345 transitions. [2020-07-18 05:17:35,300 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 345 edges. 345 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:17:35,305 INFO L225 Difference]: With dead ends: 369 [2020-07-18 05:17:35,305 INFO L226 Difference]: Without dead ends: 266 [2020-07-18 05:17:35,307 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 39 GetRequests, 11 SyntacticMatches, 0 SemanticMatches, 28 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 114 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=211, Invalid=659, Unknown=0, NotChecked=0, Total=870 [2020-07-18 05:17:35,307 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 266 states. [2020-07-18 05:17:36,054 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 266 to 206. [2020-07-18 05:17:36,054 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 05:17:36,055 INFO L82 GeneralOperation]: Start isEquivalent. First operand 266 states. Second operand 206 states. [2020-07-18 05:17:36,055 INFO L74 IsIncluded]: Start isIncluded. First operand 266 states. Second operand 206 states. [2020-07-18 05:17:36,055 INFO L87 Difference]: Start difference. First operand 266 states. Second operand 206 states. [2020-07-18 05:17:36,063 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:17:36,063 INFO L93 Difference]: Finished difference Result 266 states and 304 transitions. [2020-07-18 05:17:36,063 INFO L276 IsEmpty]: Start isEmpty. Operand 266 states and 304 transitions. [2020-07-18 05:17:36,065 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 05:17:36,065 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 05:17:36,065 INFO L74 IsIncluded]: Start isIncluded. First operand 206 states. Second operand 266 states. [2020-07-18 05:17:36,065 INFO L87 Difference]: Start difference. First operand 206 states. Second operand 266 states. [2020-07-18 05:17:36,073 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:17:36,073 INFO L93 Difference]: Finished difference Result 266 states and 304 transitions. [2020-07-18 05:17:36,073 INFO L276 IsEmpty]: Start isEmpty. Operand 266 states and 304 transitions. [2020-07-18 05:17:36,075 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 05:17:36,075 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 05:17:36,075 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 05:17:36,075 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 05:17:36,075 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 206 states. [2020-07-18 05:17:36,080 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 206 states to 206 states and 228 transitions. [2020-07-18 05:17:36,080 INFO L78 Accepts]: Start accepts. Automaton has 206 states and 228 transitions. Word has length 103 [2020-07-18 05:17:36,081 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 05:17:36,081 INFO L479 AbstractCegarLoop]: Abstraction has 206 states and 228 transitions. [2020-07-18 05:17:36,081 INFO L480 AbstractCegarLoop]: Interpolant automaton has 13 states. [2020-07-18 05:17:36,081 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 206 states and 228 transitions. [2020-07-18 05:17:36,590 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 228 edges. 228 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:17:36,590 INFO L276 IsEmpty]: Start isEmpty. Operand 206 states and 228 transitions. [2020-07-18 05:17:36,593 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 106 [2020-07-18 05:17:36,593 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 05:17:36,594 INFO L422 BasicCegarLoop]: trace histogram [3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 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] [2020-07-18 05:17:36,594 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable9 [2020-07-18 05:17:36,594 INFO L427 AbstractCegarLoop]: === Iteration 11 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 05:17:36,594 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 05:17:36,594 INFO L82 PathProgramCache]: Analyzing trace with hash 2144765375, now seen corresponding path program 1 times [2020-07-18 05:17:36,595 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 05:17:36,595 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [2083461865] [2020-07-18 05:17:36,595 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 05:17:36,611 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:36,759 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:36,766 INFO L280 TraceCheckUtils]: 0: Hoare triple {14781#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {14696#true} is VALID [2020-07-18 05:17:36,767 INFO L280 TraceCheckUtils]: 1: Hoare triple {14696#true} #valid := #valid[0 := 0]; {14696#true} is VALID [2020-07-18 05:17:36,767 INFO L280 TraceCheckUtils]: 2: Hoare triple {14696#true} assume 0 < #StackHeapBarrier; {14696#true} is VALID [2020-07-18 05:17:36,767 INFO L280 TraceCheckUtils]: 3: Hoare triple {14696#true} assume true; {14696#true} is VALID [2020-07-18 05:17:36,767 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {14696#true} {14696#true} #259#return; {14696#true} is VALID [2020-07-18 05:17:36,770 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:36,846 INFO L280 TraceCheckUtils]: 0: Hoare triple {14696#true} ~from := #in~from; {14782#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:17:36,847 INFO L280 TraceCheckUtils]: 1: Hoare triple {14782#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~until := #in~until; {14782#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:17:36,847 INFO L280 TraceCheckUtils]: 2: Hoare triple {14782#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~len~1 := ~from; {14783#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:36,848 INFO L280 TraceCheckUtils]: 3: Hoare triple {14783#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #t~short12 := ~len~1 < ~until; {14783#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:36,849 INFO L280 TraceCheckUtils]: 4: Hoare triple {14783#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume #t~short12; {14783#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:36,849 INFO L280 TraceCheckUtils]: 5: Hoare triple {14783#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {14783#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:36,850 INFO L280 TraceCheckUtils]: 6: Hoare triple {14783#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #t~short12 := 0 != #t~nondet11; {14783#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:36,850 INFO L280 TraceCheckUtils]: 7: Hoare triple {14783#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume !#t~short12; {14783#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:36,851 INFO L280 TraceCheckUtils]: 8: Hoare triple {14783#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} havoc #t~nondet11; {14783#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:36,851 INFO L280 TraceCheckUtils]: 9: Hoare triple {14783#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} havoc #t~short12; {14783#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:36,852 INFO L280 TraceCheckUtils]: 10: Hoare triple {14783#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #res := ~len~1; {14784#(or (and (<= |_get_nondet_int_#res| 2) (<= 2 |_get_nondet_int_#res|)) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:36,853 INFO L280 TraceCheckUtils]: 11: Hoare triple {14784#(or (and (<= |_get_nondet_int_#res| 2) (<= 2 |_get_nondet_int_#res|)) (not (= 2 |_get_nondet_int_#in~from|)))} assume true; {14784#(or (and (<= |_get_nondet_int_#res| 2) (<= 2 |_get_nondet_int_#res|)) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:36,854 INFO L275 TraceCheckUtils]: 12: Hoare quadruple {14784#(or (and (<= |_get_nondet_int_#res| 2) (<= 2 |_get_nondet_int_#res|)) (not (= 2 |_get_nondet_int_#in~from|)))} {14696#true} #243#return; {14716#(and (<= |main_#t~ret14| 2) (<= 2 |main_#t~ret14|))} is VALID [2020-07-18 05:17:36,880 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:36,886 INFO L280 TraceCheckUtils]: 0: Hoare triple {14785#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~len := #in~len; {14696#true} is VALID [2020-07-18 05:17:36,887 INFO L280 TraceCheckUtils]: 1: Hoare triple {14696#true} ~head~0.base, ~head~0.offset := 0, 0; {14696#true} is VALID [2020-07-18 05:17:36,887 INFO L280 TraceCheckUtils]: 2: Hoare triple {14696#true} #t~post2 := ~len; {14696#true} is VALID [2020-07-18 05:17:36,887 INFO L280 TraceCheckUtils]: 3: Hoare triple {14696#true} ~len := #t~post2 - 1; {14696#true} is VALID [2020-07-18 05:17:36,887 INFO L280 TraceCheckUtils]: 4: Hoare triple {14696#true} assume !!(#t~post2 > 0); {14696#true} is VALID [2020-07-18 05:17:36,887 INFO L280 TraceCheckUtils]: 5: Hoare triple {14696#true} havoc #t~post2; {14696#true} is VALID [2020-07-18 05:17:36,888 INFO L280 TraceCheckUtils]: 6: Hoare triple {14696#true} SUMMARY for call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(4); srcloc: L566 {14696#true} is VALID [2020-07-18 05:17:36,888 INFO L280 TraceCheckUtils]: 7: Hoare triple {14696#true} ~new_head~0.base, ~new_head~0.offset := #t~malloc3.base, #t~malloc3.offset; {14696#true} is VALID [2020-07-18 05:17:36,888 INFO L280 TraceCheckUtils]: 8: Hoare triple {14696#true} assume !(0 == ~new_head~0.base && 0 == ~new_head~0.offset); {14696#true} is VALID [2020-07-18 05:17:36,888 INFO L280 TraceCheckUtils]: 9: Hoare triple {14696#true} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4); srcloc: L567-1 {14696#true} is VALID [2020-07-18 05:17:36,888 INFO L280 TraceCheckUtils]: 10: Hoare triple {14696#true} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset; {14696#true} is VALID [2020-07-18 05:17:36,889 INFO L280 TraceCheckUtils]: 11: Hoare triple {14696#true} #t~post2 := ~len; {14696#true} is VALID [2020-07-18 05:17:36,889 INFO L280 TraceCheckUtils]: 12: Hoare triple {14696#true} ~len := #t~post2 - 1; {14696#true} is VALID [2020-07-18 05:17:36,889 INFO L280 TraceCheckUtils]: 13: Hoare triple {14696#true} assume !!(#t~post2 > 0); {14696#true} is VALID [2020-07-18 05:17:36,889 INFO L280 TraceCheckUtils]: 14: Hoare triple {14696#true} havoc #t~post2; {14696#true} is VALID [2020-07-18 05:17:36,889 INFO L280 TraceCheckUtils]: 15: Hoare triple {14696#true} SUMMARY for call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(4); srcloc: L566 {14696#true} is VALID [2020-07-18 05:17:36,889 INFO L280 TraceCheckUtils]: 16: Hoare triple {14696#true} ~new_head~0.base, ~new_head~0.offset := #t~malloc3.base, #t~malloc3.offset; {14696#true} is VALID [2020-07-18 05:17:36,890 INFO L280 TraceCheckUtils]: 17: Hoare triple {14696#true} assume !(0 == ~new_head~0.base && 0 == ~new_head~0.offset); {14696#true} is VALID [2020-07-18 05:17:36,890 INFO L280 TraceCheckUtils]: 18: Hoare triple {14696#true} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4); srcloc: L567-1 {14696#true} is VALID [2020-07-18 05:17:36,890 INFO L280 TraceCheckUtils]: 19: Hoare triple {14696#true} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset; {14696#true} is VALID [2020-07-18 05:17:36,891 INFO L280 TraceCheckUtils]: 20: Hoare triple {14696#true} #t~post2 := ~len; {14696#true} is VALID [2020-07-18 05:17:36,891 INFO L280 TraceCheckUtils]: 21: Hoare triple {14696#true} ~len := #t~post2 - 1; {14696#true} is VALID [2020-07-18 05:17:36,891 INFO L280 TraceCheckUtils]: 22: Hoare triple {14696#true} assume !(#t~post2 > 0); {14696#true} is VALID [2020-07-18 05:17:36,891 INFO L280 TraceCheckUtils]: 23: Hoare triple {14696#true} havoc #t~post2; {14696#true} is VALID [2020-07-18 05:17:36,891 INFO L280 TraceCheckUtils]: 24: Hoare triple {14696#true} #res.base, #res.offset := ~head~0.base, ~head~0.offset; {14696#true} is VALID [2020-07-18 05:17:36,891 INFO L280 TraceCheckUtils]: 25: Hoare triple {14696#true} assume true; {14696#true} is VALID [2020-07-18 05:17:36,892 INFO L275 TraceCheckUtils]: 26: Hoare quadruple {14696#true} {14717#(and (<= main_~len~2 2) (<= 2 main_~len~2))} #245#return; {14717#(and (<= main_~len~2 2) (<= 2 main_~len~2))} is VALID [2020-07-18 05:17:36,895 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:36,964 INFO L280 TraceCheckUtils]: 0: Hoare triple {14696#true} ~from := #in~from; {14782#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:17:36,965 INFO L280 TraceCheckUtils]: 1: Hoare triple {14782#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~until := #in~until; {14782#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:17:36,965 INFO L280 TraceCheckUtils]: 2: Hoare triple {14782#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~len~1 := ~from; {14786#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} is VALID [2020-07-18 05:17:36,966 INFO L280 TraceCheckUtils]: 3: Hoare triple {14786#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} #t~short12 := ~len~1 < ~until; {14786#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} is VALID [2020-07-18 05:17:36,966 INFO L280 TraceCheckUtils]: 4: Hoare triple {14786#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} assume #t~short12; {14786#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} is VALID [2020-07-18 05:17:36,967 INFO L280 TraceCheckUtils]: 5: Hoare triple {14786#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {14786#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} is VALID [2020-07-18 05:17:36,967 INFO L280 TraceCheckUtils]: 6: Hoare triple {14786#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} #t~short12 := 0 != #t~nondet11; {14786#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} is VALID [2020-07-18 05:17:36,968 INFO L280 TraceCheckUtils]: 7: Hoare triple {14786#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} assume !#t~short12; {14786#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} is VALID [2020-07-18 05:17:36,969 INFO L280 TraceCheckUtils]: 8: Hoare triple {14786#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} havoc #t~nondet11; {14786#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} is VALID [2020-07-18 05:17:36,969 INFO L280 TraceCheckUtils]: 9: Hoare triple {14786#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} havoc #t~short12; {14786#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} is VALID [2020-07-18 05:17:36,970 INFO L280 TraceCheckUtils]: 10: Hoare triple {14786#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} #res := ~len~1; {14787#(or (and (<= 0 |_get_nondet_int_#res|) (<= |_get_nondet_int_#res| 0)) (not (= 0 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:36,970 INFO L280 TraceCheckUtils]: 11: Hoare triple {14787#(or (and (<= 0 |_get_nondet_int_#res|) (<= |_get_nondet_int_#res| 0)) (not (= 0 |_get_nondet_int_#in~from|)))} assume true; {14787#(or (and (<= 0 |_get_nondet_int_#res|) (<= |_get_nondet_int_#res| 0)) (not (= 0 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:36,972 INFO L275 TraceCheckUtils]: 12: Hoare quadruple {14787#(or (and (<= 0 |_get_nondet_int_#res|) (<= |_get_nondet_int_#res| 0)) (not (= 0 |_get_nondet_int_#in~from|)))} {14717#(and (<= main_~len~2 2) (<= 2 main_~len~2))} #247#return; {14758#(and (<= main_~len~2 2) (<= 2 main_~len~2) (= |main_#t~ret16| 0))} is VALID [2020-07-18 05:17:36,975 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:37,171 INFO L280 TraceCheckUtils]: 0: Hoare triple {14696#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {14696#true} is VALID [2020-07-18 05:17:37,172 INFO L280 TraceCheckUtils]: 1: Hoare triple {14696#true} ~len~0 := 0; {14788#(and (<= 0 sll_length_~len~0) (<= sll_length_~len~0 0))} is VALID [2020-07-18 05:17:37,173 INFO L280 TraceCheckUtils]: 2: Hoare triple {14788#(and (<= 0 sll_length_~len~0) (<= sll_length_~len~0 0))} assume !!(~head.base != 0 || ~head.offset != 0); {14788#(and (<= 0 sll_length_~len~0) (<= sll_length_~len~0 0))} is VALID [2020-07-18 05:17:37,174 INFO L280 TraceCheckUtils]: 3: Hoare triple {14788#(and (<= 0 sll_length_~len~0) (<= sll_length_~len~0 0))} #t~post4 := ~len~0; {14789#(and (<= |sll_length_#t~post4| 0) (<= 0 |sll_length_#t~post4|))} is VALID [2020-07-18 05:17:37,174 INFO L280 TraceCheckUtils]: 4: Hoare triple {14789#(and (<= |sll_length_#t~post4| 0) (<= 0 |sll_length_#t~post4|))} ~len~0 := 1 + #t~post4; {14790#(and (<= 1 sll_length_~len~0) (<= sll_length_~len~0 1))} is VALID [2020-07-18 05:17:37,175 INFO L280 TraceCheckUtils]: 5: Hoare triple {14790#(and (<= 1 sll_length_~len~0) (<= sll_length_~len~0 1))} havoc #t~post4; {14790#(and (<= 1 sll_length_~len~0) (<= sll_length_~len~0 1))} is VALID [2020-07-18 05:17:37,176 INFO L280 TraceCheckUtils]: 6: Hoare triple {14790#(and (<= 1 sll_length_~len~0) (<= sll_length_~len~0 1))} SUMMARY for call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~head.base, ~head.offset, 4); srcloc: L579 {14790#(and (<= 1 sll_length_~len~0) (<= sll_length_~len~0 1))} is VALID [2020-07-18 05:17:37,177 INFO L280 TraceCheckUtils]: 7: Hoare triple {14790#(and (<= 1 sll_length_~len~0) (<= sll_length_~len~0 1))} ~head.base, ~head.offset := #t~mem5.base, #t~mem5.offset; {14790#(and (<= 1 sll_length_~len~0) (<= sll_length_~len~0 1))} is VALID [2020-07-18 05:17:37,177 INFO L280 TraceCheckUtils]: 8: Hoare triple {14790#(and (<= 1 sll_length_~len~0) (<= sll_length_~len~0 1))} havoc #t~mem5.base, #t~mem5.offset; {14790#(and (<= 1 sll_length_~len~0) (<= sll_length_~len~0 1))} is VALID [2020-07-18 05:17:37,178 INFO L280 TraceCheckUtils]: 9: Hoare triple {14790#(and (<= 1 sll_length_~len~0) (<= sll_length_~len~0 1))} assume !!(~head.base != 0 || ~head.offset != 0); {14790#(and (<= 1 sll_length_~len~0) (<= sll_length_~len~0 1))} is VALID [2020-07-18 05:17:37,179 INFO L280 TraceCheckUtils]: 10: Hoare triple {14790#(and (<= 1 sll_length_~len~0) (<= sll_length_~len~0 1))} #t~post4 := ~len~0; {14791#(and (<= 1 |sll_length_#t~post4|) (<= |sll_length_#t~post4| 1))} is VALID [2020-07-18 05:17:37,180 INFO L280 TraceCheckUtils]: 11: Hoare triple {14791#(and (<= 1 |sll_length_#t~post4|) (<= |sll_length_#t~post4| 1))} ~len~0 := 1 + #t~post4; {14792#(and (<= sll_length_~len~0 2) (<= 2 sll_length_~len~0))} is VALID [2020-07-18 05:17:37,180 INFO L280 TraceCheckUtils]: 12: Hoare triple {14792#(and (<= sll_length_~len~0 2) (<= 2 sll_length_~len~0))} havoc #t~post4; {14792#(and (<= sll_length_~len~0 2) (<= 2 sll_length_~len~0))} is VALID [2020-07-18 05:17:37,181 INFO L280 TraceCheckUtils]: 13: Hoare triple {14792#(and (<= sll_length_~len~0 2) (<= 2 sll_length_~len~0))} SUMMARY for call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~head.base, ~head.offset, 4); srcloc: L579 {14792#(and (<= sll_length_~len~0 2) (<= 2 sll_length_~len~0))} is VALID [2020-07-18 05:17:37,182 INFO L280 TraceCheckUtils]: 14: Hoare triple {14792#(and (<= sll_length_~len~0 2) (<= 2 sll_length_~len~0))} ~head.base, ~head.offset := #t~mem5.base, #t~mem5.offset; {14792#(and (<= sll_length_~len~0 2) (<= 2 sll_length_~len~0))} is VALID [2020-07-18 05:17:37,182 INFO L280 TraceCheckUtils]: 15: Hoare triple {14792#(and (<= sll_length_~len~0 2) (<= 2 sll_length_~len~0))} havoc #t~mem5.base, #t~mem5.offset; {14792#(and (<= sll_length_~len~0 2) (<= 2 sll_length_~len~0))} is VALID [2020-07-18 05:17:37,183 INFO L280 TraceCheckUtils]: 16: Hoare triple {14792#(and (<= sll_length_~len~0 2) (<= 2 sll_length_~len~0))} assume !(~head.base != 0 || ~head.offset != 0); {14792#(and (<= sll_length_~len~0 2) (<= 2 sll_length_~len~0))} is VALID [2020-07-18 05:17:37,184 INFO L280 TraceCheckUtils]: 17: Hoare triple {14792#(and (<= sll_length_~len~0 2) (<= 2 sll_length_~len~0))} #res := ~len~0; {14793#(and (<= 2 |sll_length_#res|) (<= |sll_length_#res| 2))} is VALID [2020-07-18 05:17:37,185 INFO L280 TraceCheckUtils]: 18: Hoare triple {14793#(and (<= 2 |sll_length_#res|) (<= |sll_length_#res| 2))} assume true; {14793#(and (<= 2 |sll_length_#res|) (<= |sll_length_#res| 2))} is VALID [2020-07-18 05:17:37,186 INFO L275 TraceCheckUtils]: 19: Hoare quadruple {14793#(and (<= 2 |sll_length_#res|) (<= |sll_length_#res| 2))} {14759#(and (<= main_~len~2 2) (= 0 main_~k~0) (<= 2 main_~len~2))} #253#return; {14780#(and (= 0 main_~k~0) (<= |main_#t~ret22| main_~len~2) (<= main_~len~2 |main_#t~ret22|))} is VALID [2020-07-18 05:17:37,188 INFO L263 TraceCheckUtils]: 0: Hoare triple {14696#true} call ULTIMATE.init(); {14781#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 05:17:37,188 INFO L280 TraceCheckUtils]: 1: Hoare triple {14781#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {14696#true} is VALID [2020-07-18 05:17:37,188 INFO L280 TraceCheckUtils]: 2: Hoare triple {14696#true} #valid := #valid[0 := 0]; {14696#true} is VALID [2020-07-18 05:17:37,189 INFO L280 TraceCheckUtils]: 3: Hoare triple {14696#true} assume 0 < #StackHeapBarrier; {14696#true} is VALID [2020-07-18 05:17:37,189 INFO L280 TraceCheckUtils]: 4: Hoare triple {14696#true} assume true; {14696#true} is VALID [2020-07-18 05:17:37,189 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {14696#true} {14696#true} #259#return; {14696#true} is VALID [2020-07-18 05:17:37,189 INFO L263 TraceCheckUtils]: 6: Hoare triple {14696#true} call #t~ret24 := main(); {14696#true} is VALID [2020-07-18 05:17:37,189 INFO L263 TraceCheckUtils]: 7: Hoare triple {14696#true} call #t~ret14 := _get_nondet_int(2, 5); {14696#true} is VALID [2020-07-18 05:17:37,190 INFO L280 TraceCheckUtils]: 8: Hoare triple {14696#true} ~from := #in~from; {14782#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:17:37,190 INFO L280 TraceCheckUtils]: 9: Hoare triple {14782#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~until := #in~until; {14782#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:17:37,191 INFO L280 TraceCheckUtils]: 10: Hoare triple {14782#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~len~1 := ~from; {14783#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:37,192 INFO L280 TraceCheckUtils]: 11: Hoare triple {14783#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #t~short12 := ~len~1 < ~until; {14783#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:37,192 INFO L280 TraceCheckUtils]: 12: Hoare triple {14783#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume #t~short12; {14783#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:37,193 INFO L280 TraceCheckUtils]: 13: Hoare triple {14783#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {14783#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:37,193 INFO L280 TraceCheckUtils]: 14: Hoare triple {14783#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #t~short12 := 0 != #t~nondet11; {14783#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:37,194 INFO L280 TraceCheckUtils]: 15: Hoare triple {14783#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume !#t~short12; {14783#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:37,194 INFO L280 TraceCheckUtils]: 16: Hoare triple {14783#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} havoc #t~nondet11; {14783#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:37,195 INFO L280 TraceCheckUtils]: 17: Hoare triple {14783#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} havoc #t~short12; {14783#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:17:37,196 INFO L280 TraceCheckUtils]: 18: Hoare triple {14783#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #res := ~len~1; {14784#(or (and (<= |_get_nondet_int_#res| 2) (<= 2 |_get_nondet_int_#res|)) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:37,196 INFO L280 TraceCheckUtils]: 19: Hoare triple {14784#(or (and (<= |_get_nondet_int_#res| 2) (<= 2 |_get_nondet_int_#res|)) (not (= 2 |_get_nondet_int_#in~from|)))} assume true; {14784#(or (and (<= |_get_nondet_int_#res| 2) (<= 2 |_get_nondet_int_#res|)) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:37,197 INFO L275 TraceCheckUtils]: 20: Hoare quadruple {14784#(or (and (<= |_get_nondet_int_#res| 2) (<= 2 |_get_nondet_int_#res|)) (not (= 2 |_get_nondet_int_#in~from|)))} {14696#true} #243#return; {14716#(and (<= |main_#t~ret14| 2) (<= 2 |main_#t~ret14|))} is VALID [2020-07-18 05:17:37,198 INFO L280 TraceCheckUtils]: 21: Hoare triple {14716#(and (<= |main_#t~ret14| 2) (<= 2 |main_#t~ret14|))} assume -2147483648 <= #t~ret14 && #t~ret14 <= 2147483647; {14716#(and (<= |main_#t~ret14| 2) (<= 2 |main_#t~ret14|))} is VALID [2020-07-18 05:17:37,199 INFO L280 TraceCheckUtils]: 22: Hoare triple {14716#(and (<= |main_#t~ret14| 2) (<= 2 |main_#t~ret14|))} ~len~2 := #t~ret14; {14717#(and (<= main_~len~2 2) (<= 2 main_~len~2))} is VALID [2020-07-18 05:17:37,199 INFO L280 TraceCheckUtils]: 23: Hoare triple {14717#(and (<= main_~len~2 2) (<= 2 main_~len~2))} havoc #t~ret14; {14717#(and (<= main_~len~2 2) (<= 2 main_~len~2))} is VALID [2020-07-18 05:17:37,200 INFO L280 TraceCheckUtils]: 24: Hoare triple {14717#(and (<= main_~len~2 2) (<= 2 main_~len~2))} SUMMARY for call ~#s~0.base, ~#s~0.offset := #Ultimate.allocOnStack(4); srcloc: L617 {14717#(and (<= main_~len~2 2) (<= 2 main_~len~2))} is VALID [2020-07-18 05:17:37,202 INFO L263 TraceCheckUtils]: 25: Hoare triple {14717#(and (<= main_~len~2 2) (<= 2 main_~len~2))} call #t~ret15.base, #t~ret15.offset := sll_create(~len~2); {14785#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-18 05:17:37,202 INFO L280 TraceCheckUtils]: 26: Hoare triple {14785#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~len := #in~len; {14696#true} is VALID [2020-07-18 05:17:37,202 INFO L280 TraceCheckUtils]: 27: Hoare triple {14696#true} ~head~0.base, ~head~0.offset := 0, 0; {14696#true} is VALID [2020-07-18 05:17:37,202 INFO L280 TraceCheckUtils]: 28: Hoare triple {14696#true} #t~post2 := ~len; {14696#true} is VALID [2020-07-18 05:17:37,203 INFO L280 TraceCheckUtils]: 29: Hoare triple {14696#true} ~len := #t~post2 - 1; {14696#true} is VALID [2020-07-18 05:17:37,203 INFO L280 TraceCheckUtils]: 30: Hoare triple {14696#true} assume !!(#t~post2 > 0); {14696#true} is VALID [2020-07-18 05:17:37,203 INFO L280 TraceCheckUtils]: 31: Hoare triple {14696#true} havoc #t~post2; {14696#true} is VALID [2020-07-18 05:17:37,203 INFO L280 TraceCheckUtils]: 32: Hoare triple {14696#true} SUMMARY for call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(4); srcloc: L566 {14696#true} is VALID [2020-07-18 05:17:37,203 INFO L280 TraceCheckUtils]: 33: Hoare triple {14696#true} ~new_head~0.base, ~new_head~0.offset := #t~malloc3.base, #t~malloc3.offset; {14696#true} is VALID [2020-07-18 05:17:37,204 INFO L280 TraceCheckUtils]: 34: Hoare triple {14696#true} assume !(0 == ~new_head~0.base && 0 == ~new_head~0.offset); {14696#true} is VALID [2020-07-18 05:17:37,204 INFO L280 TraceCheckUtils]: 35: Hoare triple {14696#true} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4); srcloc: L567-1 {14696#true} is VALID [2020-07-18 05:17:37,204 INFO L280 TraceCheckUtils]: 36: Hoare triple {14696#true} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset; {14696#true} is VALID [2020-07-18 05:17:37,204 INFO L280 TraceCheckUtils]: 37: Hoare triple {14696#true} #t~post2 := ~len; {14696#true} is VALID [2020-07-18 05:17:37,205 INFO L280 TraceCheckUtils]: 38: Hoare triple {14696#true} ~len := #t~post2 - 1; {14696#true} is VALID [2020-07-18 05:17:37,205 INFO L280 TraceCheckUtils]: 39: Hoare triple {14696#true} assume !!(#t~post2 > 0); {14696#true} is VALID [2020-07-18 05:17:37,205 INFO L280 TraceCheckUtils]: 40: Hoare triple {14696#true} havoc #t~post2; {14696#true} is VALID [2020-07-18 05:17:37,206 INFO L280 TraceCheckUtils]: 41: Hoare triple {14696#true} SUMMARY for call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(4); srcloc: L566 {14696#true} is VALID [2020-07-18 05:17:37,206 INFO L280 TraceCheckUtils]: 42: Hoare triple {14696#true} ~new_head~0.base, ~new_head~0.offset := #t~malloc3.base, #t~malloc3.offset; {14696#true} is VALID [2020-07-18 05:17:37,206 INFO L280 TraceCheckUtils]: 43: Hoare triple {14696#true} assume !(0 == ~new_head~0.base && 0 == ~new_head~0.offset); {14696#true} is VALID [2020-07-18 05:17:37,206 INFO L280 TraceCheckUtils]: 44: Hoare triple {14696#true} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4); srcloc: L567-1 {14696#true} is VALID [2020-07-18 05:17:37,207 INFO L280 TraceCheckUtils]: 45: Hoare triple {14696#true} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset; {14696#true} is VALID [2020-07-18 05:17:37,207 INFO L280 TraceCheckUtils]: 46: Hoare triple {14696#true} #t~post2 := ~len; {14696#true} is VALID [2020-07-18 05:17:37,207 INFO L280 TraceCheckUtils]: 47: Hoare triple {14696#true} ~len := #t~post2 - 1; {14696#true} is VALID [2020-07-18 05:17:37,207 INFO L280 TraceCheckUtils]: 48: Hoare triple {14696#true} assume !(#t~post2 > 0); {14696#true} is VALID [2020-07-18 05:17:37,208 INFO L280 TraceCheckUtils]: 49: Hoare triple {14696#true} havoc #t~post2; {14696#true} is VALID [2020-07-18 05:17:37,208 INFO L280 TraceCheckUtils]: 50: Hoare triple {14696#true} #res.base, #res.offset := ~head~0.base, ~head~0.offset; {14696#true} is VALID [2020-07-18 05:17:37,208 INFO L280 TraceCheckUtils]: 51: Hoare triple {14696#true} assume true; {14696#true} is VALID [2020-07-18 05:17:37,209 INFO L275 TraceCheckUtils]: 52: Hoare quadruple {14696#true} {14717#(and (<= main_~len~2 2) (<= 2 main_~len~2))} #245#return; {14717#(and (<= main_~len~2 2) (<= 2 main_~len~2))} is VALID [2020-07-18 05:17:37,210 INFO L280 TraceCheckUtils]: 53: Hoare triple {14717#(and (<= main_~len~2 2) (<= 2 main_~len~2))} SUMMARY for call write~init~$Pointer$(#t~ret15.base, #t~ret15.offset, ~#s~0.base, ~#s~0.offset, 4); srcloc: L617-2 {14717#(and (<= main_~len~2 2) (<= 2 main_~len~2))} is VALID [2020-07-18 05:17:37,211 INFO L280 TraceCheckUtils]: 54: Hoare triple {14717#(and (<= main_~len~2 2) (<= 2 main_~len~2))} havoc #t~ret15.base, #t~ret15.offset; {14717#(and (<= main_~len~2 2) (<= 2 main_~len~2))} is VALID [2020-07-18 05:17:37,211 INFO L263 TraceCheckUtils]: 55: Hoare triple {14717#(and (<= main_~len~2 2) (<= 2 main_~len~2))} call #t~ret16 := _get_nondet_int(0, ~len~2 - 1); {14696#true} is VALID [2020-07-18 05:17:37,212 INFO L280 TraceCheckUtils]: 56: Hoare triple {14696#true} ~from := #in~from; {14782#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:17:37,213 INFO L280 TraceCheckUtils]: 57: Hoare triple {14782#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~until := #in~until; {14782#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:17:37,214 INFO L280 TraceCheckUtils]: 58: Hoare triple {14782#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~len~1 := ~from; {14786#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} is VALID [2020-07-18 05:17:37,214 INFO L280 TraceCheckUtils]: 59: Hoare triple {14786#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} #t~short12 := ~len~1 < ~until; {14786#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} is VALID [2020-07-18 05:17:37,215 INFO L280 TraceCheckUtils]: 60: Hoare triple {14786#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} assume #t~short12; {14786#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} is VALID [2020-07-18 05:17:37,216 INFO L280 TraceCheckUtils]: 61: Hoare triple {14786#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {14786#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} is VALID [2020-07-18 05:17:37,216 INFO L280 TraceCheckUtils]: 62: Hoare triple {14786#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} #t~short12 := 0 != #t~nondet11; {14786#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} is VALID [2020-07-18 05:17:37,217 INFO L280 TraceCheckUtils]: 63: Hoare triple {14786#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} assume !#t~short12; {14786#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} is VALID [2020-07-18 05:17:37,218 INFO L280 TraceCheckUtils]: 64: Hoare triple {14786#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} havoc #t~nondet11; {14786#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} is VALID [2020-07-18 05:17:37,218 INFO L280 TraceCheckUtils]: 65: Hoare triple {14786#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} havoc #t~short12; {14786#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} is VALID [2020-07-18 05:17:37,219 INFO L280 TraceCheckUtils]: 66: Hoare triple {14786#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} #res := ~len~1; {14787#(or (and (<= 0 |_get_nondet_int_#res|) (<= |_get_nondet_int_#res| 0)) (not (= 0 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:37,220 INFO L280 TraceCheckUtils]: 67: Hoare triple {14787#(or (and (<= 0 |_get_nondet_int_#res|) (<= |_get_nondet_int_#res| 0)) (not (= 0 |_get_nondet_int_#in~from|)))} assume true; {14787#(or (and (<= 0 |_get_nondet_int_#res|) (<= |_get_nondet_int_#res| 0)) (not (= 0 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:17:37,221 INFO L275 TraceCheckUtils]: 68: Hoare quadruple {14787#(or (and (<= 0 |_get_nondet_int_#res|) (<= |_get_nondet_int_#res| 0)) (not (= 0 |_get_nondet_int_#in~from|)))} {14717#(and (<= main_~len~2 2) (<= 2 main_~len~2))} #247#return; {14758#(and (<= main_~len~2 2) (<= 2 main_~len~2) (= |main_#t~ret16| 0))} is VALID [2020-07-18 05:17:37,222 INFO L280 TraceCheckUtils]: 69: Hoare triple {14758#(and (<= main_~len~2 2) (<= 2 main_~len~2) (= |main_#t~ret16| 0))} assume -2147483648 <= #t~ret16 && #t~ret16 <= 2147483647; {14758#(and (<= main_~len~2 2) (<= 2 main_~len~2) (= |main_#t~ret16| 0))} is VALID [2020-07-18 05:17:37,223 INFO L280 TraceCheckUtils]: 70: Hoare triple {14758#(and (<= main_~len~2 2) (<= 2 main_~len~2) (= |main_#t~ret16| 0))} ~k~0 := #t~ret16; {14759#(and (<= main_~len~2 2) (= 0 main_~k~0) (<= 2 main_~len~2))} is VALID [2020-07-18 05:17:37,224 INFO L280 TraceCheckUtils]: 71: Hoare triple {14759#(and (<= main_~len~2 2) (= 0 main_~k~0) (<= 2 main_~len~2))} havoc #t~ret16; {14759#(and (<= main_~len~2 2) (= 0 main_~k~0) (<= 2 main_~len~2))} is VALID [2020-07-18 05:17:37,225 INFO L280 TraceCheckUtils]: 72: Hoare triple {14759#(and (<= main_~len~2 2) (= 0 main_~k~0) (<= 2 main_~len~2))} ~i~0 := 0; {14759#(and (<= main_~len~2 2) (= 0 main_~k~0) (<= 2 main_~len~2))} is VALID [2020-07-18 05:17:37,225 INFO L280 TraceCheckUtils]: 73: Hoare triple {14759#(and (<= main_~len~2 2) (= 0 main_~k~0) (<= 2 main_~len~2))} #t~short18 := ~i~0 < ~k~0; {14759#(and (<= main_~len~2 2) (= 0 main_~k~0) (<= 2 main_~len~2))} is VALID [2020-07-18 05:17:37,226 INFO L280 TraceCheckUtils]: 74: Hoare triple {14759#(and (<= main_~len~2 2) (= 0 main_~k~0) (<= 2 main_~len~2))} assume !#t~short18; {14759#(and (<= main_~len~2 2) (= 0 main_~k~0) (<= 2 main_~len~2))} is VALID [2020-07-18 05:17:37,227 INFO L280 TraceCheckUtils]: 75: Hoare triple {14759#(and (<= main_~len~2 2) (= 0 main_~k~0) (<= 2 main_~len~2))} assume !#t~short18; {14759#(and (<= main_~len~2 2) (= 0 main_~k~0) (<= 2 main_~len~2))} is VALID [2020-07-18 05:17:37,227 INFO L280 TraceCheckUtils]: 76: Hoare triple {14759#(and (<= main_~len~2 2) (= 0 main_~k~0) (<= 2 main_~len~2))} havoc #t~nondet17; {14759#(and (<= main_~len~2 2) (= 0 main_~k~0) (<= 2 main_~len~2))} is VALID [2020-07-18 05:17:37,228 INFO L280 TraceCheckUtils]: 77: Hoare triple {14759#(and (<= main_~len~2 2) (= 0 main_~k~0) (<= 2 main_~len~2))} havoc #t~short18; {14759#(and (<= main_~len~2 2) (= 0 main_~k~0) (<= 2 main_~len~2))} is VALID [2020-07-18 05:17:37,229 INFO L280 TraceCheckUtils]: 78: Hoare triple {14759#(and (<= main_~len~2 2) (= 0 main_~k~0) (<= 2 main_~len~2))} SUMMARY for call #t~mem21.base, #t~mem21.offset := read~$Pointer$(~#s~0.base, ~#s~0.offset, 4); srcloc: L620-12 {14759#(and (<= main_~len~2 2) (= 0 main_~k~0) (<= 2 main_~len~2))} is VALID [2020-07-18 05:17:37,229 INFO L263 TraceCheckUtils]: 79: Hoare triple {14759#(and (<= main_~len~2 2) (= 0 main_~k~0) (<= 2 main_~len~2))} call #t~ret22 := sll_length(#t~mem21.base, #t~mem21.offset); {14696#true} is VALID [2020-07-18 05:17:37,229 INFO L280 TraceCheckUtils]: 80: Hoare triple {14696#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {14696#true} is VALID [2020-07-18 05:17:37,230 INFO L280 TraceCheckUtils]: 81: Hoare triple {14696#true} ~len~0 := 0; {14788#(and (<= 0 sll_length_~len~0) (<= sll_length_~len~0 0))} is VALID [2020-07-18 05:17:37,230 INFO L280 TraceCheckUtils]: 82: Hoare triple {14788#(and (<= 0 sll_length_~len~0) (<= sll_length_~len~0 0))} assume !!(~head.base != 0 || ~head.offset != 0); {14788#(and (<= 0 sll_length_~len~0) (<= sll_length_~len~0 0))} is VALID [2020-07-18 05:17:37,231 INFO L280 TraceCheckUtils]: 83: Hoare triple {14788#(and (<= 0 sll_length_~len~0) (<= sll_length_~len~0 0))} #t~post4 := ~len~0; {14789#(and (<= |sll_length_#t~post4| 0) (<= 0 |sll_length_#t~post4|))} is VALID [2020-07-18 05:17:37,232 INFO L280 TraceCheckUtils]: 84: Hoare triple {14789#(and (<= |sll_length_#t~post4| 0) (<= 0 |sll_length_#t~post4|))} ~len~0 := 1 + #t~post4; {14790#(and (<= 1 sll_length_~len~0) (<= sll_length_~len~0 1))} is VALID [2020-07-18 05:17:37,233 INFO L280 TraceCheckUtils]: 85: Hoare triple {14790#(and (<= 1 sll_length_~len~0) (<= sll_length_~len~0 1))} havoc #t~post4; {14790#(and (<= 1 sll_length_~len~0) (<= sll_length_~len~0 1))} is VALID [2020-07-18 05:17:37,234 INFO L280 TraceCheckUtils]: 86: Hoare triple {14790#(and (<= 1 sll_length_~len~0) (<= sll_length_~len~0 1))} SUMMARY for call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~head.base, ~head.offset, 4); srcloc: L579 {14790#(and (<= 1 sll_length_~len~0) (<= sll_length_~len~0 1))} is VALID [2020-07-18 05:17:37,234 INFO L280 TraceCheckUtils]: 87: Hoare triple {14790#(and (<= 1 sll_length_~len~0) (<= sll_length_~len~0 1))} ~head.base, ~head.offset := #t~mem5.base, #t~mem5.offset; {14790#(and (<= 1 sll_length_~len~0) (<= sll_length_~len~0 1))} is VALID [2020-07-18 05:17:37,235 INFO L280 TraceCheckUtils]: 88: Hoare triple {14790#(and (<= 1 sll_length_~len~0) (<= sll_length_~len~0 1))} havoc #t~mem5.base, #t~mem5.offset; {14790#(and (<= 1 sll_length_~len~0) (<= sll_length_~len~0 1))} is VALID [2020-07-18 05:17:37,236 INFO L280 TraceCheckUtils]: 89: Hoare triple {14790#(and (<= 1 sll_length_~len~0) (<= sll_length_~len~0 1))} assume !!(~head.base != 0 || ~head.offset != 0); {14790#(and (<= 1 sll_length_~len~0) (<= sll_length_~len~0 1))} is VALID [2020-07-18 05:17:37,237 INFO L280 TraceCheckUtils]: 90: Hoare triple {14790#(and (<= 1 sll_length_~len~0) (<= sll_length_~len~0 1))} #t~post4 := ~len~0; {14791#(and (<= 1 |sll_length_#t~post4|) (<= |sll_length_#t~post4| 1))} is VALID [2020-07-18 05:17:37,238 INFO L280 TraceCheckUtils]: 91: Hoare triple {14791#(and (<= 1 |sll_length_#t~post4|) (<= |sll_length_#t~post4| 1))} ~len~0 := 1 + #t~post4; {14792#(and (<= sll_length_~len~0 2) (<= 2 sll_length_~len~0))} is VALID [2020-07-18 05:17:37,239 INFO L280 TraceCheckUtils]: 92: Hoare triple {14792#(and (<= sll_length_~len~0 2) (<= 2 sll_length_~len~0))} havoc #t~post4; {14792#(and (<= sll_length_~len~0 2) (<= 2 sll_length_~len~0))} is VALID [2020-07-18 05:17:37,240 INFO L280 TraceCheckUtils]: 93: Hoare triple {14792#(and (<= sll_length_~len~0 2) (<= 2 sll_length_~len~0))} SUMMARY for call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~head.base, ~head.offset, 4); srcloc: L579 {14792#(and (<= sll_length_~len~0 2) (<= 2 sll_length_~len~0))} is VALID [2020-07-18 05:17:37,241 INFO L280 TraceCheckUtils]: 94: Hoare triple {14792#(and (<= sll_length_~len~0 2) (<= 2 sll_length_~len~0))} ~head.base, ~head.offset := #t~mem5.base, #t~mem5.offset; {14792#(and (<= sll_length_~len~0 2) (<= 2 sll_length_~len~0))} is VALID [2020-07-18 05:17:37,242 INFO L280 TraceCheckUtils]: 95: Hoare triple {14792#(and (<= sll_length_~len~0 2) (<= 2 sll_length_~len~0))} havoc #t~mem5.base, #t~mem5.offset; {14792#(and (<= sll_length_~len~0 2) (<= 2 sll_length_~len~0))} is VALID [2020-07-18 05:17:37,243 INFO L280 TraceCheckUtils]: 96: Hoare triple {14792#(and (<= sll_length_~len~0 2) (<= 2 sll_length_~len~0))} assume !(~head.base != 0 || ~head.offset != 0); {14792#(and (<= sll_length_~len~0 2) (<= 2 sll_length_~len~0))} is VALID [2020-07-18 05:17:37,243 INFO L280 TraceCheckUtils]: 97: Hoare triple {14792#(and (<= sll_length_~len~0 2) (<= 2 sll_length_~len~0))} #res := ~len~0; {14793#(and (<= 2 |sll_length_#res|) (<= |sll_length_#res| 2))} is VALID [2020-07-18 05:17:37,244 INFO L280 TraceCheckUtils]: 98: Hoare triple {14793#(and (<= 2 |sll_length_#res|) (<= |sll_length_#res| 2))} assume true; {14793#(and (<= 2 |sll_length_#res|) (<= |sll_length_#res| 2))} is VALID [2020-07-18 05:17:37,246 INFO L275 TraceCheckUtils]: 99: Hoare quadruple {14793#(and (<= 2 |sll_length_#res|) (<= |sll_length_#res| 2))} {14759#(and (<= main_~len~2 2) (= 0 main_~k~0) (<= 2 main_~len~2))} #253#return; {14780#(and (= 0 main_~k~0) (<= |main_#t~ret22| main_~len~2) (<= main_~len~2 |main_#t~ret22|))} is VALID [2020-07-18 05:17:37,247 INFO L280 TraceCheckUtils]: 100: Hoare triple {14780#(and (= 0 main_~k~0) (<= |main_#t~ret22| main_~len~2) (<= main_~len~2 |main_#t~ret22|))} assume -2147483648 <= #t~ret22 && #t~ret22 <= 2147483647; {14780#(and (= 0 main_~k~0) (<= |main_#t~ret22| main_~len~2) (<= main_~len~2 |main_#t~ret22|))} is VALID [2020-07-18 05:17:37,247 INFO L280 TraceCheckUtils]: 101: Hoare triple {14780#(and (= 0 main_~k~0) (<= |main_#t~ret22| main_~len~2) (<= main_~len~2 |main_#t~ret22|))} assume ~k~0 + ~len~2 != #t~ret22; {14697#false} is VALID [2020-07-18 05:17:37,248 INFO L280 TraceCheckUtils]: 102: Hoare triple {14697#false} havoc #t~ret22; {14697#false} is VALID [2020-07-18 05:17:37,248 INFO L280 TraceCheckUtils]: 103: Hoare triple {14697#false} havoc #t~mem21.base, #t~mem21.offset; {14697#false} is VALID [2020-07-18 05:17:37,248 INFO L280 TraceCheckUtils]: 104: Hoare triple {14697#false} assume !false; {14697#false} is VALID [2020-07-18 05:17:37,272 INFO L134 CoverageAnalysis]: Checked inductivity of 37 backedges. 0 proven. 19 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2020-07-18 05:17:37,273 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [2083461865] [2020-07-18 05:17:37,273 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2020-07-18 05:17:37,273 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [20] total 20 [2020-07-18 05:17:37,274 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [570522627] [2020-07-18 05:17:37,275 INFO L78 Accepts]: Start accepts. Automaton has 20 states. Word has length 105 [2020-07-18 05:17:37,276 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 05:17:37,276 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states. [2020-07-18 05:17:37,395 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 92 edges. 92 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:17:37,395 INFO L459 AbstractCegarLoop]: Interpolant automaton has 20 states [2020-07-18 05:17:37,396 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 05:17:37,396 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2020-07-18 05:17:37,396 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=39, Invalid=341, Unknown=0, NotChecked=0, Total=380 [2020-07-18 05:17:37,397 INFO L87 Difference]: Start difference. First operand 206 states and 228 transitions. Second operand 20 states. [2020-07-18 05:17:45,423 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:17:45,423 INFO L93 Difference]: Finished difference Result 325 states and 381 transitions. [2020-07-18 05:17:45,423 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2020-07-18 05:17:45,424 INFO L78 Accepts]: Start accepts. Automaton has 20 states. Word has length 105 [2020-07-18 05:17:45,424 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 05:17:45,424 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2020-07-18 05:17:45,430 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 296 transitions. [2020-07-18 05:17:45,431 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2020-07-18 05:17:45,433 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 296 transitions. [2020-07-18 05:17:45,434 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 28 states and 296 transitions. [2020-07-18 05:17:45,849 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 296 edges. 296 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:17:45,858 INFO L225 Difference]: With dead ends: 325 [2020-07-18 05:17:45,858 INFO L226 Difference]: Without dead ends: 319 [2020-07-18 05:17:45,860 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 51 GetRequests, 11 SyntacticMatches, 0 SemanticMatches, 40 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 263 ImplicationChecksByTransitivity, 1.3s TimeCoverageRelationStatistics Valid=209, Invalid=1513, Unknown=0, NotChecked=0, Total=1722 [2020-07-18 05:17:45,860 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 319 states. [2020-07-18 05:17:46,817 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 319 to 256. [2020-07-18 05:17:46,817 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 05:17:46,817 INFO L82 GeneralOperation]: Start isEquivalent. First operand 319 states. Second operand 256 states. [2020-07-18 05:17:46,817 INFO L74 IsIncluded]: Start isIncluded. First operand 319 states. Second operand 256 states. [2020-07-18 05:17:46,817 INFO L87 Difference]: Start difference. First operand 319 states. Second operand 256 states. [2020-07-18 05:17:46,826 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:17:46,827 INFO L93 Difference]: Finished difference Result 319 states and 374 transitions. [2020-07-18 05:17:46,827 INFO L276 IsEmpty]: Start isEmpty. Operand 319 states and 374 transitions. [2020-07-18 05:17:46,828 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 05:17:46,829 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 05:17:46,829 INFO L74 IsIncluded]: Start isIncluded. First operand 256 states. Second operand 319 states. [2020-07-18 05:17:46,829 INFO L87 Difference]: Start difference. First operand 256 states. Second operand 319 states. [2020-07-18 05:17:46,839 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:17:46,839 INFO L93 Difference]: Finished difference Result 319 states and 374 transitions. [2020-07-18 05:17:46,839 INFO L276 IsEmpty]: Start isEmpty. Operand 319 states and 374 transitions. [2020-07-18 05:17:46,841 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 05:17:46,841 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 05:17:46,841 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 05:17:46,841 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 05:17:46,841 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 256 states. [2020-07-18 05:17:46,848 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 256 states to 256 states and 294 transitions. [2020-07-18 05:17:46,848 INFO L78 Accepts]: Start accepts. Automaton has 256 states and 294 transitions. Word has length 105 [2020-07-18 05:17:46,849 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 05:17:46,849 INFO L479 AbstractCegarLoop]: Abstraction has 256 states and 294 transitions. [2020-07-18 05:17:46,849 INFO L480 AbstractCegarLoop]: Interpolant automaton has 20 states. [2020-07-18 05:17:46,849 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 256 states and 294 transitions. [2020-07-18 05:17:47,511 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 294 edges. 294 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:17:47,511 INFO L276 IsEmpty]: Start isEmpty. Operand 256 states and 294 transitions. [2020-07-18 05:17:47,515 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 113 [2020-07-18 05:17:47,515 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 05:17:47,515 INFO L422 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 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] [2020-07-18 05:17:47,516 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable10 [2020-07-18 05:17:47,516 INFO L427 AbstractCegarLoop]: === Iteration 12 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 05:17:47,516 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 05:17:47,516 INFO L82 PathProgramCache]: Analyzing trace with hash -798874772, now seen corresponding path program 2 times [2020-07-18 05:17:47,516 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 05:17:47,517 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1213274106] [2020-07-18 05:17:47,517 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 05:17:47,553 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:47,674 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:47,676 INFO L280 TraceCheckUtils]: 0: Hoare triple {16732#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {16642#true} is VALID [2020-07-18 05:17:47,677 INFO L280 TraceCheckUtils]: 1: Hoare triple {16642#true} #valid := #valid[0 := 0]; {16642#true} is VALID [2020-07-18 05:17:47,677 INFO L280 TraceCheckUtils]: 2: Hoare triple {16642#true} assume 0 < #StackHeapBarrier; {16642#true} is VALID [2020-07-18 05:17:47,677 INFO L280 TraceCheckUtils]: 3: Hoare triple {16642#true} assume true; {16642#true} is VALID [2020-07-18 05:17:47,677 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {16642#true} {16642#true} #259#return; {16642#true} is VALID [2020-07-18 05:17:47,678 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:47,689 INFO L280 TraceCheckUtils]: 0: Hoare triple {16642#true} ~from := #in~from; {16642#true} is VALID [2020-07-18 05:17:47,689 INFO L280 TraceCheckUtils]: 1: Hoare triple {16642#true} ~until := #in~until; {16642#true} is VALID [2020-07-18 05:17:47,689 INFO L280 TraceCheckUtils]: 2: Hoare triple {16642#true} ~len~1 := ~from; {16642#true} is VALID [2020-07-18 05:17:47,690 INFO L280 TraceCheckUtils]: 3: Hoare triple {16642#true} #t~short12 := ~len~1 < ~until; {16642#true} is VALID [2020-07-18 05:17:47,690 INFO L280 TraceCheckUtils]: 4: Hoare triple {16642#true} assume #t~short12; {16642#true} is VALID [2020-07-18 05:17:47,690 INFO L280 TraceCheckUtils]: 5: Hoare triple {16642#true} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {16642#true} is VALID [2020-07-18 05:17:47,690 INFO L280 TraceCheckUtils]: 6: Hoare triple {16642#true} #t~short12 := 0 != #t~nondet11; {16642#true} is VALID [2020-07-18 05:17:47,691 INFO L280 TraceCheckUtils]: 7: Hoare triple {16642#true} assume !#t~short12; {16642#true} is VALID [2020-07-18 05:17:47,691 INFO L280 TraceCheckUtils]: 8: Hoare triple {16642#true} havoc #t~nondet11; {16642#true} is VALID [2020-07-18 05:17:47,691 INFO L280 TraceCheckUtils]: 9: Hoare triple {16642#true} havoc #t~short12; {16642#true} is VALID [2020-07-18 05:17:47,691 INFO L280 TraceCheckUtils]: 10: Hoare triple {16642#true} #res := ~len~1; {16642#true} is VALID [2020-07-18 05:17:47,692 INFO L280 TraceCheckUtils]: 11: Hoare triple {16642#true} assume true; {16642#true} is VALID [2020-07-18 05:17:47,692 INFO L275 TraceCheckUtils]: 12: Hoare quadruple {16642#true} {16642#true} #243#return; {16642#true} is VALID [2020-07-18 05:17:47,725 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:48,218 INFO L280 TraceCheckUtils]: 0: Hoare triple {16733#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~len := #in~len; {16642#true} is VALID [2020-07-18 05:17:48,219 INFO L280 TraceCheckUtils]: 1: Hoare triple {16642#true} ~head~0.base, ~head~0.offset := 0, 0; {16734#(and (= 0 sll_create_~head~0.offset) (= 0 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:48,219 INFO L280 TraceCheckUtils]: 2: Hoare triple {16734#(and (= 0 sll_create_~head~0.offset) (= 0 sll_create_~head~0.base))} #t~post2 := ~len; {16734#(and (= 0 sll_create_~head~0.offset) (= 0 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:48,220 INFO L280 TraceCheckUtils]: 3: Hoare triple {16734#(and (= 0 sll_create_~head~0.offset) (= 0 sll_create_~head~0.base))} ~len := #t~post2 - 1; {16734#(and (= 0 sll_create_~head~0.offset) (= 0 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:48,221 INFO L280 TraceCheckUtils]: 4: Hoare triple {16734#(and (= 0 sll_create_~head~0.offset) (= 0 sll_create_~head~0.base))} assume !!(#t~post2 > 0); {16734#(and (= 0 sll_create_~head~0.offset) (= 0 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:48,222 INFO L280 TraceCheckUtils]: 5: Hoare triple {16734#(and (= 0 sll_create_~head~0.offset) (= 0 sll_create_~head~0.base))} havoc #t~post2; {16734#(and (= 0 sll_create_~head~0.offset) (= 0 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:48,223 INFO L280 TraceCheckUtils]: 6: Hoare triple {16734#(and (= 0 sll_create_~head~0.offset) (= 0 sll_create_~head~0.base))} SUMMARY for call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(4); srcloc: L566 {16735#(and (= 0 sll_create_~head~0.offset) (= 1 (select |#valid| |sll_create_#t~malloc3.base|)) (= 0 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:48,224 INFO L280 TraceCheckUtils]: 7: Hoare triple {16735#(and (= 0 sll_create_~head~0.offset) (= 1 (select |#valid| |sll_create_#t~malloc3.base|)) (= 0 sll_create_~head~0.base))} ~new_head~0.base, ~new_head~0.offset := #t~malloc3.base, #t~malloc3.offset; {16736#(and (= 1 (select |#valid| sll_create_~new_head~0.base)) (= 0 sll_create_~head~0.offset) (= 0 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:48,225 INFO L280 TraceCheckUtils]: 8: Hoare triple {16736#(and (= 1 (select |#valid| sll_create_~new_head~0.base)) (= 0 sll_create_~head~0.offset) (= 0 sll_create_~head~0.base))} assume !(0 == ~new_head~0.base && 0 == ~new_head~0.offset); {16736#(and (= 1 (select |#valid| sll_create_~new_head~0.base)) (= 0 sll_create_~head~0.offset) (= 0 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:48,227 INFO L280 TraceCheckUtils]: 9: Hoare triple {16736#(and (= 1 (select |#valid| sll_create_~new_head~0.base)) (= 0 sll_create_~head~0.offset) (= 0 sll_create_~head~0.base))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4); srcloc: L567-1 {16737#(and (= 1 (select |#valid| sll_create_~new_head~0.base)) (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~new_head~0.base) sll_create_~new_head~0.offset)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~new_head~0.base) sll_create_~new_head~0.offset)))} is VALID [2020-07-18 05:17:48,228 INFO L280 TraceCheckUtils]: 10: Hoare triple {16737#(and (= 1 (select |#valid| sll_create_~new_head~0.base)) (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~new_head~0.base) sll_create_~new_head~0.offset)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~new_head~0.base) sll_create_~new_head~0.offset)))} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset; {16738#(and (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 1 (select |#valid| sll_create_~head~0.base)))} is VALID [2020-07-18 05:17:48,229 INFO L280 TraceCheckUtils]: 11: Hoare triple {16738#(and (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 1 (select |#valid| sll_create_~head~0.base)))} #t~post2 := ~len; {16738#(and (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 1 (select |#valid| sll_create_~head~0.base)))} is VALID [2020-07-18 05:17:48,230 INFO L280 TraceCheckUtils]: 12: Hoare triple {16738#(and (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 1 (select |#valid| sll_create_~head~0.base)))} ~len := #t~post2 - 1; {16738#(and (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 1 (select |#valid| sll_create_~head~0.base)))} is VALID [2020-07-18 05:17:48,232 INFO L280 TraceCheckUtils]: 13: Hoare triple {16738#(and (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 1 (select |#valid| sll_create_~head~0.base)))} assume !!(#t~post2 > 0); {16738#(and (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 1 (select |#valid| sll_create_~head~0.base)))} is VALID [2020-07-18 05:17:48,233 INFO L280 TraceCheckUtils]: 14: Hoare triple {16738#(and (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 1 (select |#valid| sll_create_~head~0.base)))} havoc #t~post2; {16738#(and (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 1 (select |#valid| sll_create_~head~0.base)))} is VALID [2020-07-18 05:17:48,234 INFO L280 TraceCheckUtils]: 15: Hoare triple {16738#(and (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 1 (select |#valid| sll_create_~head~0.base)))} SUMMARY for call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(4); srcloc: L566 {16739#(and (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset)) (not (= sll_create_~head~0.base |sll_create_#t~malloc3.base|)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)))} is VALID [2020-07-18 05:17:48,235 INFO L280 TraceCheckUtils]: 16: Hoare triple {16739#(and (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset)) (not (= sll_create_~head~0.base |sll_create_#t~malloc3.base|)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)))} ~new_head~0.base, ~new_head~0.offset := #t~malloc3.base, #t~malloc3.offset; {16740#(and (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (not (= sll_create_~head~0.base sll_create_~new_head~0.base)))} is VALID [2020-07-18 05:17:48,236 INFO L280 TraceCheckUtils]: 17: Hoare triple {16740#(and (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (not (= sll_create_~head~0.base sll_create_~new_head~0.base)))} assume !(0 == ~new_head~0.base && 0 == ~new_head~0.offset); {16740#(and (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (not (= sll_create_~head~0.base sll_create_~new_head~0.base)))} is VALID [2020-07-18 05:17:48,237 INFO L280 TraceCheckUtils]: 18: Hoare triple {16740#(and (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (not (= sll_create_~head~0.base sll_create_~new_head~0.base)))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4); srcloc: L567-1 {16741#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| sll_create_~new_head~0.base) sll_create_~new_head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~new_head~0.base) sll_create_~new_head~0.offset))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| sll_create_~new_head~0.base) sll_create_~new_head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~new_head~0.base) sll_create_~new_head~0.offset))))} is VALID [2020-07-18 05:17:48,239 INFO L280 TraceCheckUtils]: 19: Hoare triple {16741#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| sll_create_~new_head~0.base) sll_create_~new_head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~new_head~0.base) sll_create_~new_head~0.offset))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| sll_create_~new_head~0.base) sll_create_~new_head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~new_head~0.base) sll_create_~new_head~0.offset))))} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset; {16742#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))))} is VALID [2020-07-18 05:17:48,240 INFO L280 TraceCheckUtils]: 20: Hoare triple {16742#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))))} #t~post2 := ~len; {16742#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))))} is VALID [2020-07-18 05:17:48,241 INFO L280 TraceCheckUtils]: 21: Hoare triple {16742#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))))} ~len := #t~post2 - 1; {16742#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))))} is VALID [2020-07-18 05:17:48,242 INFO L280 TraceCheckUtils]: 22: Hoare triple {16742#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))))} assume !(#t~post2 > 0); {16742#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))))} is VALID [2020-07-18 05:17:48,243 INFO L280 TraceCheckUtils]: 23: Hoare triple {16742#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))))} havoc #t~post2; {16742#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))))} is VALID [2020-07-18 05:17:48,244 INFO L280 TraceCheckUtils]: 24: Hoare triple {16742#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))))} #res.base, #res.offset := ~head~0.base, ~head~0.offset; {16743#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_create_#res.base|) |sll_create_#res.offset|)) (select (select |#memory_$Pointer$.offset| |sll_create_#res.base|) |sll_create_#res.offset|))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_create_#res.base|) |sll_create_#res.offset|)) (select (select |#memory_$Pointer$.offset| |sll_create_#res.base|) |sll_create_#res.offset|))))} is VALID [2020-07-18 05:17:48,245 INFO L280 TraceCheckUtils]: 25: Hoare triple {16743#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_create_#res.base|) |sll_create_#res.offset|)) (select (select |#memory_$Pointer$.offset| |sll_create_#res.base|) |sll_create_#res.offset|))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_create_#res.base|) |sll_create_#res.offset|)) (select (select |#memory_$Pointer$.offset| |sll_create_#res.base|) |sll_create_#res.offset|))))} assume true; {16743#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_create_#res.base|) |sll_create_#res.offset|)) (select (select |#memory_$Pointer$.offset| |sll_create_#res.base|) |sll_create_#res.offset|))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_create_#res.base|) |sll_create_#res.offset|)) (select (select |#memory_$Pointer$.offset| |sll_create_#res.base|) |sll_create_#res.offset|))))} is VALID [2020-07-18 05:17:48,247 INFO L275 TraceCheckUtils]: 26: Hoare quadruple {16743#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_create_#res.base|) |sll_create_#res.offset|)) (select (select |#memory_$Pointer$.offset| |sll_create_#res.base|) |sll_create_#res.offset|))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_create_#res.base|) |sll_create_#res.offset|)) (select (select |#memory_$Pointer$.offset| |sll_create_#res.base|) |sll_create_#res.offset|))))} {16642#true} #245#return; {16689#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_#t~ret15.base|) |main_#t~ret15.offset|)) (select (select |#memory_$Pointer$.offset| |main_#t~ret15.base|) |main_#t~ret15.offset|))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_#t~ret15.base|) |main_#t~ret15.offset|)) (select (select |#memory_$Pointer$.offset| |main_#t~ret15.base|) |main_#t~ret15.offset|))))} is VALID [2020-07-18 05:17:48,253 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:48,257 INFO L280 TraceCheckUtils]: 0: Hoare triple {16642#true} ~from := #in~from; {16642#true} is VALID [2020-07-18 05:17:48,258 INFO L280 TraceCheckUtils]: 1: Hoare triple {16642#true} ~until := #in~until; {16642#true} is VALID [2020-07-18 05:17:48,258 INFO L280 TraceCheckUtils]: 2: Hoare triple {16642#true} ~len~1 := ~from; {16642#true} is VALID [2020-07-18 05:17:48,258 INFO L280 TraceCheckUtils]: 3: Hoare triple {16642#true} #t~short12 := ~len~1 < ~until; {16642#true} is VALID [2020-07-18 05:17:48,258 INFO L280 TraceCheckUtils]: 4: Hoare triple {16642#true} assume #t~short12; {16642#true} is VALID [2020-07-18 05:17:48,259 INFO L280 TraceCheckUtils]: 5: Hoare triple {16642#true} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {16642#true} is VALID [2020-07-18 05:17:48,259 INFO L280 TraceCheckUtils]: 6: Hoare triple {16642#true} #t~short12 := 0 != #t~nondet11; {16642#true} is VALID [2020-07-18 05:17:48,259 INFO L280 TraceCheckUtils]: 7: Hoare triple {16642#true} assume !#t~short12; {16642#true} is VALID [2020-07-18 05:17:48,259 INFO L280 TraceCheckUtils]: 8: Hoare triple {16642#true} havoc #t~nondet11; {16642#true} is VALID [2020-07-18 05:17:48,259 INFO L280 TraceCheckUtils]: 9: Hoare triple {16642#true} havoc #t~short12; {16642#true} is VALID [2020-07-18 05:17:48,260 INFO L280 TraceCheckUtils]: 10: Hoare triple {16642#true} #res := ~len~1; {16642#true} is VALID [2020-07-18 05:17:48,260 INFO L280 TraceCheckUtils]: 11: Hoare triple {16642#true} assume true; {16642#true} is VALID [2020-07-18 05:17:48,261 INFO L275 TraceCheckUtils]: 12: Hoare quadruple {16642#true} {16690#(and (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))) (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))))} #247#return; {16690#(and (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))) (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))))} is VALID [2020-07-18 05:17:48,264 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:17:48,499 INFO L280 TraceCheckUtils]: 0: Hoare triple {16642#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {16744#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} is VALID [2020-07-18 05:17:48,500 INFO L280 TraceCheckUtils]: 1: Hoare triple {16744#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} ~len~0 := 0; {16744#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} is VALID [2020-07-18 05:17:48,501 INFO L280 TraceCheckUtils]: 2: Hoare triple {16744#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} assume !!(~head.base != 0 || ~head.offset != 0); {16744#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} is VALID [2020-07-18 05:17:48,501 INFO L280 TraceCheckUtils]: 3: Hoare triple {16744#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} #t~post4 := ~len~0; {16744#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} is VALID [2020-07-18 05:17:48,502 INFO L280 TraceCheckUtils]: 4: Hoare triple {16744#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} ~len~0 := 1 + #t~post4; {16744#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} is VALID [2020-07-18 05:17:48,504 INFO L280 TraceCheckUtils]: 5: Hoare triple {16744#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} havoc #t~post4; {16744#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} is VALID [2020-07-18 05:17:48,505 INFO L280 TraceCheckUtils]: 6: Hoare triple {16744#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} SUMMARY for call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~head.base, ~head.offset, 4); srcloc: L579 {16745#(and (= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) |sll_length_#t~mem5.base|) (= (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) |sll_length_#t~mem5.offset|))} is VALID [2020-07-18 05:17:48,505 INFO L280 TraceCheckUtils]: 7: Hoare triple {16745#(and (= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) |sll_length_#t~mem5.base|) (= (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) |sll_length_#t~mem5.offset|))} ~head.base, ~head.offset := #t~mem5.base, #t~mem5.offset; {16746#(and (= (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.offset) (= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.base))} is VALID [2020-07-18 05:17:48,506 INFO L280 TraceCheckUtils]: 8: Hoare triple {16746#(and (= (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.offset) (= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.base))} havoc #t~mem5.base, #t~mem5.offset; {16746#(and (= (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.offset) (= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.base))} is VALID [2020-07-18 05:17:48,507 INFO L280 TraceCheckUtils]: 9: Hoare triple {16746#(and (= (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.offset) (= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.base))} assume !!(~head.base != 0 || ~head.offset != 0); {16746#(and (= (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.offset) (= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.base))} is VALID [2020-07-18 05:17:48,508 INFO L280 TraceCheckUtils]: 10: Hoare triple {16746#(and (= (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.offset) (= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.base))} #t~post4 := ~len~0; {16746#(and (= (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.offset) (= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.base))} is VALID [2020-07-18 05:17:48,509 INFO L280 TraceCheckUtils]: 11: Hoare triple {16746#(and (= (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.offset) (= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.base))} ~len~0 := 1 + #t~post4; {16746#(and (= (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.offset) (= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.base))} is VALID [2020-07-18 05:17:48,510 INFO L280 TraceCheckUtils]: 12: Hoare triple {16746#(and (= (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.offset) (= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.base))} havoc #t~post4; {16746#(and (= (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.offset) (= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.base))} is VALID [2020-07-18 05:17:48,511 INFO L280 TraceCheckUtils]: 13: Hoare triple {16746#(and (= (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.offset) (= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.base))} SUMMARY for call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~head.base, ~head.offset, 4); srcloc: L579 {16747#(and (= |sll_length_#t~mem5.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) |sll_length_#t~mem5.offset|))} is VALID [2020-07-18 05:17:48,512 INFO L280 TraceCheckUtils]: 14: Hoare triple {16747#(and (= |sll_length_#t~mem5.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) |sll_length_#t~mem5.offset|))} ~head.base, ~head.offset := #t~mem5.base, #t~mem5.offset; {16748#(and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) sll_length_~head.offset) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) sll_length_~head.base))} is VALID [2020-07-18 05:17:48,512 INFO L280 TraceCheckUtils]: 15: Hoare triple {16748#(and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) sll_length_~head.offset) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) sll_length_~head.base))} havoc #t~mem5.base, #t~mem5.offset; {16748#(and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) sll_length_~head.offset) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) sll_length_~head.base))} is VALID [2020-07-18 05:17:48,513 INFO L280 TraceCheckUtils]: 16: Hoare triple {16748#(and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) sll_length_~head.offset) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) sll_length_~head.base))} assume !!(~head.base != 0 || ~head.offset != 0); {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} is VALID [2020-07-18 05:17:48,514 INFO L280 TraceCheckUtils]: 17: Hoare triple {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} #t~post4 := ~len~0; {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} is VALID [2020-07-18 05:17:48,515 INFO L280 TraceCheckUtils]: 18: Hoare triple {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} ~len~0 := 1 + #t~post4; {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} is VALID [2020-07-18 05:17:48,515 INFO L280 TraceCheckUtils]: 19: Hoare triple {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} havoc #t~post4; {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} is VALID [2020-07-18 05:17:48,516 INFO L280 TraceCheckUtils]: 20: Hoare triple {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} SUMMARY for call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~head.base, ~head.offset, 4); srcloc: L579 {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} is VALID [2020-07-18 05:17:48,516 INFO L280 TraceCheckUtils]: 21: Hoare triple {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} ~head.base, ~head.offset := #t~mem5.base, #t~mem5.offset; {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} is VALID [2020-07-18 05:17:48,517 INFO L280 TraceCheckUtils]: 22: Hoare triple {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} havoc #t~mem5.base, #t~mem5.offset; {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} is VALID [2020-07-18 05:17:48,518 INFO L280 TraceCheckUtils]: 23: Hoare triple {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} assume !(~head.base != 0 || ~head.offset != 0); {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} is VALID [2020-07-18 05:17:48,518 INFO L280 TraceCheckUtils]: 24: Hoare triple {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} #res := ~len~0; {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} is VALID [2020-07-18 05:17:48,519 INFO L280 TraceCheckUtils]: 25: Hoare triple {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} assume true; {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} is VALID [2020-07-18 05:17:48,520 INFO L275 TraceCheckUtils]: 26: Hoare quadruple {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} {16704#(and (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_#t~mem21.base|) |main_#t~mem21.offset|)) (select (select |#memory_$Pointer$.offset| |main_#t~mem21.base|) |main_#t~mem21.offset|))) (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_#t~mem21.base|) |main_#t~mem21.offset|)) (select (select |#memory_$Pointer$.offset| |main_#t~mem21.base|) |main_#t~mem21.offset|))))} #253#return; {16643#false} is VALID [2020-07-18 05:17:48,526 INFO L263 TraceCheckUtils]: 0: Hoare triple {16642#true} call ULTIMATE.init(); {16732#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 05:17:48,526 INFO L280 TraceCheckUtils]: 1: Hoare triple {16732#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {16642#true} is VALID [2020-07-18 05:17:48,526 INFO L280 TraceCheckUtils]: 2: Hoare triple {16642#true} #valid := #valid[0 := 0]; {16642#true} is VALID [2020-07-18 05:17:48,526 INFO L280 TraceCheckUtils]: 3: Hoare triple {16642#true} assume 0 < #StackHeapBarrier; {16642#true} is VALID [2020-07-18 05:17:48,527 INFO L280 TraceCheckUtils]: 4: Hoare triple {16642#true} assume true; {16642#true} is VALID [2020-07-18 05:17:48,527 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {16642#true} {16642#true} #259#return; {16642#true} is VALID [2020-07-18 05:17:48,527 INFO L263 TraceCheckUtils]: 6: Hoare triple {16642#true} call #t~ret24 := main(); {16642#true} is VALID [2020-07-18 05:17:48,527 INFO L263 TraceCheckUtils]: 7: Hoare triple {16642#true} call #t~ret14 := _get_nondet_int(2, 5); {16642#true} is VALID [2020-07-18 05:17:48,527 INFO L280 TraceCheckUtils]: 8: Hoare triple {16642#true} ~from := #in~from; {16642#true} is VALID [2020-07-18 05:17:48,528 INFO L280 TraceCheckUtils]: 9: Hoare triple {16642#true} ~until := #in~until; {16642#true} is VALID [2020-07-18 05:17:48,528 INFO L280 TraceCheckUtils]: 10: Hoare triple {16642#true} ~len~1 := ~from; {16642#true} is VALID [2020-07-18 05:17:48,528 INFO L280 TraceCheckUtils]: 11: Hoare triple {16642#true} #t~short12 := ~len~1 < ~until; {16642#true} is VALID [2020-07-18 05:17:48,528 INFO L280 TraceCheckUtils]: 12: Hoare triple {16642#true} assume #t~short12; {16642#true} is VALID [2020-07-18 05:17:48,528 INFO L280 TraceCheckUtils]: 13: Hoare triple {16642#true} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {16642#true} is VALID [2020-07-18 05:17:48,528 INFO L280 TraceCheckUtils]: 14: Hoare triple {16642#true} #t~short12 := 0 != #t~nondet11; {16642#true} is VALID [2020-07-18 05:17:48,529 INFO L280 TraceCheckUtils]: 15: Hoare triple {16642#true} assume !#t~short12; {16642#true} is VALID [2020-07-18 05:17:48,529 INFO L280 TraceCheckUtils]: 16: Hoare triple {16642#true} havoc #t~nondet11; {16642#true} is VALID [2020-07-18 05:17:48,529 INFO L280 TraceCheckUtils]: 17: Hoare triple {16642#true} havoc #t~short12; {16642#true} is VALID [2020-07-18 05:17:48,529 INFO L280 TraceCheckUtils]: 18: Hoare triple {16642#true} #res := ~len~1; {16642#true} is VALID [2020-07-18 05:17:48,529 INFO L280 TraceCheckUtils]: 19: Hoare triple {16642#true} assume true; {16642#true} is VALID [2020-07-18 05:17:48,529 INFO L275 TraceCheckUtils]: 20: Hoare quadruple {16642#true} {16642#true} #243#return; {16642#true} is VALID [2020-07-18 05:17:48,530 INFO L280 TraceCheckUtils]: 21: Hoare triple {16642#true} assume -2147483648 <= #t~ret14 && #t~ret14 <= 2147483647; {16642#true} is VALID [2020-07-18 05:17:48,530 INFO L280 TraceCheckUtils]: 22: Hoare triple {16642#true} ~len~2 := #t~ret14; {16642#true} is VALID [2020-07-18 05:17:48,530 INFO L280 TraceCheckUtils]: 23: Hoare triple {16642#true} havoc #t~ret14; {16642#true} is VALID [2020-07-18 05:17:48,530 INFO L280 TraceCheckUtils]: 24: Hoare triple {16642#true} SUMMARY for call ~#s~0.base, ~#s~0.offset := #Ultimate.allocOnStack(4); srcloc: L617 {16642#true} is VALID [2020-07-18 05:17:48,532 INFO L263 TraceCheckUtils]: 25: Hoare triple {16642#true} call #t~ret15.base, #t~ret15.offset := sll_create(~len~2); {16733#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-18 05:17:48,532 INFO L280 TraceCheckUtils]: 26: Hoare triple {16733#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~len := #in~len; {16642#true} is VALID [2020-07-18 05:17:48,534 INFO L280 TraceCheckUtils]: 27: Hoare triple {16642#true} ~head~0.base, ~head~0.offset := 0, 0; {16734#(and (= 0 sll_create_~head~0.offset) (= 0 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:48,534 INFO L280 TraceCheckUtils]: 28: Hoare triple {16734#(and (= 0 sll_create_~head~0.offset) (= 0 sll_create_~head~0.base))} #t~post2 := ~len; {16734#(and (= 0 sll_create_~head~0.offset) (= 0 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:48,536 INFO L280 TraceCheckUtils]: 29: Hoare triple {16734#(and (= 0 sll_create_~head~0.offset) (= 0 sll_create_~head~0.base))} ~len := #t~post2 - 1; {16734#(and (= 0 sll_create_~head~0.offset) (= 0 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:48,536 INFO L280 TraceCheckUtils]: 30: Hoare triple {16734#(and (= 0 sll_create_~head~0.offset) (= 0 sll_create_~head~0.base))} assume !!(#t~post2 > 0); {16734#(and (= 0 sll_create_~head~0.offset) (= 0 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:48,539 INFO L280 TraceCheckUtils]: 31: Hoare triple {16734#(and (= 0 sll_create_~head~0.offset) (= 0 sll_create_~head~0.base))} havoc #t~post2; {16734#(and (= 0 sll_create_~head~0.offset) (= 0 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:48,540 INFO L280 TraceCheckUtils]: 32: Hoare triple {16734#(and (= 0 sll_create_~head~0.offset) (= 0 sll_create_~head~0.base))} SUMMARY for call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(4); srcloc: L566 {16735#(and (= 0 sll_create_~head~0.offset) (= 1 (select |#valid| |sll_create_#t~malloc3.base|)) (= 0 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:48,541 INFO L280 TraceCheckUtils]: 33: Hoare triple {16735#(and (= 0 sll_create_~head~0.offset) (= 1 (select |#valid| |sll_create_#t~malloc3.base|)) (= 0 sll_create_~head~0.base))} ~new_head~0.base, ~new_head~0.offset := #t~malloc3.base, #t~malloc3.offset; {16736#(and (= 1 (select |#valid| sll_create_~new_head~0.base)) (= 0 sll_create_~head~0.offset) (= 0 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:48,542 INFO L280 TraceCheckUtils]: 34: Hoare triple {16736#(and (= 1 (select |#valid| sll_create_~new_head~0.base)) (= 0 sll_create_~head~0.offset) (= 0 sll_create_~head~0.base))} assume !(0 == ~new_head~0.base && 0 == ~new_head~0.offset); {16736#(and (= 1 (select |#valid| sll_create_~new_head~0.base)) (= 0 sll_create_~head~0.offset) (= 0 sll_create_~head~0.base))} is VALID [2020-07-18 05:17:48,544 INFO L280 TraceCheckUtils]: 35: Hoare triple {16736#(and (= 1 (select |#valid| sll_create_~new_head~0.base)) (= 0 sll_create_~head~0.offset) (= 0 sll_create_~head~0.base))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4); srcloc: L567-1 {16737#(and (= 1 (select |#valid| sll_create_~new_head~0.base)) (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~new_head~0.base) sll_create_~new_head~0.offset)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~new_head~0.base) sll_create_~new_head~0.offset)))} is VALID [2020-07-18 05:17:48,545 INFO L280 TraceCheckUtils]: 36: Hoare triple {16737#(and (= 1 (select |#valid| sll_create_~new_head~0.base)) (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~new_head~0.base) sll_create_~new_head~0.offset)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~new_head~0.base) sll_create_~new_head~0.offset)))} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset; {16738#(and (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 1 (select |#valid| sll_create_~head~0.base)))} is VALID [2020-07-18 05:17:48,546 INFO L280 TraceCheckUtils]: 37: Hoare triple {16738#(and (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 1 (select |#valid| sll_create_~head~0.base)))} #t~post2 := ~len; {16738#(and (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 1 (select |#valid| sll_create_~head~0.base)))} is VALID [2020-07-18 05:17:48,547 INFO L280 TraceCheckUtils]: 38: Hoare triple {16738#(and (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 1 (select |#valid| sll_create_~head~0.base)))} ~len := #t~post2 - 1; {16738#(and (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 1 (select |#valid| sll_create_~head~0.base)))} is VALID [2020-07-18 05:17:48,547 INFO L280 TraceCheckUtils]: 39: Hoare triple {16738#(and (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 1 (select |#valid| sll_create_~head~0.base)))} assume !!(#t~post2 > 0); {16738#(and (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 1 (select |#valid| sll_create_~head~0.base)))} is VALID [2020-07-18 05:17:48,548 INFO L280 TraceCheckUtils]: 40: Hoare triple {16738#(and (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 1 (select |#valid| sll_create_~head~0.base)))} havoc #t~post2; {16738#(and (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 1 (select |#valid| sll_create_~head~0.base)))} is VALID [2020-07-18 05:17:48,549 INFO L280 TraceCheckUtils]: 41: Hoare triple {16738#(and (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 1 (select |#valid| sll_create_~head~0.base)))} SUMMARY for call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(4); srcloc: L566 {16739#(and (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset)) (not (= sll_create_~head~0.base |sll_create_#t~malloc3.base|)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)))} is VALID [2020-07-18 05:17:48,550 INFO L280 TraceCheckUtils]: 42: Hoare triple {16739#(and (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset)) (not (= sll_create_~head~0.base |sll_create_#t~malloc3.base|)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)))} ~new_head~0.base, ~new_head~0.offset := #t~malloc3.base, #t~malloc3.offset; {16740#(and (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (not (= sll_create_~head~0.base sll_create_~new_head~0.base)))} is VALID [2020-07-18 05:17:48,551 INFO L280 TraceCheckUtils]: 43: Hoare triple {16740#(and (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (not (= sll_create_~head~0.base sll_create_~new_head~0.base)))} assume !(0 == ~new_head~0.base && 0 == ~new_head~0.offset); {16740#(and (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (not (= sll_create_~head~0.base sll_create_~new_head~0.base)))} is VALID [2020-07-18 05:17:48,553 INFO L280 TraceCheckUtils]: 44: Hoare triple {16740#(and (= 0 (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset)) (= 0 (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (not (= sll_create_~head~0.base sll_create_~new_head~0.base)))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4); srcloc: L567-1 {16741#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| sll_create_~new_head~0.base) sll_create_~new_head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~new_head~0.base) sll_create_~new_head~0.offset))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| sll_create_~new_head~0.base) sll_create_~new_head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~new_head~0.base) sll_create_~new_head~0.offset))))} is VALID [2020-07-18 05:17:48,554 INFO L280 TraceCheckUtils]: 45: Hoare triple {16741#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| sll_create_~new_head~0.base) sll_create_~new_head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~new_head~0.base) sll_create_~new_head~0.offset))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| sll_create_~new_head~0.base) sll_create_~new_head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~new_head~0.base) sll_create_~new_head~0.offset))))} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset; {16742#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))))} is VALID [2020-07-18 05:17:48,560 INFO L280 TraceCheckUtils]: 46: Hoare triple {16742#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))))} #t~post2 := ~len; {16742#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))))} is VALID [2020-07-18 05:17:48,561 INFO L280 TraceCheckUtils]: 47: Hoare triple {16742#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))))} ~len := #t~post2 - 1; {16742#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))))} is VALID [2020-07-18 05:17:48,562 INFO L280 TraceCheckUtils]: 48: Hoare triple {16742#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))))} assume !(#t~post2 > 0); {16742#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))))} is VALID [2020-07-18 05:17:48,563 INFO L280 TraceCheckUtils]: 49: Hoare triple {16742#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))))} havoc #t~post2; {16742#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))))} is VALID [2020-07-18 05:17:48,565 INFO L280 TraceCheckUtils]: 50: Hoare triple {16742#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| sll_create_~head~0.base) sll_create_~head~0.offset)) (select (select |#memory_$Pointer$.offset| sll_create_~head~0.base) sll_create_~head~0.offset))))} #res.base, #res.offset := ~head~0.base, ~head~0.offset; {16743#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_create_#res.base|) |sll_create_#res.offset|)) (select (select |#memory_$Pointer$.offset| |sll_create_#res.base|) |sll_create_#res.offset|))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_create_#res.base|) |sll_create_#res.offset|)) (select (select |#memory_$Pointer$.offset| |sll_create_#res.base|) |sll_create_#res.offset|))))} is VALID [2020-07-18 05:17:48,566 INFO L280 TraceCheckUtils]: 51: Hoare triple {16743#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_create_#res.base|) |sll_create_#res.offset|)) (select (select |#memory_$Pointer$.offset| |sll_create_#res.base|) |sll_create_#res.offset|))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_create_#res.base|) |sll_create_#res.offset|)) (select (select |#memory_$Pointer$.offset| |sll_create_#res.base|) |sll_create_#res.offset|))))} assume true; {16743#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_create_#res.base|) |sll_create_#res.offset|)) (select (select |#memory_$Pointer$.offset| |sll_create_#res.base|) |sll_create_#res.offset|))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_create_#res.base|) |sll_create_#res.offset|)) (select (select |#memory_$Pointer$.offset| |sll_create_#res.base|) |sll_create_#res.offset|))))} is VALID [2020-07-18 05:17:48,567 INFO L275 TraceCheckUtils]: 52: Hoare quadruple {16743#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_create_#res.base|) |sll_create_#res.offset|)) (select (select |#memory_$Pointer$.offset| |sll_create_#res.base|) |sll_create_#res.offset|))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_create_#res.base|) |sll_create_#res.offset|)) (select (select |#memory_$Pointer$.offset| |sll_create_#res.base|) |sll_create_#res.offset|))))} {16642#true} #245#return; {16689#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_#t~ret15.base|) |main_#t~ret15.offset|)) (select (select |#memory_$Pointer$.offset| |main_#t~ret15.base|) |main_#t~ret15.offset|))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_#t~ret15.base|) |main_#t~ret15.offset|)) (select (select |#memory_$Pointer$.offset| |main_#t~ret15.base|) |main_#t~ret15.offset|))))} is VALID [2020-07-18 05:17:48,569 INFO L280 TraceCheckUtils]: 53: Hoare triple {16689#(and (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_#t~ret15.base|) |main_#t~ret15.offset|)) (select (select |#memory_$Pointer$.offset| |main_#t~ret15.base|) |main_#t~ret15.offset|))) (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_#t~ret15.base|) |main_#t~ret15.offset|)) (select (select |#memory_$Pointer$.offset| |main_#t~ret15.base|) |main_#t~ret15.offset|))))} SUMMARY for call write~init~$Pointer$(#t~ret15.base, #t~ret15.offset, ~#s~0.base, ~#s~0.offset, 4); srcloc: L617-2 {16690#(and (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))) (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))))} is VALID [2020-07-18 05:17:48,570 INFO L280 TraceCheckUtils]: 54: Hoare triple {16690#(and (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))) (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))))} havoc #t~ret15.base, #t~ret15.offset; {16690#(and (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))) (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))))} is VALID [2020-07-18 05:17:48,570 INFO L263 TraceCheckUtils]: 55: Hoare triple {16690#(and (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))) (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))))} call #t~ret16 := _get_nondet_int(0, ~len~2 - 1); {16642#true} is VALID [2020-07-18 05:17:48,570 INFO L280 TraceCheckUtils]: 56: Hoare triple {16642#true} ~from := #in~from; {16642#true} is VALID [2020-07-18 05:17:48,570 INFO L280 TraceCheckUtils]: 57: Hoare triple {16642#true} ~until := #in~until; {16642#true} is VALID [2020-07-18 05:17:48,570 INFO L280 TraceCheckUtils]: 58: Hoare triple {16642#true} ~len~1 := ~from; {16642#true} is VALID [2020-07-18 05:17:48,571 INFO L280 TraceCheckUtils]: 59: Hoare triple {16642#true} #t~short12 := ~len~1 < ~until; {16642#true} is VALID [2020-07-18 05:17:48,571 INFO L280 TraceCheckUtils]: 60: Hoare triple {16642#true} assume #t~short12; {16642#true} is VALID [2020-07-18 05:17:48,571 INFO L280 TraceCheckUtils]: 61: Hoare triple {16642#true} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {16642#true} is VALID [2020-07-18 05:17:48,571 INFO L280 TraceCheckUtils]: 62: Hoare triple {16642#true} #t~short12 := 0 != #t~nondet11; {16642#true} is VALID [2020-07-18 05:17:48,571 INFO L280 TraceCheckUtils]: 63: Hoare triple {16642#true} assume !#t~short12; {16642#true} is VALID [2020-07-18 05:17:48,572 INFO L280 TraceCheckUtils]: 64: Hoare triple {16642#true} havoc #t~nondet11; {16642#true} is VALID [2020-07-18 05:17:48,572 INFO L280 TraceCheckUtils]: 65: Hoare triple {16642#true} havoc #t~short12; {16642#true} is VALID [2020-07-18 05:17:48,572 INFO L280 TraceCheckUtils]: 66: Hoare triple {16642#true} #res := ~len~1; {16642#true} is VALID [2020-07-18 05:17:48,572 INFO L280 TraceCheckUtils]: 67: Hoare triple {16642#true} assume true; {16642#true} is VALID [2020-07-18 05:17:48,573 INFO L275 TraceCheckUtils]: 68: Hoare quadruple {16642#true} {16690#(and (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))) (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))))} #247#return; {16690#(and (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))) (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))))} is VALID [2020-07-18 05:17:48,574 INFO L280 TraceCheckUtils]: 69: Hoare triple {16690#(and (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))) (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))))} assume -2147483648 <= #t~ret16 && #t~ret16 <= 2147483647; {16690#(and (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))) (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))))} is VALID [2020-07-18 05:17:48,575 INFO L280 TraceCheckUtils]: 70: Hoare triple {16690#(and (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))) (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))))} ~k~0 := #t~ret16; {16690#(and (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))) (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))))} is VALID [2020-07-18 05:17:48,576 INFO L280 TraceCheckUtils]: 71: Hoare triple {16690#(and (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))) (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))))} havoc #t~ret16; {16690#(and (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))) (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))))} is VALID [2020-07-18 05:17:48,577 INFO L280 TraceCheckUtils]: 72: Hoare triple {16690#(and (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))) (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))))} ~i~0 := 0; {16690#(and (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))) (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))))} is VALID [2020-07-18 05:17:48,578 INFO L280 TraceCheckUtils]: 73: Hoare triple {16690#(and (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))) (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))))} #t~short18 := ~i~0 < ~k~0; {16690#(and (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))) (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))))} is VALID [2020-07-18 05:17:48,579 INFO L280 TraceCheckUtils]: 74: Hoare triple {16690#(and (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))) (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))))} assume !#t~short18; {16690#(and (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))) (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))))} is VALID [2020-07-18 05:17:48,580 INFO L280 TraceCheckUtils]: 75: Hoare triple {16690#(and (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))) (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))))} assume !#t~short18; {16690#(and (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))) (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))))} is VALID [2020-07-18 05:17:48,581 INFO L280 TraceCheckUtils]: 76: Hoare triple {16690#(and (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))) (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))))} havoc #t~nondet17; {16690#(and (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))) (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))))} is VALID [2020-07-18 05:17:48,582 INFO L280 TraceCheckUtils]: 77: Hoare triple {16690#(and (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))) (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))))} havoc #t~short18; {16690#(and (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))) (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))))} is VALID [2020-07-18 05:17:48,583 INFO L280 TraceCheckUtils]: 78: Hoare triple {16690#(and (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))) (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|))) (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_~#s~0.base|) |main_~#s~0.offset|)) (select (select |#memory_$Pointer$.offset| |main_~#s~0.base|) |main_~#s~0.offset|)))))} SUMMARY for call #t~mem21.base, #t~mem21.offset := read~$Pointer$(~#s~0.base, ~#s~0.offset, 4); srcloc: L620-12 {16704#(and (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_#t~mem21.base|) |main_#t~mem21.offset|)) (select (select |#memory_$Pointer$.offset| |main_#t~mem21.base|) |main_#t~mem21.offset|))) (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_#t~mem21.base|) |main_#t~mem21.offset|)) (select (select |#memory_$Pointer$.offset| |main_#t~mem21.base|) |main_#t~mem21.offset|))))} is VALID [2020-07-18 05:17:48,583 INFO L263 TraceCheckUtils]: 79: Hoare triple {16704#(and (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_#t~mem21.base|) |main_#t~mem21.offset|)) (select (select |#memory_$Pointer$.offset| |main_#t~mem21.base|) |main_#t~mem21.offset|))) (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_#t~mem21.base|) |main_#t~mem21.offset|)) (select (select |#memory_$Pointer$.offset| |main_#t~mem21.base|) |main_#t~mem21.offset|))))} call #t~ret22 := sll_length(#t~mem21.base, #t~mem21.offset); {16642#true} is VALID [2020-07-18 05:17:48,584 INFO L280 TraceCheckUtils]: 80: Hoare triple {16642#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {16744#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} is VALID [2020-07-18 05:17:48,585 INFO L280 TraceCheckUtils]: 81: Hoare triple {16744#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} ~len~0 := 0; {16744#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} is VALID [2020-07-18 05:17:48,586 INFO L280 TraceCheckUtils]: 82: Hoare triple {16744#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} assume !!(~head.base != 0 || ~head.offset != 0); {16744#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} is VALID [2020-07-18 05:17:48,587 INFO L280 TraceCheckUtils]: 83: Hoare triple {16744#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} #t~post4 := ~len~0; {16744#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} is VALID [2020-07-18 05:17:48,588 INFO L280 TraceCheckUtils]: 84: Hoare triple {16744#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} ~len~0 := 1 + #t~post4; {16744#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} is VALID [2020-07-18 05:17:48,589 INFO L280 TraceCheckUtils]: 85: Hoare triple {16744#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} havoc #t~post4; {16744#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} is VALID [2020-07-18 05:17:48,590 INFO L280 TraceCheckUtils]: 86: Hoare triple {16744#(and (= sll_length_~head.offset |sll_length_#in~head.offset|) (= |sll_length_#in~head.base| sll_length_~head.base))} SUMMARY for call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~head.base, ~head.offset, 4); srcloc: L579 {16745#(and (= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) |sll_length_#t~mem5.base|) (= (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) |sll_length_#t~mem5.offset|))} is VALID [2020-07-18 05:17:48,591 INFO L280 TraceCheckUtils]: 87: Hoare triple {16745#(and (= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) |sll_length_#t~mem5.base|) (= (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) |sll_length_#t~mem5.offset|))} ~head.base, ~head.offset := #t~mem5.base, #t~mem5.offset; {16746#(and (= (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.offset) (= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.base))} is VALID [2020-07-18 05:17:48,592 INFO L280 TraceCheckUtils]: 88: Hoare triple {16746#(and (= (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.offset) (= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.base))} havoc #t~mem5.base, #t~mem5.offset; {16746#(and (= (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.offset) (= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.base))} is VALID [2020-07-18 05:17:48,592 INFO L280 TraceCheckUtils]: 89: Hoare triple {16746#(and (= (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.offset) (= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.base))} assume !!(~head.base != 0 || ~head.offset != 0); {16746#(and (= (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.offset) (= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.base))} is VALID [2020-07-18 05:17:48,593 INFO L280 TraceCheckUtils]: 90: Hoare triple {16746#(and (= (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.offset) (= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.base))} #t~post4 := ~len~0; {16746#(and (= (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.offset) (= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.base))} is VALID [2020-07-18 05:17:48,594 INFO L280 TraceCheckUtils]: 91: Hoare triple {16746#(and (= (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.offset) (= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.base))} ~len~0 := 1 + #t~post4; {16746#(and (= (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.offset) (= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.base))} is VALID [2020-07-18 05:17:48,595 INFO L280 TraceCheckUtils]: 92: Hoare triple {16746#(and (= (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.offset) (= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.base))} havoc #t~post4; {16746#(and (= (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.offset) (= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.base))} is VALID [2020-07-18 05:17:48,596 INFO L280 TraceCheckUtils]: 93: Hoare triple {16746#(and (= (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.offset) (= (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|) sll_length_~head.base))} SUMMARY for call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~head.base, ~head.offset, 4); srcloc: L579 {16747#(and (= |sll_length_#t~mem5.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) |sll_length_#t~mem5.offset|))} is VALID [2020-07-18 05:17:48,597 INFO L280 TraceCheckUtils]: 94: Hoare triple {16747#(and (= |sll_length_#t~mem5.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) |sll_length_#t~mem5.offset|))} ~head.base, ~head.offset := #t~mem5.base, #t~mem5.offset; {16748#(and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) sll_length_~head.offset) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) sll_length_~head.base))} is VALID [2020-07-18 05:17:48,598 INFO L280 TraceCheckUtils]: 95: Hoare triple {16748#(and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) sll_length_~head.offset) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) sll_length_~head.base))} havoc #t~mem5.base, #t~mem5.offset; {16748#(and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) sll_length_~head.offset) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) sll_length_~head.base))} is VALID [2020-07-18 05:17:48,600 INFO L280 TraceCheckUtils]: 96: Hoare triple {16748#(and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) sll_length_~head.offset) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) sll_length_~head.base))} assume !!(~head.base != 0 || ~head.offset != 0); {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} is VALID [2020-07-18 05:17:48,600 INFO L280 TraceCheckUtils]: 97: Hoare triple {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} #t~post4 := ~len~0; {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} is VALID [2020-07-18 05:17:48,601 INFO L280 TraceCheckUtils]: 98: Hoare triple {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} ~len~0 := 1 + #t~post4; {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} is VALID [2020-07-18 05:17:48,602 INFO L280 TraceCheckUtils]: 99: Hoare triple {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} havoc #t~post4; {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} is VALID [2020-07-18 05:17:48,603 INFO L280 TraceCheckUtils]: 100: Hoare triple {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} SUMMARY for call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~head.base, ~head.offset, 4); srcloc: L579 {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} is VALID [2020-07-18 05:17:48,604 INFO L280 TraceCheckUtils]: 101: Hoare triple {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} ~head.base, ~head.offset := #t~mem5.base, #t~mem5.offset; {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} is VALID [2020-07-18 05:17:48,604 INFO L280 TraceCheckUtils]: 102: Hoare triple {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} havoc #t~mem5.base, #t~mem5.offset; {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} is VALID [2020-07-18 05:17:48,605 INFO L280 TraceCheckUtils]: 103: Hoare triple {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} assume !(~head.base != 0 || ~head.offset != 0); {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} is VALID [2020-07-18 05:17:48,606 INFO L280 TraceCheckUtils]: 104: Hoare triple {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} #res := ~len~0; {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} is VALID [2020-07-18 05:17:48,606 INFO L280 TraceCheckUtils]: 105: Hoare triple {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} assume true; {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} is VALID [2020-07-18 05:17:48,608 INFO L275 TraceCheckUtils]: 106: Hoare quadruple {16749#(or (not (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))) (not (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)) (select (select |#memory_$Pointer$.offset| |sll_length_#in~head.base|) |sll_length_#in~head.offset|)))))} {16704#(and (= 0 (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |main_#t~mem21.base|) |main_#t~mem21.offset|)) (select (select |#memory_$Pointer$.offset| |main_#t~mem21.base|) |main_#t~mem21.offset|))) (= 0 (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |main_#t~mem21.base|) |main_#t~mem21.offset|)) (select (select |#memory_$Pointer$.offset| |main_#t~mem21.base|) |main_#t~mem21.offset|))))} #253#return; {16643#false} is VALID [2020-07-18 05:17:48,608 INFO L280 TraceCheckUtils]: 107: Hoare triple {16643#false} assume -2147483648 <= #t~ret22 && #t~ret22 <= 2147483647; {16643#false} is VALID [2020-07-18 05:17:48,608 INFO L280 TraceCheckUtils]: 108: Hoare triple {16643#false} assume ~k~0 + ~len~2 != #t~ret22; {16643#false} is VALID [2020-07-18 05:17:48,608 INFO L280 TraceCheckUtils]: 109: Hoare triple {16643#false} havoc #t~ret22; {16643#false} is VALID [2020-07-18 05:17:48,609 INFO L280 TraceCheckUtils]: 110: Hoare triple {16643#false} havoc #t~mem21.base, #t~mem21.offset; {16643#false} is VALID [2020-07-18 05:17:48,609 INFO L280 TraceCheckUtils]: 111: Hoare triple {16643#false} assume !false; {16643#false} is VALID [2020-07-18 05:17:48,652 INFO L134 CoverageAnalysis]: Checked inductivity of 52 backedges. 0 proven. 39 refuted. 0 times theorem prover too weak. 13 trivial. 0 not checked. [2020-07-18 05:17:48,653 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1213274106] [2020-07-18 05:17:48,653 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2020-07-18 05:17:48,653 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [23] total 23 [2020-07-18 05:17:48,653 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2088790339] [2020-07-18 05:17:48,654 INFO L78 Accepts]: Start accepts. Automaton has 23 states. Word has length 112 [2020-07-18 05:17:48,654 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 05:17:48,654 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 23 states. [2020-07-18 05:17:48,794 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 100 edges. 100 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:17:48,794 INFO L459 AbstractCegarLoop]: Interpolant automaton has 23 states [2020-07-18 05:17:48,795 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 05:17:48,795 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2020-07-18 05:17:48,796 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=45, Invalid=461, Unknown=0, NotChecked=0, Total=506 [2020-07-18 05:17:48,796 INFO L87 Difference]: Start difference. First operand 256 states and 294 transitions. Second operand 23 states. [2020-07-18 05:17:58,893 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:17:58,893 INFO L93 Difference]: Finished difference Result 340 states and 399 transitions. [2020-07-18 05:17:58,893 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2020-07-18 05:17:58,893 INFO L78 Accepts]: Start accepts. Automaton has 23 states. Word has length 112 [2020-07-18 05:17:58,893 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 05:17:58,894 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 23 states. [2020-07-18 05:17:58,897 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 226 transitions. [2020-07-18 05:17:58,897 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 23 states. [2020-07-18 05:17:58,899 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 226 transitions. [2020-07-18 05:17:58,899 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 28 states and 226 transitions. [2020-07-18 05:17:59,254 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 226 edges. 226 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:17:59,263 INFO L225 Difference]: With dead ends: 340 [2020-07-18 05:17:59,264 INFO L226 Difference]: Without dead ends: 330 [2020-07-18 05:17:59,265 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 52 GetRequests, 10 SyntacticMatches, 0 SemanticMatches, 42 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 255 ImplicationChecksByTransitivity, 1.5s TimeCoverageRelationStatistics Valid=172, Invalid=1720, Unknown=0, NotChecked=0, Total=1892 [2020-07-18 05:17:59,265 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 330 states. [2020-07-18 05:18:00,474 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 330 to 297. [2020-07-18 05:18:00,475 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 05:18:00,475 INFO L82 GeneralOperation]: Start isEquivalent. First operand 330 states. Second operand 297 states. [2020-07-18 05:18:00,475 INFO L74 IsIncluded]: Start isIncluded. First operand 330 states. Second operand 297 states. [2020-07-18 05:18:00,475 INFO L87 Difference]: Start difference. First operand 330 states. Second operand 297 states. [2020-07-18 05:18:00,485 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:18:00,486 INFO L93 Difference]: Finished difference Result 330 states and 387 transitions. [2020-07-18 05:18:00,486 INFO L276 IsEmpty]: Start isEmpty. Operand 330 states and 387 transitions. [2020-07-18 05:18:00,487 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 05:18:00,487 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 05:18:00,487 INFO L74 IsIncluded]: Start isIncluded. First operand 297 states. Second operand 330 states. [2020-07-18 05:18:00,488 INFO L87 Difference]: Start difference. First operand 297 states. Second operand 330 states. [2020-07-18 05:18:00,498 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:18:00,498 INFO L93 Difference]: Finished difference Result 330 states and 387 transitions. [2020-07-18 05:18:00,498 INFO L276 IsEmpty]: Start isEmpty. Operand 330 states and 387 transitions. [2020-07-18 05:18:00,500 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 05:18:00,500 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 05:18:00,500 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 05:18:00,500 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 05:18:00,500 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 297 states. [2020-07-18 05:18:00,509 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 297 states to 297 states and 346 transitions. [2020-07-18 05:18:00,509 INFO L78 Accepts]: Start accepts. Automaton has 297 states and 346 transitions. Word has length 112 [2020-07-18 05:18:00,509 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 05:18:00,510 INFO L479 AbstractCegarLoop]: Abstraction has 297 states and 346 transitions. [2020-07-18 05:18:00,510 INFO L480 AbstractCegarLoop]: Interpolant automaton has 23 states. [2020-07-18 05:18:00,510 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 297 states and 346 transitions. [2020-07-18 05:18:01,327 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 346 edges. 346 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:18:01,327 INFO L276 IsEmpty]: Start isEmpty. Operand 297 states and 346 transitions. [2020-07-18 05:18:01,329 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 114 [2020-07-18 05:18:01,329 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 05:18:01,329 INFO L422 BasicCegarLoop]: trace histogram [3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 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] [2020-07-18 05:18:01,330 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable11 [2020-07-18 05:18:01,330 INFO L427 AbstractCegarLoop]: === Iteration 13 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 05:18:01,330 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 05:18:01,330 INFO L82 PathProgramCache]: Analyzing trace with hash -861453783, now seen corresponding path program 2 times [2020-07-18 05:18:01,330 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 05:18:01,330 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1805880757] [2020-07-18 05:18:01,331 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 05:18:01,346 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:18:01,417 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:18:01,420 INFO L280 TraceCheckUtils]: 0: Hoare triple {18821#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {18729#true} is VALID [2020-07-18 05:18:01,420 INFO L280 TraceCheckUtils]: 1: Hoare triple {18729#true} #valid := #valid[0 := 0]; {18729#true} is VALID [2020-07-18 05:18:01,421 INFO L280 TraceCheckUtils]: 2: Hoare triple {18729#true} assume 0 < #StackHeapBarrier; {18729#true} is VALID [2020-07-18 05:18:01,421 INFO L280 TraceCheckUtils]: 3: Hoare triple {18729#true} assume true; {18729#true} is VALID [2020-07-18 05:18:01,421 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {18729#true} {18729#true} #259#return; {18729#true} is VALID [2020-07-18 05:18:01,422 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:18:01,426 INFO L280 TraceCheckUtils]: 0: Hoare triple {18729#true} ~from := #in~from; {18729#true} is VALID [2020-07-18 05:18:01,426 INFO L280 TraceCheckUtils]: 1: Hoare triple {18729#true} ~until := #in~until; {18729#true} is VALID [2020-07-18 05:18:01,426 INFO L280 TraceCheckUtils]: 2: Hoare triple {18729#true} ~len~1 := ~from; {18729#true} is VALID [2020-07-18 05:18:01,426 INFO L280 TraceCheckUtils]: 3: Hoare triple {18729#true} #t~short12 := ~len~1 < ~until; {18729#true} is VALID [2020-07-18 05:18:01,426 INFO L280 TraceCheckUtils]: 4: Hoare triple {18729#true} assume #t~short12; {18729#true} is VALID [2020-07-18 05:18:01,427 INFO L280 TraceCheckUtils]: 5: Hoare triple {18729#true} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {18729#true} is VALID [2020-07-18 05:18:01,427 INFO L280 TraceCheckUtils]: 6: Hoare triple {18729#true} #t~short12 := 0 != #t~nondet11; {18729#true} is VALID [2020-07-18 05:18:01,427 INFO L280 TraceCheckUtils]: 7: Hoare triple {18729#true} assume !#t~short12; {18729#true} is VALID [2020-07-18 05:18:01,427 INFO L280 TraceCheckUtils]: 8: Hoare triple {18729#true} havoc #t~nondet11; {18729#true} is VALID [2020-07-18 05:18:01,427 INFO L280 TraceCheckUtils]: 9: Hoare triple {18729#true} havoc #t~short12; {18729#true} is VALID [2020-07-18 05:18:01,427 INFO L280 TraceCheckUtils]: 10: Hoare triple {18729#true} #res := ~len~1; {18729#true} is VALID [2020-07-18 05:18:01,428 INFO L280 TraceCheckUtils]: 11: Hoare triple {18729#true} assume true; {18729#true} is VALID [2020-07-18 05:18:01,428 INFO L275 TraceCheckUtils]: 12: Hoare quadruple {18729#true} {18729#true} #243#return; {18729#true} is VALID [2020-07-18 05:18:01,445 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:18:01,452 INFO L280 TraceCheckUtils]: 0: Hoare triple {18822#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~len := #in~len; {18729#true} is VALID [2020-07-18 05:18:01,453 INFO L280 TraceCheckUtils]: 1: Hoare triple {18729#true} ~head~0.base, ~head~0.offset := 0, 0; {18729#true} is VALID [2020-07-18 05:18:01,453 INFO L280 TraceCheckUtils]: 2: Hoare triple {18729#true} #t~post2 := ~len; {18729#true} is VALID [2020-07-18 05:18:01,453 INFO L280 TraceCheckUtils]: 3: Hoare triple {18729#true} ~len := #t~post2 - 1; {18729#true} is VALID [2020-07-18 05:18:01,453 INFO L280 TraceCheckUtils]: 4: Hoare triple {18729#true} assume !!(#t~post2 > 0); {18729#true} is VALID [2020-07-18 05:18:01,453 INFO L280 TraceCheckUtils]: 5: Hoare triple {18729#true} havoc #t~post2; {18729#true} is VALID [2020-07-18 05:18:01,454 INFO L280 TraceCheckUtils]: 6: Hoare triple {18729#true} SUMMARY for call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(4); srcloc: L566 {18729#true} is VALID [2020-07-18 05:18:01,454 INFO L280 TraceCheckUtils]: 7: Hoare triple {18729#true} ~new_head~0.base, ~new_head~0.offset := #t~malloc3.base, #t~malloc3.offset; {18729#true} is VALID [2020-07-18 05:18:01,454 INFO L280 TraceCheckUtils]: 8: Hoare triple {18729#true} assume !(0 == ~new_head~0.base && 0 == ~new_head~0.offset); {18729#true} is VALID [2020-07-18 05:18:01,454 INFO L280 TraceCheckUtils]: 9: Hoare triple {18729#true} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4); srcloc: L567-1 {18729#true} is VALID [2020-07-18 05:18:01,454 INFO L280 TraceCheckUtils]: 10: Hoare triple {18729#true} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset; {18729#true} is VALID [2020-07-18 05:18:01,455 INFO L280 TraceCheckUtils]: 11: Hoare triple {18729#true} #t~post2 := ~len; {18729#true} is VALID [2020-07-18 05:18:01,455 INFO L280 TraceCheckUtils]: 12: Hoare triple {18729#true} ~len := #t~post2 - 1; {18729#true} is VALID [2020-07-18 05:18:01,455 INFO L280 TraceCheckUtils]: 13: Hoare triple {18729#true} assume !!(#t~post2 > 0); {18729#true} is VALID [2020-07-18 05:18:01,455 INFO L280 TraceCheckUtils]: 14: Hoare triple {18729#true} havoc #t~post2; {18729#true} is VALID [2020-07-18 05:18:01,456 INFO L280 TraceCheckUtils]: 15: Hoare triple {18729#true} SUMMARY for call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(4); srcloc: L566 {18729#true} is VALID [2020-07-18 05:18:01,456 INFO L280 TraceCheckUtils]: 16: Hoare triple {18729#true} ~new_head~0.base, ~new_head~0.offset := #t~malloc3.base, #t~malloc3.offset; {18729#true} is VALID [2020-07-18 05:18:01,456 INFO L280 TraceCheckUtils]: 17: Hoare triple {18729#true} assume !(0 == ~new_head~0.base && 0 == ~new_head~0.offset); {18729#true} is VALID [2020-07-18 05:18:01,456 INFO L280 TraceCheckUtils]: 18: Hoare triple {18729#true} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4); srcloc: L567-1 {18729#true} is VALID [2020-07-18 05:18:01,456 INFO L280 TraceCheckUtils]: 19: Hoare triple {18729#true} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset; {18729#true} is VALID [2020-07-18 05:18:01,457 INFO L280 TraceCheckUtils]: 20: Hoare triple {18729#true} #t~post2 := ~len; {18729#true} is VALID [2020-07-18 05:18:01,457 INFO L280 TraceCheckUtils]: 21: Hoare triple {18729#true} ~len := #t~post2 - 1; {18729#true} is VALID [2020-07-18 05:18:01,457 INFO L280 TraceCheckUtils]: 22: Hoare triple {18729#true} assume !(#t~post2 > 0); {18729#true} is VALID [2020-07-18 05:18:01,457 INFO L280 TraceCheckUtils]: 23: Hoare triple {18729#true} havoc #t~post2; {18729#true} is VALID [2020-07-18 05:18:01,457 INFO L280 TraceCheckUtils]: 24: Hoare triple {18729#true} #res.base, #res.offset := ~head~0.base, ~head~0.offset; {18729#true} is VALID [2020-07-18 05:18:01,458 INFO L280 TraceCheckUtils]: 25: Hoare triple {18729#true} assume true; {18729#true} is VALID [2020-07-18 05:18:01,458 INFO L275 TraceCheckUtils]: 26: Hoare quadruple {18729#true} {18729#true} #245#return; {18729#true} is VALID [2020-07-18 05:18:01,461 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:18:01,658 INFO L280 TraceCheckUtils]: 0: Hoare triple {18729#true} ~from := #in~from; {18823#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:18:01,659 INFO L280 TraceCheckUtils]: 1: Hoare triple {18823#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~until := #in~until; {18823#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:18:01,660 INFO L280 TraceCheckUtils]: 2: Hoare triple {18823#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~len~1 := ~from; {18824#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} is VALID [2020-07-18 05:18:01,661 INFO L280 TraceCheckUtils]: 3: Hoare triple {18824#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} #t~short12 := ~len~1 < ~until; {18825#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until) (not |_get_nondet_int_#t~short12|))} is VALID [2020-07-18 05:18:01,662 INFO L280 TraceCheckUtils]: 4: Hoare triple {18825#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until) (not |_get_nondet_int_#t~short12|))} assume #t~short12; {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} is VALID [2020-07-18 05:18:01,664 INFO L280 TraceCheckUtils]: 5: Hoare triple {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} is VALID [2020-07-18 05:18:01,664 INFO L280 TraceCheckUtils]: 6: Hoare triple {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} #t~short12 := 0 != #t~nondet11; {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} is VALID [2020-07-18 05:18:01,665 INFO L280 TraceCheckUtils]: 7: Hoare triple {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} assume !!#t~short12; {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} is VALID [2020-07-18 05:18:01,666 INFO L280 TraceCheckUtils]: 8: Hoare triple {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} havoc #t~nondet11; {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} is VALID [2020-07-18 05:18:01,667 INFO L280 TraceCheckUtils]: 9: Hoare triple {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} havoc #t~short12; {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} is VALID [2020-07-18 05:18:01,669 INFO L280 TraceCheckUtils]: 10: Hoare triple {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} #t~post13 := ~len~1; {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} is VALID [2020-07-18 05:18:01,674 INFO L280 TraceCheckUtils]: 11: Hoare triple {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} ~len~1 := 1 + #t~post13; {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} is VALID [2020-07-18 05:18:01,675 INFO L280 TraceCheckUtils]: 12: Hoare triple {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} havoc #t~post13; {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} is VALID [2020-07-18 05:18:01,677 INFO L280 TraceCheckUtils]: 13: Hoare triple {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} #t~short12 := ~len~1 < ~until; {18827#(or |_get_nondet_int_#t~short12| (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~len~1))} is VALID [2020-07-18 05:18:01,678 INFO L280 TraceCheckUtils]: 14: Hoare triple {18827#(or |_get_nondet_int_#t~short12| (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~len~1))} assume !#t~short12; {18828#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~len~1))} is VALID [2020-07-18 05:18:01,678 INFO L280 TraceCheckUtils]: 15: Hoare triple {18828#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~len~1))} assume !#t~short12; {18828#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~len~1))} is VALID [2020-07-18 05:18:01,679 INFO L280 TraceCheckUtils]: 16: Hoare triple {18828#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~len~1))} havoc #t~nondet11; {18828#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~len~1))} is VALID [2020-07-18 05:18:01,680 INFO L280 TraceCheckUtils]: 17: Hoare triple {18828#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~len~1))} havoc #t~short12; {18828#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~len~1))} is VALID [2020-07-18 05:18:01,681 INFO L280 TraceCheckUtils]: 18: Hoare triple {18828#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~len~1))} #res := ~len~1; {18829#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 |_get_nondet_int_#res|))} is VALID [2020-07-18 05:18:01,681 INFO L280 TraceCheckUtils]: 19: Hoare triple {18829#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 |_get_nondet_int_#res|))} assume true; {18829#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 |_get_nondet_int_#res|))} is VALID [2020-07-18 05:18:01,682 INFO L275 TraceCheckUtils]: 20: Hoare quadruple {18829#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 |_get_nondet_int_#res|))} {18729#true} #247#return; {18797#(<= 1 |main_#t~ret16|)} is VALID [2020-07-18 05:18:01,686 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:18:01,690 INFO L280 TraceCheckUtils]: 0: Hoare triple {18729#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {18729#true} is VALID [2020-07-18 05:18:01,690 INFO L280 TraceCheckUtils]: 1: Hoare triple {18729#true} ~len~0 := 0; {18729#true} is VALID [2020-07-18 05:18:01,691 INFO L280 TraceCheckUtils]: 2: Hoare triple {18729#true} assume !!(~head.base != 0 || ~head.offset != 0); {18729#true} is VALID [2020-07-18 05:18:01,691 INFO L280 TraceCheckUtils]: 3: Hoare triple {18729#true} #t~post4 := ~len~0; {18729#true} is VALID [2020-07-18 05:18:01,691 INFO L280 TraceCheckUtils]: 4: Hoare triple {18729#true} ~len~0 := 1 + #t~post4; {18729#true} is VALID [2020-07-18 05:18:01,691 INFO L280 TraceCheckUtils]: 5: Hoare triple {18729#true} havoc #t~post4; {18729#true} is VALID [2020-07-18 05:18:01,691 INFO L280 TraceCheckUtils]: 6: Hoare triple {18729#true} SUMMARY for call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~head.base, ~head.offset, 4); srcloc: L579 {18729#true} is VALID [2020-07-18 05:18:01,692 INFO L280 TraceCheckUtils]: 7: Hoare triple {18729#true} ~head.base, ~head.offset := #t~mem5.base, #t~mem5.offset; {18729#true} is VALID [2020-07-18 05:18:01,692 INFO L280 TraceCheckUtils]: 8: Hoare triple {18729#true} havoc #t~mem5.base, #t~mem5.offset; {18729#true} is VALID [2020-07-18 05:18:01,692 INFO L280 TraceCheckUtils]: 9: Hoare triple {18729#true} assume !!(~head.base != 0 || ~head.offset != 0); {18729#true} is VALID [2020-07-18 05:18:01,692 INFO L280 TraceCheckUtils]: 10: Hoare triple {18729#true} #t~post4 := ~len~0; {18729#true} is VALID [2020-07-18 05:18:01,693 INFO L280 TraceCheckUtils]: 11: Hoare triple {18729#true} ~len~0 := 1 + #t~post4; {18729#true} is VALID [2020-07-18 05:18:01,693 INFO L280 TraceCheckUtils]: 12: Hoare triple {18729#true} havoc #t~post4; {18729#true} is VALID [2020-07-18 05:18:01,693 INFO L280 TraceCheckUtils]: 13: Hoare triple {18729#true} SUMMARY for call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~head.base, ~head.offset, 4); srcloc: L579 {18729#true} is VALID [2020-07-18 05:18:01,693 INFO L280 TraceCheckUtils]: 14: Hoare triple {18729#true} ~head.base, ~head.offset := #t~mem5.base, #t~mem5.offset; {18729#true} is VALID [2020-07-18 05:18:01,694 INFO L280 TraceCheckUtils]: 15: Hoare triple {18729#true} havoc #t~mem5.base, #t~mem5.offset; {18729#true} is VALID [2020-07-18 05:18:01,694 INFO L280 TraceCheckUtils]: 16: Hoare triple {18729#true} assume !(~head.base != 0 || ~head.offset != 0); {18729#true} is VALID [2020-07-18 05:18:01,694 INFO L280 TraceCheckUtils]: 17: Hoare triple {18729#true} #res := ~len~0; {18729#true} is VALID [2020-07-18 05:18:01,694 INFO L280 TraceCheckUtils]: 18: Hoare triple {18729#true} assume true; {18729#true} is VALID [2020-07-18 05:18:01,694 INFO L275 TraceCheckUtils]: 19: Hoare quadruple {18729#true} {18730#false} #253#return; {18730#false} is VALID [2020-07-18 05:18:01,696 INFO L263 TraceCheckUtils]: 0: Hoare triple {18729#true} call ULTIMATE.init(); {18821#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 05:18:01,696 INFO L280 TraceCheckUtils]: 1: Hoare triple {18821#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {18729#true} is VALID [2020-07-18 05:18:01,696 INFO L280 TraceCheckUtils]: 2: Hoare triple {18729#true} #valid := #valid[0 := 0]; {18729#true} is VALID [2020-07-18 05:18:01,696 INFO L280 TraceCheckUtils]: 3: Hoare triple {18729#true} assume 0 < #StackHeapBarrier; {18729#true} is VALID [2020-07-18 05:18:01,696 INFO L280 TraceCheckUtils]: 4: Hoare triple {18729#true} assume true; {18729#true} is VALID [2020-07-18 05:18:01,697 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {18729#true} {18729#true} #259#return; {18729#true} is VALID [2020-07-18 05:18:01,697 INFO L263 TraceCheckUtils]: 6: Hoare triple {18729#true} call #t~ret24 := main(); {18729#true} is VALID [2020-07-18 05:18:01,697 INFO L263 TraceCheckUtils]: 7: Hoare triple {18729#true} call #t~ret14 := _get_nondet_int(2, 5); {18729#true} is VALID [2020-07-18 05:18:01,697 INFO L280 TraceCheckUtils]: 8: Hoare triple {18729#true} ~from := #in~from; {18729#true} is VALID [2020-07-18 05:18:01,698 INFO L280 TraceCheckUtils]: 9: Hoare triple {18729#true} ~until := #in~until; {18729#true} is VALID [2020-07-18 05:18:01,698 INFO L280 TraceCheckUtils]: 10: Hoare triple {18729#true} ~len~1 := ~from; {18729#true} is VALID [2020-07-18 05:18:01,698 INFO L280 TraceCheckUtils]: 11: Hoare triple {18729#true} #t~short12 := ~len~1 < ~until; {18729#true} is VALID [2020-07-18 05:18:01,698 INFO L280 TraceCheckUtils]: 12: Hoare triple {18729#true} assume #t~short12; {18729#true} is VALID [2020-07-18 05:18:01,698 INFO L280 TraceCheckUtils]: 13: Hoare triple {18729#true} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {18729#true} is VALID [2020-07-18 05:18:01,699 INFO L280 TraceCheckUtils]: 14: Hoare triple {18729#true} #t~short12 := 0 != #t~nondet11; {18729#true} is VALID [2020-07-18 05:18:01,699 INFO L280 TraceCheckUtils]: 15: Hoare triple {18729#true} assume !#t~short12; {18729#true} is VALID [2020-07-18 05:18:01,699 INFO L280 TraceCheckUtils]: 16: Hoare triple {18729#true} havoc #t~nondet11; {18729#true} is VALID [2020-07-18 05:18:01,699 INFO L280 TraceCheckUtils]: 17: Hoare triple {18729#true} havoc #t~short12; {18729#true} is VALID [2020-07-18 05:18:01,699 INFO L280 TraceCheckUtils]: 18: Hoare triple {18729#true} #res := ~len~1; {18729#true} is VALID [2020-07-18 05:18:01,699 INFO L280 TraceCheckUtils]: 19: Hoare triple {18729#true} assume true; {18729#true} is VALID [2020-07-18 05:18:01,700 INFO L275 TraceCheckUtils]: 20: Hoare quadruple {18729#true} {18729#true} #243#return; {18729#true} is VALID [2020-07-18 05:18:01,700 INFO L280 TraceCheckUtils]: 21: Hoare triple {18729#true} assume -2147483648 <= #t~ret14 && #t~ret14 <= 2147483647; {18729#true} is VALID [2020-07-18 05:18:01,700 INFO L280 TraceCheckUtils]: 22: Hoare triple {18729#true} ~len~2 := #t~ret14; {18729#true} is VALID [2020-07-18 05:18:01,700 INFO L280 TraceCheckUtils]: 23: Hoare triple {18729#true} havoc #t~ret14; {18729#true} is VALID [2020-07-18 05:18:01,700 INFO L280 TraceCheckUtils]: 24: Hoare triple {18729#true} SUMMARY for call ~#s~0.base, ~#s~0.offset := #Ultimate.allocOnStack(4); srcloc: L617 {18729#true} is VALID [2020-07-18 05:18:01,702 INFO L263 TraceCheckUtils]: 25: Hoare triple {18729#true} call #t~ret15.base, #t~ret15.offset := sll_create(~len~2); {18822#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-18 05:18:01,702 INFO L280 TraceCheckUtils]: 26: Hoare triple {18822#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~len := #in~len; {18729#true} is VALID [2020-07-18 05:18:01,702 INFO L280 TraceCheckUtils]: 27: Hoare triple {18729#true} ~head~0.base, ~head~0.offset := 0, 0; {18729#true} is VALID [2020-07-18 05:18:01,702 INFO L280 TraceCheckUtils]: 28: Hoare triple {18729#true} #t~post2 := ~len; {18729#true} is VALID [2020-07-18 05:18:01,702 INFO L280 TraceCheckUtils]: 29: Hoare triple {18729#true} ~len := #t~post2 - 1; {18729#true} is VALID [2020-07-18 05:18:01,703 INFO L280 TraceCheckUtils]: 30: Hoare triple {18729#true} assume !!(#t~post2 > 0); {18729#true} is VALID [2020-07-18 05:18:01,703 INFO L280 TraceCheckUtils]: 31: Hoare triple {18729#true} havoc #t~post2; {18729#true} is VALID [2020-07-18 05:18:01,703 INFO L280 TraceCheckUtils]: 32: Hoare triple {18729#true} SUMMARY for call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(4); srcloc: L566 {18729#true} is VALID [2020-07-18 05:18:01,703 INFO L280 TraceCheckUtils]: 33: Hoare triple {18729#true} ~new_head~0.base, ~new_head~0.offset := #t~malloc3.base, #t~malloc3.offset; {18729#true} is VALID [2020-07-18 05:18:01,703 INFO L280 TraceCheckUtils]: 34: Hoare triple {18729#true} assume !(0 == ~new_head~0.base && 0 == ~new_head~0.offset); {18729#true} is VALID [2020-07-18 05:18:01,704 INFO L280 TraceCheckUtils]: 35: Hoare triple {18729#true} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4); srcloc: L567-1 {18729#true} is VALID [2020-07-18 05:18:01,704 INFO L280 TraceCheckUtils]: 36: Hoare triple {18729#true} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset; {18729#true} is VALID [2020-07-18 05:18:01,704 INFO L280 TraceCheckUtils]: 37: Hoare triple {18729#true} #t~post2 := ~len; {18729#true} is VALID [2020-07-18 05:18:01,704 INFO L280 TraceCheckUtils]: 38: Hoare triple {18729#true} ~len := #t~post2 - 1; {18729#true} is VALID [2020-07-18 05:18:01,704 INFO L280 TraceCheckUtils]: 39: Hoare triple {18729#true} assume !!(#t~post2 > 0); {18729#true} is VALID [2020-07-18 05:18:01,704 INFO L280 TraceCheckUtils]: 40: Hoare triple {18729#true} havoc #t~post2; {18729#true} is VALID [2020-07-18 05:18:01,705 INFO L280 TraceCheckUtils]: 41: Hoare triple {18729#true} SUMMARY for call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(4); srcloc: L566 {18729#true} is VALID [2020-07-18 05:18:01,705 INFO L280 TraceCheckUtils]: 42: Hoare triple {18729#true} ~new_head~0.base, ~new_head~0.offset := #t~malloc3.base, #t~malloc3.offset; {18729#true} is VALID [2020-07-18 05:18:01,705 INFO L280 TraceCheckUtils]: 43: Hoare triple {18729#true} assume !(0 == ~new_head~0.base && 0 == ~new_head~0.offset); {18729#true} is VALID [2020-07-18 05:18:01,705 INFO L280 TraceCheckUtils]: 44: Hoare triple {18729#true} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4); srcloc: L567-1 {18729#true} is VALID [2020-07-18 05:18:01,706 INFO L280 TraceCheckUtils]: 45: Hoare triple {18729#true} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset; {18729#true} is VALID [2020-07-18 05:18:01,706 INFO L280 TraceCheckUtils]: 46: Hoare triple {18729#true} #t~post2 := ~len; {18729#true} is VALID [2020-07-18 05:18:01,706 INFO L280 TraceCheckUtils]: 47: Hoare triple {18729#true} ~len := #t~post2 - 1; {18729#true} is VALID [2020-07-18 05:18:01,707 INFO L280 TraceCheckUtils]: 48: Hoare triple {18729#true} assume !(#t~post2 > 0); {18729#true} is VALID [2020-07-18 05:18:01,707 INFO L280 TraceCheckUtils]: 49: Hoare triple {18729#true} havoc #t~post2; {18729#true} is VALID [2020-07-18 05:18:01,707 INFO L280 TraceCheckUtils]: 50: Hoare triple {18729#true} #res.base, #res.offset := ~head~0.base, ~head~0.offset; {18729#true} is VALID [2020-07-18 05:18:01,708 INFO L280 TraceCheckUtils]: 51: Hoare triple {18729#true} assume true; {18729#true} is VALID [2020-07-18 05:18:01,708 INFO L275 TraceCheckUtils]: 52: Hoare quadruple {18729#true} {18729#true} #245#return; {18729#true} is VALID [2020-07-18 05:18:01,708 INFO L280 TraceCheckUtils]: 53: Hoare triple {18729#true} SUMMARY for call write~init~$Pointer$(#t~ret15.base, #t~ret15.offset, ~#s~0.base, ~#s~0.offset, 4); srcloc: L617-2 {18729#true} is VALID [2020-07-18 05:18:01,708 INFO L280 TraceCheckUtils]: 54: Hoare triple {18729#true} havoc #t~ret15.base, #t~ret15.offset; {18729#true} is VALID [2020-07-18 05:18:01,709 INFO L263 TraceCheckUtils]: 55: Hoare triple {18729#true} call #t~ret16 := _get_nondet_int(0, ~len~2 - 1); {18729#true} is VALID [2020-07-18 05:18:01,710 INFO L280 TraceCheckUtils]: 56: Hoare triple {18729#true} ~from := #in~from; {18823#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:18:01,711 INFO L280 TraceCheckUtils]: 57: Hoare triple {18823#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~until := #in~until; {18823#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:18:01,712 INFO L280 TraceCheckUtils]: 58: Hoare triple {18823#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~len~1 := ~from; {18824#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} is VALID [2020-07-18 05:18:01,713 INFO L280 TraceCheckUtils]: 59: Hoare triple {18824#(or (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|) (= 0 _get_nondet_int_~len~1))} #t~short12 := ~len~1 < ~until; {18825#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until) (not |_get_nondet_int_#t~short12|))} is VALID [2020-07-18 05:18:01,715 INFO L280 TraceCheckUtils]: 60: Hoare triple {18825#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until) (not |_get_nondet_int_#t~short12|))} assume #t~short12; {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} is VALID [2020-07-18 05:18:01,715 INFO L280 TraceCheckUtils]: 61: Hoare triple {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} is VALID [2020-07-18 05:18:01,716 INFO L280 TraceCheckUtils]: 62: Hoare triple {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} #t~short12 := 0 != #t~nondet11; {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} is VALID [2020-07-18 05:18:01,717 INFO L280 TraceCheckUtils]: 63: Hoare triple {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} assume !!#t~short12; {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} is VALID [2020-07-18 05:18:01,718 INFO L280 TraceCheckUtils]: 64: Hoare triple {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} havoc #t~nondet11; {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} is VALID [2020-07-18 05:18:01,719 INFO L280 TraceCheckUtils]: 65: Hoare triple {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} havoc #t~short12; {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} is VALID [2020-07-18 05:18:01,720 INFO L280 TraceCheckUtils]: 66: Hoare triple {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} #t~post13 := ~len~1; {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} is VALID [2020-07-18 05:18:01,721 INFO L280 TraceCheckUtils]: 67: Hoare triple {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} ~len~1 := 1 + #t~post13; {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} is VALID [2020-07-18 05:18:01,722 INFO L280 TraceCheckUtils]: 68: Hoare triple {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} havoc #t~post13; {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} is VALID [2020-07-18 05:18:01,723 INFO L280 TraceCheckUtils]: 69: Hoare triple {18826#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~until))} #t~short12 := ~len~1 < ~until; {18827#(or |_get_nondet_int_#t~short12| (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~len~1))} is VALID [2020-07-18 05:18:01,724 INFO L280 TraceCheckUtils]: 70: Hoare triple {18827#(or |_get_nondet_int_#t~short12| (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~len~1))} assume !#t~short12; {18828#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~len~1))} is VALID [2020-07-18 05:18:01,725 INFO L280 TraceCheckUtils]: 71: Hoare triple {18828#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~len~1))} assume !#t~short12; {18828#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~len~1))} is VALID [2020-07-18 05:18:01,726 INFO L280 TraceCheckUtils]: 72: Hoare triple {18828#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~len~1))} havoc #t~nondet11; {18828#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~len~1))} is VALID [2020-07-18 05:18:01,727 INFO L280 TraceCheckUtils]: 73: Hoare triple {18828#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~len~1))} havoc #t~short12; {18828#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~len~1))} is VALID [2020-07-18 05:18:01,728 INFO L280 TraceCheckUtils]: 74: Hoare triple {18828#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 _get_nondet_int_~len~1))} #res := ~len~1; {18829#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 |_get_nondet_int_#res|))} is VALID [2020-07-18 05:18:01,729 INFO L280 TraceCheckUtils]: 75: Hoare triple {18829#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 |_get_nondet_int_#res|))} assume true; {18829#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 |_get_nondet_int_#res|))} is VALID [2020-07-18 05:18:01,731 INFO L275 TraceCheckUtils]: 76: Hoare quadruple {18829#(or (not (= 0 |_get_nondet_int_#in~from|)) (<= 1 |_get_nondet_int_#res|))} {18729#true} #247#return; {18797#(<= 1 |main_#t~ret16|)} is VALID [2020-07-18 05:18:01,731 INFO L280 TraceCheckUtils]: 77: Hoare triple {18797#(<= 1 |main_#t~ret16|)} assume -2147483648 <= #t~ret16 && #t~ret16 <= 2147483647; {18797#(<= 1 |main_#t~ret16|)} is VALID [2020-07-18 05:18:01,732 INFO L280 TraceCheckUtils]: 78: Hoare triple {18797#(<= 1 |main_#t~ret16|)} ~k~0 := #t~ret16; {18798#(<= 1 main_~k~0)} is VALID [2020-07-18 05:18:01,733 INFO L280 TraceCheckUtils]: 79: Hoare triple {18798#(<= 1 main_~k~0)} havoc #t~ret16; {18798#(<= 1 main_~k~0)} is VALID [2020-07-18 05:18:01,734 INFO L280 TraceCheckUtils]: 80: Hoare triple {18798#(<= 1 main_~k~0)} ~i~0 := 0; {18799#(and (<= 1 main_~k~0) (= 0 main_~i~0))} is VALID [2020-07-18 05:18:01,735 INFO L280 TraceCheckUtils]: 81: Hoare triple {18799#(and (<= 1 main_~k~0) (= 0 main_~i~0))} #t~short18 := ~i~0 < ~k~0; {18800#|main_#t~short18|} is VALID [2020-07-18 05:18:01,736 INFO L280 TraceCheckUtils]: 82: Hoare triple {18800#|main_#t~short18|} assume !#t~short18; {18730#false} is VALID [2020-07-18 05:18:01,736 INFO L280 TraceCheckUtils]: 83: Hoare triple {18730#false} assume !#t~short18; {18730#false} is VALID [2020-07-18 05:18:01,737 INFO L280 TraceCheckUtils]: 84: Hoare triple {18730#false} havoc #t~nondet17; {18730#false} is VALID [2020-07-18 05:18:01,737 INFO L280 TraceCheckUtils]: 85: Hoare triple {18730#false} havoc #t~short18; {18730#false} is VALID [2020-07-18 05:18:01,737 INFO L280 TraceCheckUtils]: 86: Hoare triple {18730#false} SUMMARY for call #t~mem21.base, #t~mem21.offset := read~$Pointer$(~#s~0.base, ~#s~0.offset, 4); srcloc: L620-12 {18730#false} is VALID [2020-07-18 05:18:01,738 INFO L263 TraceCheckUtils]: 87: Hoare triple {18730#false} call #t~ret22 := sll_length(#t~mem21.base, #t~mem21.offset); {18729#true} is VALID [2020-07-18 05:18:01,738 INFO L280 TraceCheckUtils]: 88: Hoare triple {18729#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {18729#true} is VALID [2020-07-18 05:18:01,738 INFO L280 TraceCheckUtils]: 89: Hoare triple {18729#true} ~len~0 := 0; {18729#true} is VALID [2020-07-18 05:18:01,738 INFO L280 TraceCheckUtils]: 90: Hoare triple {18729#true} assume !!(~head.base != 0 || ~head.offset != 0); {18729#true} is VALID [2020-07-18 05:18:01,739 INFO L280 TraceCheckUtils]: 91: Hoare triple {18729#true} #t~post4 := ~len~0; {18729#true} is VALID [2020-07-18 05:18:01,739 INFO L280 TraceCheckUtils]: 92: Hoare triple {18729#true} ~len~0 := 1 + #t~post4; {18729#true} is VALID [2020-07-18 05:18:01,739 INFO L280 TraceCheckUtils]: 93: Hoare triple {18729#true} havoc #t~post4; {18729#true} is VALID [2020-07-18 05:18:01,740 INFO L280 TraceCheckUtils]: 94: Hoare triple {18729#true} SUMMARY for call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~head.base, ~head.offset, 4); srcloc: L579 {18729#true} is VALID [2020-07-18 05:18:01,740 INFO L280 TraceCheckUtils]: 95: Hoare triple {18729#true} ~head.base, ~head.offset := #t~mem5.base, #t~mem5.offset; {18729#true} is VALID [2020-07-18 05:18:01,740 INFO L280 TraceCheckUtils]: 96: Hoare triple {18729#true} havoc #t~mem5.base, #t~mem5.offset; {18729#true} is VALID [2020-07-18 05:18:01,741 INFO L280 TraceCheckUtils]: 97: Hoare triple {18729#true} assume !!(~head.base != 0 || ~head.offset != 0); {18729#true} is VALID [2020-07-18 05:18:01,741 INFO L280 TraceCheckUtils]: 98: Hoare triple {18729#true} #t~post4 := ~len~0; {18729#true} is VALID [2020-07-18 05:18:01,741 INFO L280 TraceCheckUtils]: 99: Hoare triple {18729#true} ~len~0 := 1 + #t~post4; {18729#true} is VALID [2020-07-18 05:18:01,741 INFO L280 TraceCheckUtils]: 100: Hoare triple {18729#true} havoc #t~post4; {18729#true} is VALID [2020-07-18 05:18:01,742 INFO L280 TraceCheckUtils]: 101: Hoare triple {18729#true} SUMMARY for call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~head.base, ~head.offset, 4); srcloc: L579 {18729#true} is VALID [2020-07-18 05:18:01,742 INFO L280 TraceCheckUtils]: 102: Hoare triple {18729#true} ~head.base, ~head.offset := #t~mem5.base, #t~mem5.offset; {18729#true} is VALID [2020-07-18 05:18:01,742 INFO L280 TraceCheckUtils]: 103: Hoare triple {18729#true} havoc #t~mem5.base, #t~mem5.offset; {18729#true} is VALID [2020-07-18 05:18:01,743 INFO L280 TraceCheckUtils]: 104: Hoare triple {18729#true} assume !(~head.base != 0 || ~head.offset != 0); {18729#true} is VALID [2020-07-18 05:18:01,743 INFO L280 TraceCheckUtils]: 105: Hoare triple {18729#true} #res := ~len~0; {18729#true} is VALID [2020-07-18 05:18:01,743 INFO L280 TraceCheckUtils]: 106: Hoare triple {18729#true} assume true; {18729#true} is VALID [2020-07-18 05:18:01,743 INFO L275 TraceCheckUtils]: 107: Hoare quadruple {18729#true} {18730#false} #253#return; {18730#false} is VALID [2020-07-18 05:18:01,744 INFO L280 TraceCheckUtils]: 108: Hoare triple {18730#false} assume -2147483648 <= #t~ret22 && #t~ret22 <= 2147483647; {18730#false} is VALID [2020-07-18 05:18:01,744 INFO L280 TraceCheckUtils]: 109: Hoare triple {18730#false} assume ~k~0 + ~len~2 != #t~ret22; {18730#false} is VALID [2020-07-18 05:18:01,744 INFO L280 TraceCheckUtils]: 110: Hoare triple {18730#false} havoc #t~ret22; {18730#false} is VALID [2020-07-18 05:18:01,745 INFO L280 TraceCheckUtils]: 111: Hoare triple {18730#false} havoc #t~mem21.base, #t~mem21.offset; {18730#false} is VALID [2020-07-18 05:18:01,745 INFO L280 TraceCheckUtils]: 112: Hoare triple {18730#false} assume !false; {18730#false} is VALID [2020-07-18 05:18:01,761 INFO L134 CoverageAnalysis]: Checked inductivity of 43 backedges. 15 proven. 3 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2020-07-18 05:18:01,761 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1805880757] [2020-07-18 05:18:01,762 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2020-07-18 05:18:01,762 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15] total 15 [2020-07-18 05:18:01,763 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [972717418] [2020-07-18 05:18:01,764 INFO L78 Accepts]: Start accepts. Automaton has 15 states. Word has length 113 [2020-07-18 05:18:01,764 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 05:18:01,764 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states. [2020-07-18 05:18:01,922 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 95 edges. 95 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:18:01,922 INFO L459 AbstractCegarLoop]: Interpolant automaton has 15 states [2020-07-18 05:18:01,922 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 05:18:01,923 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2020-07-18 05:18:01,923 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=30, Invalid=180, Unknown=0, NotChecked=0, Total=210 [2020-07-18 05:18:01,923 INFO L87 Difference]: Start difference. First operand 297 states and 346 transitions. Second operand 15 states. [2020-07-18 05:18:07,654 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:18:07,654 INFO L93 Difference]: Finished difference Result 542 states and 648 transitions. [2020-07-18 05:18:07,654 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2020-07-18 05:18:07,654 INFO L78 Accepts]: Start accepts. Automaton has 15 states. Word has length 113 [2020-07-18 05:18:07,655 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 05:18:07,655 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2020-07-18 05:18:07,657 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 359 transitions. [2020-07-18 05:18:07,658 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2020-07-18 05:18:07,661 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 359 transitions. [2020-07-18 05:18:07,661 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 28 states and 359 transitions. [2020-07-18 05:18:08,150 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 359 edges. 359 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:18:08,164 INFO L225 Difference]: With dead ends: 542 [2020-07-18 05:18:08,164 INFO L226 Difference]: Without dead ends: 407 [2020-07-18 05:18:08,166 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 55 GetRequests, 21 SyntacticMatches, 0 SemanticMatches, 34 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 242 ImplicationChecksByTransitivity, 1.0s TimeCoverageRelationStatistics Valid=262, Invalid=998, Unknown=0, NotChecked=0, Total=1260 [2020-07-18 05:18:08,166 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 407 states. [2020-07-18 05:18:09,555 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 407 to 321. [2020-07-18 05:18:09,555 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 05:18:09,555 INFO L82 GeneralOperation]: Start isEquivalent. First operand 407 states. Second operand 321 states. [2020-07-18 05:18:09,555 INFO L74 IsIncluded]: Start isIncluded. First operand 407 states. Second operand 321 states. [2020-07-18 05:18:09,556 INFO L87 Difference]: Start difference. First operand 407 states. Second operand 321 states. [2020-07-18 05:18:09,570 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:18:09,570 INFO L93 Difference]: Finished difference Result 407 states and 493 transitions. [2020-07-18 05:18:09,571 INFO L276 IsEmpty]: Start isEmpty. Operand 407 states and 493 transitions. [2020-07-18 05:18:09,572 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 05:18:09,572 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 05:18:09,573 INFO L74 IsIncluded]: Start isIncluded. First operand 321 states. Second operand 407 states. [2020-07-18 05:18:09,573 INFO L87 Difference]: Start difference. First operand 321 states. Second operand 407 states. [2020-07-18 05:18:09,587 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:18:09,588 INFO L93 Difference]: Finished difference Result 407 states and 493 transitions. [2020-07-18 05:18:09,588 INFO L276 IsEmpty]: Start isEmpty. Operand 407 states and 493 transitions. [2020-07-18 05:18:09,589 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 05:18:09,590 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 05:18:09,590 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 05:18:09,590 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 05:18:09,590 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 321 states. [2020-07-18 05:18:09,599 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 321 states to 321 states and 380 transitions. [2020-07-18 05:18:09,599 INFO L78 Accepts]: Start accepts. Automaton has 321 states and 380 transitions. Word has length 113 [2020-07-18 05:18:09,599 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 05:18:09,599 INFO L479 AbstractCegarLoop]: Abstraction has 321 states and 380 transitions. [2020-07-18 05:18:09,599 INFO L480 AbstractCegarLoop]: Interpolant automaton has 15 states. [2020-07-18 05:18:09,600 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 321 states and 380 transitions. [2020-07-18 05:18:10,581 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 380 edges. 380 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:18:10,581 INFO L276 IsEmpty]: Start isEmpty. Operand 321 states and 380 transitions. [2020-07-18 05:18:10,584 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 114 [2020-07-18 05:18:10,584 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 05:18:10,584 INFO L422 BasicCegarLoop]: trace histogram [3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 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] [2020-07-18 05:18:10,584 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable12 [2020-07-18 05:18:10,585 INFO L427 AbstractCegarLoop]: === Iteration 14 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 05:18:10,585 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 05:18:10,585 INFO L82 PathProgramCache]: Analyzing trace with hash 1389369769, now seen corresponding path program 3 times [2020-07-18 05:18:10,585 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 05:18:10,585 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1777800112] [2020-07-18 05:18:10,585 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 05:18:10,600 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:18:10,647 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:18:10,650 INFO L280 TraceCheckUtils]: 0: Hoare triple {21516#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {21426#true} is VALID [2020-07-18 05:18:10,651 INFO L280 TraceCheckUtils]: 1: Hoare triple {21426#true} #valid := #valid[0 := 0]; {21426#true} is VALID [2020-07-18 05:18:10,651 INFO L280 TraceCheckUtils]: 2: Hoare triple {21426#true} assume 0 < #StackHeapBarrier; {21426#true} is VALID [2020-07-18 05:18:10,651 INFO L280 TraceCheckUtils]: 3: Hoare triple {21426#true} assume true; {21426#true} is VALID [2020-07-18 05:18:10,651 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {21426#true} {21426#true} #259#return; {21426#true} is VALID [2020-07-18 05:18:10,654 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:18:10,752 INFO L280 TraceCheckUtils]: 0: Hoare triple {21426#true} ~from := #in~from; {21517#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:18:10,753 INFO L280 TraceCheckUtils]: 1: Hoare triple {21517#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~until := #in~until; {21517#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:18:10,754 INFO L280 TraceCheckUtils]: 2: Hoare triple {21517#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~len~1 := ~from; {21518#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:18:10,754 INFO L280 TraceCheckUtils]: 3: Hoare triple {21518#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #t~short12 := ~len~1 < ~until; {21518#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:18:10,755 INFO L280 TraceCheckUtils]: 4: Hoare triple {21518#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume #t~short12; {21518#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:18:10,755 INFO L280 TraceCheckUtils]: 5: Hoare triple {21518#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {21518#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:18:10,756 INFO L280 TraceCheckUtils]: 6: Hoare triple {21518#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #t~short12 := 0 != #t~nondet11; {21518#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:18:10,757 INFO L280 TraceCheckUtils]: 7: Hoare triple {21518#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume !!#t~short12; {21518#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:18:10,757 INFO L280 TraceCheckUtils]: 8: Hoare triple {21518#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} havoc #t~nondet11; {21518#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:18:10,758 INFO L280 TraceCheckUtils]: 9: Hoare triple {21518#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} havoc #t~short12; {21518#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:18:10,758 INFO L280 TraceCheckUtils]: 10: Hoare triple {21518#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #t~post13 := ~len~1; {21519#(or (<= 2 |_get_nondet_int_#t~post13|) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:18:10,759 INFO L280 TraceCheckUtils]: 11: Hoare triple {21519#(or (<= 2 |_get_nondet_int_#t~post13|) (not (= 2 |_get_nondet_int_#in~from|)))} ~len~1 := 1 + #t~post13; {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:18:10,760 INFO L280 TraceCheckUtils]: 12: Hoare triple {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} havoc #t~post13; {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:18:10,760 INFO L280 TraceCheckUtils]: 13: Hoare triple {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} #t~short12 := ~len~1 < ~until; {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:18:10,761 INFO L280 TraceCheckUtils]: 14: Hoare triple {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} assume #t~short12; {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:18:10,761 INFO L280 TraceCheckUtils]: 15: Hoare triple {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:18:10,762 INFO L280 TraceCheckUtils]: 16: Hoare triple {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} #t~short12 := 0 != #t~nondet11; {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:18:10,762 INFO L280 TraceCheckUtils]: 17: Hoare triple {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} assume !#t~short12; {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:18:10,763 INFO L280 TraceCheckUtils]: 18: Hoare triple {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} havoc #t~nondet11; {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:18:10,763 INFO L280 TraceCheckUtils]: 19: Hoare triple {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} havoc #t~short12; {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:18:10,764 INFO L280 TraceCheckUtils]: 20: Hoare triple {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} #res := ~len~1; {21521#(or (<= 3 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:18:10,765 INFO L280 TraceCheckUtils]: 21: Hoare triple {21521#(or (<= 3 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} assume true; {21521#(or (<= 3 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:18:10,766 INFO L275 TraceCheckUtils]: 22: Hoare quadruple {21521#(or (<= 3 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} {21426#true} #243#return; {21456#(<= 3 |main_#t~ret14|)} is VALID [2020-07-18 05:18:10,791 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:18:10,931 INFO L280 TraceCheckUtils]: 0: Hoare triple {21522#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~len := #in~len; {21523#(= |sll_create_#in~len| sll_create_~len)} is VALID [2020-07-18 05:18:10,931 INFO L280 TraceCheckUtils]: 1: Hoare triple {21523#(= |sll_create_#in~len| sll_create_~len)} ~head~0.base, ~head~0.offset := 0, 0; {21523#(= |sll_create_#in~len| sll_create_~len)} is VALID [2020-07-18 05:18:10,932 INFO L280 TraceCheckUtils]: 2: Hoare triple {21523#(= |sll_create_#in~len| sll_create_~len)} #t~post2 := ~len; {21524#(= |sll_create_#in~len| |sll_create_#t~post2|)} is VALID [2020-07-18 05:18:10,933 INFO L280 TraceCheckUtils]: 3: Hoare triple {21524#(= |sll_create_#in~len| |sll_create_#t~post2|)} ~len := #t~post2 - 1; {21525#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:18:10,933 INFO L280 TraceCheckUtils]: 4: Hoare triple {21525#(<= |sll_create_#in~len| (+ sll_create_~len 1))} assume !!(#t~post2 > 0); {21525#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:18:10,934 INFO L280 TraceCheckUtils]: 5: Hoare triple {21525#(<= |sll_create_#in~len| (+ sll_create_~len 1))} havoc #t~post2; {21525#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:18:10,934 INFO L280 TraceCheckUtils]: 6: Hoare triple {21525#(<= |sll_create_#in~len| (+ sll_create_~len 1))} SUMMARY for call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(4); srcloc: L566 {21525#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:18:10,935 INFO L280 TraceCheckUtils]: 7: Hoare triple {21525#(<= |sll_create_#in~len| (+ sll_create_~len 1))} ~new_head~0.base, ~new_head~0.offset := #t~malloc3.base, #t~malloc3.offset; {21525#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:18:10,935 INFO L280 TraceCheckUtils]: 8: Hoare triple {21525#(<= |sll_create_#in~len| (+ sll_create_~len 1))} assume !(0 == ~new_head~0.base && 0 == ~new_head~0.offset); {21525#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:18:10,935 INFO L280 TraceCheckUtils]: 9: Hoare triple {21525#(<= |sll_create_#in~len| (+ sll_create_~len 1))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4); srcloc: L567-1 {21525#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:18:10,936 INFO L280 TraceCheckUtils]: 10: Hoare triple {21525#(<= |sll_create_#in~len| (+ sll_create_~len 1))} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset; {21525#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:18:10,936 INFO L280 TraceCheckUtils]: 11: Hoare triple {21525#(<= |sll_create_#in~len| (+ sll_create_~len 1))} #t~post2 := ~len; {21526#(<= |sll_create_#in~len| (+ |sll_create_#t~post2| 1))} is VALID [2020-07-18 05:18:10,941 INFO L280 TraceCheckUtils]: 12: Hoare triple {21526#(<= |sll_create_#in~len| (+ |sll_create_#t~post2| 1))} ~len := #t~post2 - 1; {21527#(<= |sll_create_#in~len| (+ sll_create_~len 2))} is VALID [2020-07-18 05:18:10,944 INFO L280 TraceCheckUtils]: 13: Hoare triple {21527#(<= |sll_create_#in~len| (+ sll_create_~len 2))} assume !!(#t~post2 > 0); {21527#(<= |sll_create_#in~len| (+ sll_create_~len 2))} is VALID [2020-07-18 05:18:10,946 INFO L280 TraceCheckUtils]: 14: Hoare triple {21527#(<= |sll_create_#in~len| (+ sll_create_~len 2))} havoc #t~post2; {21527#(<= |sll_create_#in~len| (+ sll_create_~len 2))} is VALID [2020-07-18 05:18:10,948 INFO L280 TraceCheckUtils]: 15: Hoare triple {21527#(<= |sll_create_#in~len| (+ sll_create_~len 2))} SUMMARY for call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(4); srcloc: L566 {21527#(<= |sll_create_#in~len| (+ sll_create_~len 2))} is VALID [2020-07-18 05:18:10,949 INFO L280 TraceCheckUtils]: 16: Hoare triple {21527#(<= |sll_create_#in~len| (+ sll_create_~len 2))} ~new_head~0.base, ~new_head~0.offset := #t~malloc3.base, #t~malloc3.offset; {21527#(<= |sll_create_#in~len| (+ sll_create_~len 2))} is VALID [2020-07-18 05:18:10,950 INFO L280 TraceCheckUtils]: 17: Hoare triple {21527#(<= |sll_create_#in~len| (+ sll_create_~len 2))} assume !(0 == ~new_head~0.base && 0 == ~new_head~0.offset); {21527#(<= |sll_create_#in~len| (+ sll_create_~len 2))} is VALID [2020-07-18 05:18:10,950 INFO L280 TraceCheckUtils]: 18: Hoare triple {21527#(<= |sll_create_#in~len| (+ sll_create_~len 2))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4); srcloc: L567-1 {21527#(<= |sll_create_#in~len| (+ sll_create_~len 2))} is VALID [2020-07-18 05:18:10,951 INFO L280 TraceCheckUtils]: 19: Hoare triple {21527#(<= |sll_create_#in~len| (+ sll_create_~len 2))} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset; {21527#(<= |sll_create_#in~len| (+ sll_create_~len 2))} is VALID [2020-07-18 05:18:10,951 INFO L280 TraceCheckUtils]: 20: Hoare triple {21527#(<= |sll_create_#in~len| (+ sll_create_~len 2))} #t~post2 := ~len; {21528#(<= |sll_create_#in~len| (+ |sll_create_#t~post2| 2))} is VALID [2020-07-18 05:18:10,952 INFO L280 TraceCheckUtils]: 21: Hoare triple {21528#(<= |sll_create_#in~len| (+ |sll_create_#t~post2| 2))} ~len := #t~post2 - 1; {21528#(<= |sll_create_#in~len| (+ |sll_create_#t~post2| 2))} is VALID [2020-07-18 05:18:10,953 INFO L280 TraceCheckUtils]: 22: Hoare triple {21528#(<= |sll_create_#in~len| (+ |sll_create_#t~post2| 2))} assume !(#t~post2 > 0); {21529#(<= |sll_create_#in~len| 2)} is VALID [2020-07-18 05:18:10,953 INFO L280 TraceCheckUtils]: 23: Hoare triple {21529#(<= |sll_create_#in~len| 2)} havoc #t~post2; {21529#(<= |sll_create_#in~len| 2)} is VALID [2020-07-18 05:18:10,954 INFO L280 TraceCheckUtils]: 24: Hoare triple {21529#(<= |sll_create_#in~len| 2)} #res.base, #res.offset := ~head~0.base, ~head~0.offset; {21529#(<= |sll_create_#in~len| 2)} is VALID [2020-07-18 05:18:10,954 INFO L280 TraceCheckUtils]: 25: Hoare triple {21529#(<= |sll_create_#in~len| 2)} assume true; {21529#(<= |sll_create_#in~len| 2)} is VALID [2020-07-18 05:18:10,955 INFO L275 TraceCheckUtils]: 26: Hoare quadruple {21529#(<= |sll_create_#in~len| 2)} {21457#(<= 3 main_~len~2)} #245#return; {21427#false} is VALID [2020-07-18 05:18:10,958 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:18:10,961 INFO L280 TraceCheckUtils]: 0: Hoare triple {21426#true} ~from := #in~from; {21426#true} is VALID [2020-07-18 05:18:10,961 INFO L280 TraceCheckUtils]: 1: Hoare triple {21426#true} ~until := #in~until; {21426#true} is VALID [2020-07-18 05:18:10,961 INFO L280 TraceCheckUtils]: 2: Hoare triple {21426#true} ~len~1 := ~from; {21426#true} is VALID [2020-07-18 05:18:10,961 INFO L280 TraceCheckUtils]: 3: Hoare triple {21426#true} #t~short12 := ~len~1 < ~until; {21426#true} is VALID [2020-07-18 05:18:10,961 INFO L280 TraceCheckUtils]: 4: Hoare triple {21426#true} assume !#t~short12; {21426#true} is VALID [2020-07-18 05:18:10,962 INFO L280 TraceCheckUtils]: 5: Hoare triple {21426#true} assume !#t~short12; {21426#true} is VALID [2020-07-18 05:18:10,962 INFO L280 TraceCheckUtils]: 6: Hoare triple {21426#true} havoc #t~nondet11; {21426#true} is VALID [2020-07-18 05:18:10,962 INFO L280 TraceCheckUtils]: 7: Hoare triple {21426#true} havoc #t~short12; {21426#true} is VALID [2020-07-18 05:18:10,962 INFO L280 TraceCheckUtils]: 8: Hoare triple {21426#true} #res := ~len~1; {21426#true} is VALID [2020-07-18 05:18:10,962 INFO L280 TraceCheckUtils]: 9: Hoare triple {21426#true} assume true; {21426#true} is VALID [2020-07-18 05:18:10,962 INFO L275 TraceCheckUtils]: 10: Hoare quadruple {21426#true} {21427#false} #247#return; {21427#false} is VALID [2020-07-18 05:18:10,964 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 05:18:10,967 INFO L280 TraceCheckUtils]: 0: Hoare triple {21426#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {21426#true} is VALID [2020-07-18 05:18:10,968 INFO L280 TraceCheckUtils]: 1: Hoare triple {21426#true} ~len~0 := 0; {21426#true} is VALID [2020-07-18 05:18:10,968 INFO L280 TraceCheckUtils]: 2: Hoare triple {21426#true} assume !!(~head.base != 0 || ~head.offset != 0); {21426#true} is VALID [2020-07-18 05:18:10,968 INFO L280 TraceCheckUtils]: 3: Hoare triple {21426#true} #t~post4 := ~len~0; {21426#true} is VALID [2020-07-18 05:18:10,968 INFO L280 TraceCheckUtils]: 4: Hoare triple {21426#true} ~len~0 := 1 + #t~post4; {21426#true} is VALID [2020-07-18 05:18:10,968 INFO L280 TraceCheckUtils]: 5: Hoare triple {21426#true} havoc #t~post4; {21426#true} is VALID [2020-07-18 05:18:10,969 INFO L280 TraceCheckUtils]: 6: Hoare triple {21426#true} SUMMARY for call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~head.base, ~head.offset, 4); srcloc: L579 {21426#true} is VALID [2020-07-18 05:18:10,969 INFO L280 TraceCheckUtils]: 7: Hoare triple {21426#true} ~head.base, ~head.offset := #t~mem5.base, #t~mem5.offset; {21426#true} is VALID [2020-07-18 05:18:10,969 INFO L280 TraceCheckUtils]: 8: Hoare triple {21426#true} havoc #t~mem5.base, #t~mem5.offset; {21426#true} is VALID [2020-07-18 05:18:10,969 INFO L280 TraceCheckUtils]: 9: Hoare triple {21426#true} assume !!(~head.base != 0 || ~head.offset != 0); {21426#true} is VALID [2020-07-18 05:18:10,969 INFO L280 TraceCheckUtils]: 10: Hoare triple {21426#true} #t~post4 := ~len~0; {21426#true} is VALID [2020-07-18 05:18:10,969 INFO L280 TraceCheckUtils]: 11: Hoare triple {21426#true} ~len~0 := 1 + #t~post4; {21426#true} is VALID [2020-07-18 05:18:10,970 INFO L280 TraceCheckUtils]: 12: Hoare triple {21426#true} havoc #t~post4; {21426#true} is VALID [2020-07-18 05:18:10,970 INFO L280 TraceCheckUtils]: 13: Hoare triple {21426#true} SUMMARY for call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~head.base, ~head.offset, 4); srcloc: L579 {21426#true} is VALID [2020-07-18 05:18:10,970 INFO L280 TraceCheckUtils]: 14: Hoare triple {21426#true} ~head.base, ~head.offset := #t~mem5.base, #t~mem5.offset; {21426#true} is VALID [2020-07-18 05:18:10,970 INFO L280 TraceCheckUtils]: 15: Hoare triple {21426#true} havoc #t~mem5.base, #t~mem5.offset; {21426#true} is VALID [2020-07-18 05:18:10,970 INFO L280 TraceCheckUtils]: 16: Hoare triple {21426#true} assume !(~head.base != 0 || ~head.offset != 0); {21426#true} is VALID [2020-07-18 05:18:10,971 INFO L280 TraceCheckUtils]: 17: Hoare triple {21426#true} #res := ~len~0; {21426#true} is VALID [2020-07-18 05:18:10,971 INFO L280 TraceCheckUtils]: 18: Hoare triple {21426#true} assume true; {21426#true} is VALID [2020-07-18 05:18:10,971 INFO L275 TraceCheckUtils]: 19: Hoare quadruple {21426#true} {21427#false} #253#return; {21427#false} is VALID [2020-07-18 05:18:10,972 INFO L263 TraceCheckUtils]: 0: Hoare triple {21426#true} call ULTIMATE.init(); {21516#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 05:18:10,972 INFO L280 TraceCheckUtils]: 1: Hoare triple {21516#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {21426#true} is VALID [2020-07-18 05:18:10,972 INFO L280 TraceCheckUtils]: 2: Hoare triple {21426#true} #valid := #valid[0 := 0]; {21426#true} is VALID [2020-07-18 05:18:10,973 INFO L280 TraceCheckUtils]: 3: Hoare triple {21426#true} assume 0 < #StackHeapBarrier; {21426#true} is VALID [2020-07-18 05:18:10,973 INFO L280 TraceCheckUtils]: 4: Hoare triple {21426#true} assume true; {21426#true} is VALID [2020-07-18 05:18:10,973 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {21426#true} {21426#true} #259#return; {21426#true} is VALID [2020-07-18 05:18:10,973 INFO L263 TraceCheckUtils]: 6: Hoare triple {21426#true} call #t~ret24 := main(); {21426#true} is VALID [2020-07-18 05:18:10,973 INFO L263 TraceCheckUtils]: 7: Hoare triple {21426#true} call #t~ret14 := _get_nondet_int(2, 5); {21426#true} is VALID [2020-07-18 05:18:10,974 INFO L280 TraceCheckUtils]: 8: Hoare triple {21426#true} ~from := #in~from; {21517#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:18:10,974 INFO L280 TraceCheckUtils]: 9: Hoare triple {21517#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~until := #in~until; {21517#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} is VALID [2020-07-18 05:18:10,975 INFO L280 TraceCheckUtils]: 10: Hoare triple {21517#(= |_get_nondet_int_#in~from| _get_nondet_int_~from)} ~len~1 := ~from; {21518#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:18:10,976 INFO L280 TraceCheckUtils]: 11: Hoare triple {21518#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #t~short12 := ~len~1 < ~until; {21518#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:18:10,976 INFO L280 TraceCheckUtils]: 12: Hoare triple {21518#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume #t~short12; {21518#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:18:10,977 INFO L280 TraceCheckUtils]: 13: Hoare triple {21518#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {21518#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:18:10,977 INFO L280 TraceCheckUtils]: 14: Hoare triple {21518#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #t~short12 := 0 != #t~nondet11; {21518#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:18:10,978 INFO L280 TraceCheckUtils]: 15: Hoare triple {21518#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} assume !!#t~short12; {21518#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:18:10,978 INFO L280 TraceCheckUtils]: 16: Hoare triple {21518#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} havoc #t~nondet11; {21518#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:18:10,979 INFO L280 TraceCheckUtils]: 17: Hoare triple {21518#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} havoc #t~short12; {21518#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} is VALID [2020-07-18 05:18:10,980 INFO L280 TraceCheckUtils]: 18: Hoare triple {21518#(or (= 2 _get_nondet_int_~len~1) (= _get_nondet_int_~len~1 |_get_nondet_int_#in~from|))} #t~post13 := ~len~1; {21519#(or (<= 2 |_get_nondet_int_#t~post13|) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:18:10,981 INFO L280 TraceCheckUtils]: 19: Hoare triple {21519#(or (<= 2 |_get_nondet_int_#t~post13|) (not (= 2 |_get_nondet_int_#in~from|)))} ~len~1 := 1 + #t~post13; {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:18:10,981 INFO L280 TraceCheckUtils]: 20: Hoare triple {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} havoc #t~post13; {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:18:10,982 INFO L280 TraceCheckUtils]: 21: Hoare triple {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} #t~short12 := ~len~1 < ~until; {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:18:10,982 INFO L280 TraceCheckUtils]: 22: Hoare triple {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} assume #t~short12; {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:18:10,982 INFO L280 TraceCheckUtils]: 23: Hoare triple {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} assume -2147483648 <= #t~nondet11 && #t~nondet11 <= 2147483647; {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:18:10,983 INFO L280 TraceCheckUtils]: 24: Hoare triple {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} #t~short12 := 0 != #t~nondet11; {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:18:10,983 INFO L280 TraceCheckUtils]: 25: Hoare triple {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} assume !#t~short12; {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:18:10,983 INFO L280 TraceCheckUtils]: 26: Hoare triple {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} havoc #t~nondet11; {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:18:10,984 INFO L280 TraceCheckUtils]: 27: Hoare triple {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} havoc #t~short12; {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:18:10,984 INFO L280 TraceCheckUtils]: 28: Hoare triple {21520#(or (<= 3 _get_nondet_int_~len~1) (not (= 2 |_get_nondet_int_#in~from|)))} #res := ~len~1; {21521#(or (<= 3 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:18:10,985 INFO L280 TraceCheckUtils]: 29: Hoare triple {21521#(or (<= 3 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} assume true; {21521#(or (<= 3 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} is VALID [2020-07-18 05:18:10,985 INFO L275 TraceCheckUtils]: 30: Hoare quadruple {21521#(or (<= 3 |_get_nondet_int_#res|) (not (= 2 |_get_nondet_int_#in~from|)))} {21426#true} #243#return; {21456#(<= 3 |main_#t~ret14|)} is VALID [2020-07-18 05:18:10,986 INFO L280 TraceCheckUtils]: 31: Hoare triple {21456#(<= 3 |main_#t~ret14|)} assume -2147483648 <= #t~ret14 && #t~ret14 <= 2147483647; {21456#(<= 3 |main_#t~ret14|)} is VALID [2020-07-18 05:18:10,986 INFO L280 TraceCheckUtils]: 32: Hoare triple {21456#(<= 3 |main_#t~ret14|)} ~len~2 := #t~ret14; {21457#(<= 3 main_~len~2)} is VALID [2020-07-18 05:18:10,986 INFO L280 TraceCheckUtils]: 33: Hoare triple {21457#(<= 3 main_~len~2)} havoc #t~ret14; {21457#(<= 3 main_~len~2)} is VALID [2020-07-18 05:18:10,987 INFO L280 TraceCheckUtils]: 34: Hoare triple {21457#(<= 3 main_~len~2)} SUMMARY for call ~#s~0.base, ~#s~0.offset := #Ultimate.allocOnStack(4); srcloc: L617 {21457#(<= 3 main_~len~2)} is VALID [2020-07-18 05:18:10,988 INFO L263 TraceCheckUtils]: 35: Hoare triple {21457#(<= 3 main_~len~2)} call #t~ret15.base, #t~ret15.offset := sll_create(~len~2); {21522#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-18 05:18:10,988 INFO L280 TraceCheckUtils]: 36: Hoare triple {21522#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~len := #in~len; {21523#(= |sll_create_#in~len| sll_create_~len)} is VALID [2020-07-18 05:18:10,988 INFO L280 TraceCheckUtils]: 37: Hoare triple {21523#(= |sll_create_#in~len| sll_create_~len)} ~head~0.base, ~head~0.offset := 0, 0; {21523#(= |sll_create_#in~len| sll_create_~len)} is VALID [2020-07-18 05:18:10,989 INFO L280 TraceCheckUtils]: 38: Hoare triple {21523#(= |sll_create_#in~len| sll_create_~len)} #t~post2 := ~len; {21524#(= |sll_create_#in~len| |sll_create_#t~post2|)} is VALID [2020-07-18 05:18:10,989 INFO L280 TraceCheckUtils]: 39: Hoare triple {21524#(= |sll_create_#in~len| |sll_create_#t~post2|)} ~len := #t~post2 - 1; {21525#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:18:10,990 INFO L280 TraceCheckUtils]: 40: Hoare triple {21525#(<= |sll_create_#in~len| (+ sll_create_~len 1))} assume !!(#t~post2 > 0); {21525#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:18:10,990 INFO L280 TraceCheckUtils]: 41: Hoare triple {21525#(<= |sll_create_#in~len| (+ sll_create_~len 1))} havoc #t~post2; {21525#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:18:10,990 INFO L280 TraceCheckUtils]: 42: Hoare triple {21525#(<= |sll_create_#in~len| (+ sll_create_~len 1))} SUMMARY for call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(4); srcloc: L566 {21525#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:18:10,991 INFO L280 TraceCheckUtils]: 43: Hoare triple {21525#(<= |sll_create_#in~len| (+ sll_create_~len 1))} ~new_head~0.base, ~new_head~0.offset := #t~malloc3.base, #t~malloc3.offset; {21525#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:18:10,991 INFO L280 TraceCheckUtils]: 44: Hoare triple {21525#(<= |sll_create_#in~len| (+ sll_create_~len 1))} assume !(0 == ~new_head~0.base && 0 == ~new_head~0.offset); {21525#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:18:10,991 INFO L280 TraceCheckUtils]: 45: Hoare triple {21525#(<= |sll_create_#in~len| (+ sll_create_~len 1))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4); srcloc: L567-1 {21525#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:18:10,992 INFO L280 TraceCheckUtils]: 46: Hoare triple {21525#(<= |sll_create_#in~len| (+ sll_create_~len 1))} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset; {21525#(<= |sll_create_#in~len| (+ sll_create_~len 1))} is VALID [2020-07-18 05:18:10,992 INFO L280 TraceCheckUtils]: 47: Hoare triple {21525#(<= |sll_create_#in~len| (+ sll_create_~len 1))} #t~post2 := ~len; {21526#(<= |sll_create_#in~len| (+ |sll_create_#t~post2| 1))} is VALID [2020-07-18 05:18:10,993 INFO L280 TraceCheckUtils]: 48: Hoare triple {21526#(<= |sll_create_#in~len| (+ |sll_create_#t~post2| 1))} ~len := #t~post2 - 1; {21527#(<= |sll_create_#in~len| (+ sll_create_~len 2))} is VALID [2020-07-18 05:18:10,993 INFO L280 TraceCheckUtils]: 49: Hoare triple {21527#(<= |sll_create_#in~len| (+ sll_create_~len 2))} assume !!(#t~post2 > 0); {21527#(<= |sll_create_#in~len| (+ sll_create_~len 2))} is VALID [2020-07-18 05:18:10,994 INFO L280 TraceCheckUtils]: 50: Hoare triple {21527#(<= |sll_create_#in~len| (+ sll_create_~len 2))} havoc #t~post2; {21527#(<= |sll_create_#in~len| (+ sll_create_~len 2))} is VALID [2020-07-18 05:18:10,994 INFO L280 TraceCheckUtils]: 51: Hoare triple {21527#(<= |sll_create_#in~len| (+ sll_create_~len 2))} SUMMARY for call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(4); srcloc: L566 {21527#(<= |sll_create_#in~len| (+ sll_create_~len 2))} is VALID [2020-07-18 05:18:10,994 INFO L280 TraceCheckUtils]: 52: Hoare triple {21527#(<= |sll_create_#in~len| (+ sll_create_~len 2))} ~new_head~0.base, ~new_head~0.offset := #t~malloc3.base, #t~malloc3.offset; {21527#(<= |sll_create_#in~len| (+ sll_create_~len 2))} is VALID [2020-07-18 05:18:10,995 INFO L280 TraceCheckUtils]: 53: Hoare triple {21527#(<= |sll_create_#in~len| (+ sll_create_~len 2))} assume !(0 == ~new_head~0.base && 0 == ~new_head~0.offset); {21527#(<= |sll_create_#in~len| (+ sll_create_~len 2))} is VALID [2020-07-18 05:18:10,995 INFO L280 TraceCheckUtils]: 54: Hoare triple {21527#(<= |sll_create_#in~len| (+ sll_create_~len 2))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~new_head~0.base, ~new_head~0.offset, 4); srcloc: L567-1 {21527#(<= |sll_create_#in~len| (+ sll_create_~len 2))} is VALID [2020-07-18 05:18:10,997 INFO L280 TraceCheckUtils]: 55: Hoare triple {21527#(<= |sll_create_#in~len| (+ sll_create_~len 2))} ~head~0.base, ~head~0.offset := ~new_head~0.base, ~new_head~0.offset; {21527#(<= |sll_create_#in~len| (+ sll_create_~len 2))} is VALID [2020-07-18 05:18:11,001 INFO L280 TraceCheckUtils]: 56: Hoare triple {21527#(<= |sll_create_#in~len| (+ sll_create_~len 2))} #t~post2 := ~len; {21528#(<= |sll_create_#in~len| (+ |sll_create_#t~post2| 2))} is VALID [2020-07-18 05:18:11,002 INFO L280 TraceCheckUtils]: 57: Hoare triple {21528#(<= |sll_create_#in~len| (+ |sll_create_#t~post2| 2))} ~len := #t~post2 - 1; {21528#(<= |sll_create_#in~len| (+ |sll_create_#t~post2| 2))} is VALID [2020-07-18 05:18:11,002 INFO L280 TraceCheckUtils]: 58: Hoare triple {21528#(<= |sll_create_#in~len| (+ |sll_create_#t~post2| 2))} assume !(#t~post2 > 0); {21529#(<= |sll_create_#in~len| 2)} is VALID [2020-07-18 05:18:11,003 INFO L280 TraceCheckUtils]: 59: Hoare triple {21529#(<= |sll_create_#in~len| 2)} havoc #t~post2; {21529#(<= |sll_create_#in~len| 2)} is VALID [2020-07-18 05:18:11,003 INFO L280 TraceCheckUtils]: 60: Hoare triple {21529#(<= |sll_create_#in~len| 2)} #res.base, #res.offset := ~head~0.base, ~head~0.offset; {21529#(<= |sll_create_#in~len| 2)} is VALID [2020-07-18 05:18:11,003 INFO L280 TraceCheckUtils]: 61: Hoare triple {21529#(<= |sll_create_#in~len| 2)} assume true; {21529#(<= |sll_create_#in~len| 2)} is VALID [2020-07-18 05:18:11,004 INFO L275 TraceCheckUtils]: 62: Hoare quadruple {21529#(<= |sll_create_#in~len| 2)} {21457#(<= 3 main_~len~2)} #245#return; {21427#false} is VALID [2020-07-18 05:18:11,004 INFO L280 TraceCheckUtils]: 63: Hoare triple {21427#false} SUMMARY for call write~init~$Pointer$(#t~ret15.base, #t~ret15.offset, ~#s~0.base, ~#s~0.offset, 4); srcloc: L617-2 {21427#false} is VALID [2020-07-18 05:18:11,004 INFO L280 TraceCheckUtils]: 64: Hoare triple {21427#false} havoc #t~ret15.base, #t~ret15.offset; {21427#false} is VALID [2020-07-18 05:18:11,004 INFO L263 TraceCheckUtils]: 65: Hoare triple {21427#false} call #t~ret16 := _get_nondet_int(0, ~len~2 - 1); {21426#true} is VALID [2020-07-18 05:18:11,005 INFO L280 TraceCheckUtils]: 66: Hoare triple {21426#true} ~from := #in~from; {21426#true} is VALID [2020-07-18 05:18:11,005 INFO L280 TraceCheckUtils]: 67: Hoare triple {21426#true} ~until := #in~until; {21426#true} is VALID [2020-07-18 05:18:11,005 INFO L280 TraceCheckUtils]: 68: Hoare triple {21426#true} ~len~1 := ~from; {21426#true} is VALID [2020-07-18 05:18:11,005 INFO L280 TraceCheckUtils]: 69: Hoare triple {21426#true} #t~short12 := ~len~1 < ~until; {21426#true} is VALID [2020-07-18 05:18:11,005 INFO L280 TraceCheckUtils]: 70: Hoare triple {21426#true} assume !#t~short12; {21426#true} is VALID [2020-07-18 05:18:11,005 INFO L280 TraceCheckUtils]: 71: Hoare triple {21426#true} assume !#t~short12; {21426#true} is VALID [2020-07-18 05:18:11,005 INFO L280 TraceCheckUtils]: 72: Hoare triple {21426#true} havoc #t~nondet11; {21426#true} is VALID [2020-07-18 05:18:11,005 INFO L280 TraceCheckUtils]: 73: Hoare triple {21426#true} havoc #t~short12; {21426#true} is VALID [2020-07-18 05:18:11,006 INFO L280 TraceCheckUtils]: 74: Hoare triple {21426#true} #res := ~len~1; {21426#true} is VALID [2020-07-18 05:18:11,006 INFO L280 TraceCheckUtils]: 75: Hoare triple {21426#true} assume true; {21426#true} is VALID [2020-07-18 05:18:11,006 INFO L275 TraceCheckUtils]: 76: Hoare quadruple {21426#true} {21427#false} #247#return; {21427#false} is VALID [2020-07-18 05:18:11,006 INFO L280 TraceCheckUtils]: 77: Hoare triple {21427#false} assume -2147483648 <= #t~ret16 && #t~ret16 <= 2147483647; {21427#false} is VALID [2020-07-18 05:18:11,006 INFO L280 TraceCheckUtils]: 78: Hoare triple {21427#false} ~k~0 := #t~ret16; {21427#false} is VALID [2020-07-18 05:18:11,006 INFO L280 TraceCheckUtils]: 79: Hoare triple {21427#false} havoc #t~ret16; {21427#false} is VALID [2020-07-18 05:18:11,006 INFO L280 TraceCheckUtils]: 80: Hoare triple {21427#false} ~i~0 := 0; {21427#false} is VALID [2020-07-18 05:18:11,006 INFO L280 TraceCheckUtils]: 81: Hoare triple {21427#false} #t~short18 := ~i~0 < ~k~0; {21427#false} is VALID [2020-07-18 05:18:11,007 INFO L280 TraceCheckUtils]: 82: Hoare triple {21427#false} assume !#t~short18; {21427#false} is VALID [2020-07-18 05:18:11,007 INFO L280 TraceCheckUtils]: 83: Hoare triple {21427#false} assume !#t~short18; {21427#false} is VALID [2020-07-18 05:18:11,007 INFO L280 TraceCheckUtils]: 84: Hoare triple {21427#false} havoc #t~nondet17; {21427#false} is VALID [2020-07-18 05:18:11,007 INFO L280 TraceCheckUtils]: 85: Hoare triple {21427#false} havoc #t~short18; {21427#false} is VALID [2020-07-18 05:18:11,007 INFO L280 TraceCheckUtils]: 86: Hoare triple {21427#false} SUMMARY for call #t~mem21.base, #t~mem21.offset := read~$Pointer$(~#s~0.base, ~#s~0.offset, 4); srcloc: L620-12 {21427#false} is VALID [2020-07-18 05:18:11,007 INFO L263 TraceCheckUtils]: 87: Hoare triple {21427#false} call #t~ret22 := sll_length(#t~mem21.base, #t~mem21.offset); {21426#true} is VALID [2020-07-18 05:18:11,007 INFO L280 TraceCheckUtils]: 88: Hoare triple {21426#true} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {21426#true} is VALID [2020-07-18 05:18:11,007 INFO L280 TraceCheckUtils]: 89: Hoare triple {21426#true} ~len~0 := 0; {21426#true} is VALID [2020-07-18 05:18:11,008 INFO L280 TraceCheckUtils]: 90: Hoare triple {21426#true} assume !!(~head.base != 0 || ~head.offset != 0); {21426#true} is VALID [2020-07-18 05:18:11,008 INFO L280 TraceCheckUtils]: 91: Hoare triple {21426#true} #t~post4 := ~len~0; {21426#true} is VALID [2020-07-18 05:18:11,008 INFO L280 TraceCheckUtils]: 92: Hoare triple {21426#true} ~len~0 := 1 + #t~post4; {21426#true} is VALID [2020-07-18 05:18:11,008 INFO L280 TraceCheckUtils]: 93: Hoare triple {21426#true} havoc #t~post4; {21426#true} is VALID [2020-07-18 05:18:11,008 INFO L280 TraceCheckUtils]: 94: Hoare triple {21426#true} SUMMARY for call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~head.base, ~head.offset, 4); srcloc: L579 {21426#true} is VALID [2020-07-18 05:18:11,008 INFO L280 TraceCheckUtils]: 95: Hoare triple {21426#true} ~head.base, ~head.offset := #t~mem5.base, #t~mem5.offset; {21426#true} is VALID [2020-07-18 05:18:11,008 INFO L280 TraceCheckUtils]: 96: Hoare triple {21426#true} havoc #t~mem5.base, #t~mem5.offset; {21426#true} is VALID [2020-07-18 05:18:11,009 INFO L280 TraceCheckUtils]: 97: Hoare triple {21426#true} assume !!(~head.base != 0 || ~head.offset != 0); {21426#true} is VALID [2020-07-18 05:18:11,009 INFO L280 TraceCheckUtils]: 98: Hoare triple {21426#true} #t~post4 := ~len~0; {21426#true} is VALID [2020-07-18 05:18:11,009 INFO L280 TraceCheckUtils]: 99: Hoare triple {21426#true} ~len~0 := 1 + #t~post4; {21426#true} is VALID [2020-07-18 05:18:11,009 INFO L280 TraceCheckUtils]: 100: Hoare triple {21426#true} havoc #t~post4; {21426#true} is VALID [2020-07-18 05:18:11,009 INFO L280 TraceCheckUtils]: 101: Hoare triple {21426#true} SUMMARY for call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~head.base, ~head.offset, 4); srcloc: L579 {21426#true} is VALID [2020-07-18 05:18:11,009 INFO L280 TraceCheckUtils]: 102: Hoare triple {21426#true} ~head.base, ~head.offset := #t~mem5.base, #t~mem5.offset; {21426#true} is VALID [2020-07-18 05:18:11,010 INFO L280 TraceCheckUtils]: 103: Hoare triple {21426#true} havoc #t~mem5.base, #t~mem5.offset; {21426#true} is VALID [2020-07-18 05:18:11,010 INFO L280 TraceCheckUtils]: 104: Hoare triple {21426#true} assume !(~head.base != 0 || ~head.offset != 0); {21426#true} is VALID [2020-07-18 05:18:11,010 INFO L280 TraceCheckUtils]: 105: Hoare triple {21426#true} #res := ~len~0; {21426#true} is VALID [2020-07-18 05:18:11,010 INFO L280 TraceCheckUtils]: 106: Hoare triple {21426#true} assume true; {21426#true} is VALID [2020-07-18 05:18:11,010 INFO L275 TraceCheckUtils]: 107: Hoare quadruple {21426#true} {21427#false} #253#return; {21427#false} is VALID [2020-07-18 05:18:11,010 INFO L280 TraceCheckUtils]: 108: Hoare triple {21427#false} assume -2147483648 <= #t~ret22 && #t~ret22 <= 2147483647; {21427#false} is VALID [2020-07-18 05:18:11,011 INFO L280 TraceCheckUtils]: 109: Hoare triple {21427#false} assume ~k~0 + ~len~2 != #t~ret22; {21427#false} is VALID [2020-07-18 05:18:11,011 INFO L280 TraceCheckUtils]: 110: Hoare triple {21427#false} havoc #t~ret22; {21427#false} is VALID [2020-07-18 05:18:11,011 INFO L280 TraceCheckUtils]: 111: Hoare triple {21427#false} havoc #t~mem21.base, #t~mem21.offset; {21427#false} is VALID [2020-07-18 05:18:11,011 INFO L280 TraceCheckUtils]: 112: Hoare triple {21427#false} assume !false; {21427#false} is VALID [2020-07-18 05:18:11,024 INFO L134 CoverageAnalysis]: Checked inductivity of 43 backedges. 0 proven. 33 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2020-07-18 05:18:11,025 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1777800112] [2020-07-18 05:18:11,025 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2020-07-18 05:18:11,025 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18] total 18 [2020-07-18 05:18:11,025 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1227488747] [2020-07-18 05:18:11,026 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 113 [2020-07-18 05:18:11,026 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 05:18:11,026 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states. [2020-07-18 05:18:11,143 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 106 edges. 106 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:18:11,144 INFO L459 AbstractCegarLoop]: Interpolant automaton has 18 states [2020-07-18 05:18:11,144 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 05:18:11,144 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2020-07-18 05:18:11,145 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=39, Invalid=267, Unknown=0, NotChecked=0, Total=306 [2020-07-18 05:18:11,145 INFO L87 Difference]: Start difference. First operand 321 states and 380 transitions. Second operand 18 states. [2020-07-18 05:18:19,075 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:18:19,075 INFO L93 Difference]: Finished difference Result 536 states and 631 transitions. [2020-07-18 05:18:19,075 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 29 states. [2020-07-18 05:18:19,075 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 113 [2020-07-18 05:18:19,076 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 05:18:19,076 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2020-07-18 05:18:19,079 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 339 transitions. [2020-07-18 05:18:19,079 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2020-07-18 05:18:19,082 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 339 transitions. [2020-07-18 05:18:19,082 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 29 states and 339 transitions. [2020-07-18 05:18:19,612 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 339 edges. 339 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:18:19,629 INFO L225 Difference]: With dead ends: 536 [2020-07-18 05:18:19,629 INFO L226 Difference]: Without dead ends: 377 [2020-07-18 05:18:19,633 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 52 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 37 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 187 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=219, Invalid=1263, Unknown=0, NotChecked=0, Total=1482 [2020-07-18 05:18:19,634 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 377 states. [2020-07-18 05:18:21,398 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 377 to 318. [2020-07-18 05:18:21,398 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 05:18:21,399 INFO L82 GeneralOperation]: Start isEquivalent. First operand 377 states. Second operand 318 states. [2020-07-18 05:18:21,399 INFO L74 IsIncluded]: Start isIncluded. First operand 377 states. Second operand 318 states. [2020-07-18 05:18:21,399 INFO L87 Difference]: Start difference. First operand 377 states. Second operand 318 states. [2020-07-18 05:18:21,409 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:18:21,409 INFO L93 Difference]: Finished difference Result 377 states and 448 transitions. [2020-07-18 05:18:21,410 INFO L276 IsEmpty]: Start isEmpty. Operand 377 states and 448 transitions. [2020-07-18 05:18:21,411 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 05:18:21,411 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 05:18:21,411 INFO L74 IsIncluded]: Start isIncluded. First operand 318 states. Second operand 377 states. [2020-07-18 05:18:21,411 INFO L87 Difference]: Start difference. First operand 318 states. Second operand 377 states. [2020-07-18 05:18:21,423 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 05:18:21,423 INFO L93 Difference]: Finished difference Result 377 states and 448 transitions. [2020-07-18 05:18:21,423 INFO L276 IsEmpty]: Start isEmpty. Operand 377 states and 448 transitions. [2020-07-18 05:18:21,424 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 05:18:21,425 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 05:18:21,425 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 05:18:21,425 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 05:18:21,425 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 318 states. [2020-07-18 05:18:21,430 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 318 states to 318 states and 371 transitions. [2020-07-18 05:18:21,431 INFO L78 Accepts]: Start accepts. Automaton has 318 states and 371 transitions. Word has length 113 [2020-07-18 05:18:21,431 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 05:18:21,431 INFO L479 AbstractCegarLoop]: Abstraction has 318 states and 371 transitions. [2020-07-18 05:18:21,431 INFO L480 AbstractCegarLoop]: Interpolant automaton has 18 states. [2020-07-18 05:18:21,431 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 318 states and 371 transitions. [2020-07-18 05:18:22,386 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 371 edges. 371 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 05:18:22,387 INFO L276 IsEmpty]: Start isEmpty. Operand 318 states and 371 transitions. [2020-07-18 05:18:22,388 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 116 [2020-07-18 05:18:22,389 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 05:18:22,389 INFO L422 BasicCegarLoop]: trace histogram [3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 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] [2020-07-18 05:18:22,389 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable13 [2020-07-18 05:18:22,389 INFO L427 AbstractCegarLoop]: === Iteration 15 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 05:18:22,389 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 05:18:22,389 INFO L82 PathProgramCache]: Analyzing trace with hash 2144590086, now seen corresponding path program 1 times [2020-07-18 05:18:22,390 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 05:18:22,390 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1635977919] [2020-07-18 05:18:22,390 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 05:18:22,408 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-18 05:18:22,423 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-18 05:18:22,465 INFO L174 FreeRefinementEngine]: Strategy FIXED_PREFERENCES found a feasible trace [2020-07-18 05:18:22,465 INFO L520 BasicCegarLoop]: Counterexample might be feasible [2020-07-18 05:18:22,465 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable14 [2020-07-18 05:18:22,528 WARN L170 areAnnotationChecker]: ULTIMATE.initENTRY has no Hoare annotation [2020-07-18 05:18:22,529 WARN L170 areAnnotationChecker]: myexitENTRY has no Hoare annotation [2020-07-18 05:18:22,529 WARN L170 areAnnotationChecker]: sll_destroyENTRY has no Hoare annotation [2020-07-18 05:18:22,529 WARN L170 areAnnotationChecker]: _get_nondet_intENTRY has no Hoare annotation [2020-07-18 05:18:22,529 WARN L170 areAnnotationChecker]: __bswap_32ENTRY has no Hoare annotation [2020-07-18 05:18:22,529 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2020-07-18 05:18:22,529 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2020-07-18 05:18:22,529 WARN L170 areAnnotationChecker]: __bswap_64ENTRY has no Hoare annotation [2020-07-18 05:18:22,529 WARN L170 areAnnotationChecker]: sll_createENTRY has no Hoare annotation [2020-07-18 05:18:22,529 WARN L170 areAnnotationChecker]: sll_insertENTRY has no Hoare annotation [2020-07-18 05:18:22,529 WARN L170 areAnnotationChecker]: mainENTRY has no Hoare annotation [2020-07-18 05:18:22,529 WARN L170 areAnnotationChecker]: mainENTRY has no Hoare annotation [2020-07-18 05:18:22,530 WARN L170 areAnnotationChecker]: sll_lengthENTRY has no Hoare annotation [2020-07-18 05:18:22,530 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2020-07-18 05:18:22,530 WARN L170 areAnnotationChecker]: L561 has no Hoare annotation [2020-07-18 05:18:22,530 WARN L170 areAnnotationChecker]: L584-2 has no Hoare annotation [2020-07-18 05:18:22,530 WARN L170 areAnnotationChecker]: L584-2 has no Hoare annotation [2020-07-18 05:18:22,530 WARN L170 areAnnotationChecker]: L584-2 has no Hoare annotation [2020-07-18 05:18:22,530 WARN L170 areAnnotationChecker]: L608 has no Hoare annotation [2020-07-18 05:18:22,530 WARN L170 areAnnotationChecker]: L67 has no Hoare annotation [2020-07-18 05:18:22,530 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2020-07-18 05:18:22,531 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2020-07-18 05:18:22,531 WARN L170 areAnnotationChecker]: L72 has no Hoare annotation [2020-07-18 05:18:22,531 WARN L170 areAnnotationChecker]: L564 has no Hoare annotation [2020-07-18 05:18:22,531 WARN L170 areAnnotationChecker]: L590 has no Hoare annotation [2020-07-18 05:18:22,531 WARN L170 areAnnotationChecker]: L616 has no Hoare annotation [2020-07-18 05:18:22,531 WARN L170 areAnnotationChecker]: L576 has no Hoare annotation [2020-07-18 05:18:22,531 WARN L170 areAnnotationChecker]: L-1-1 has no Hoare annotation [2020-07-18 05:18:22,531 WARN L170 areAnnotationChecker]: L584-3 has no Hoare annotation [2020-07-18 05:18:22,531 WARN L170 areAnnotationChecker]: L585 has no Hoare annotation [2020-07-18 05:18:22,532 WARN L170 areAnnotationChecker]: L609 has no Hoare annotation [2020-07-18 05:18:22,532 WARN L170 areAnnotationChecker]: L67-1 has no Hoare annotation [2020-07-18 05:18:22,532 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2020-07-18 05:18:22,532 WARN L170 areAnnotationChecker]: L72-1 has no Hoare annotation [2020-07-18 05:18:22,532 WARN L170 areAnnotationChecker]: L565-6 has no Hoare annotation [2020-07-18 05:18:22,532 WARN L170 areAnnotationChecker]: L565-6 has no Hoare annotation [2020-07-18 05:18:22,532 WARN L170 areAnnotationChecker]: L591 has no Hoare annotation [2020-07-18 05:18:22,532 WARN L170 areAnnotationChecker]: L616-1 has no Hoare annotation [2020-07-18 05:18:22,532 WARN L170 areAnnotationChecker]: L577-2 has no Hoare annotation [2020-07-18 05:18:22,532 WARN L170 areAnnotationChecker]: L577-2 has no Hoare annotation [2020-07-18 05:18:22,533 WARN L170 areAnnotationChecker]: L577-2 has no Hoare annotation [2020-07-18 05:18:22,533 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2020-07-18 05:18:22,533 WARN L170 areAnnotationChecker]: sll_destroyEXIT has no Hoare annotation [2020-07-18 05:18:22,533 WARN L170 areAnnotationChecker]: L585-1 has no Hoare annotation [2020-07-18 05:18:22,533 WARN L170 areAnnotationChecker]: L610-11 has no Hoare annotation [2020-07-18 05:18:22,533 WARN L170 areAnnotationChecker]: L610-11 has no Hoare annotation [2020-07-18 05:18:22,533 WARN L170 areAnnotationChecker]: __bswap_32FINAL has no Hoare annotation [2020-07-18 05:18:22,533 WARN L170 areAnnotationChecker]: __bswap_64FINAL has no Hoare annotation [2020-07-18 05:18:22,534 WARN L170 areAnnotationChecker]: L565-7 has no Hoare annotation [2020-07-18 05:18:22,534 WARN L170 areAnnotationChecker]: L565-1 has no Hoare annotation [2020-07-18 05:18:22,534 WARN L170 areAnnotationChecker]: L591-1 has no Hoare annotation [2020-07-18 05:18:22,534 WARN L170 areAnnotationChecker]: L616-2 has no Hoare annotation [2020-07-18 05:18:22,534 WARN L170 areAnnotationChecker]: L577-3 has no Hoare annotation [2020-07-18 05:18:22,534 WARN L170 areAnnotationChecker]: L578 has no Hoare annotation [2020-07-18 05:18:22,534 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2020-07-18 05:18:22,534 WARN L170 areAnnotationChecker]: L628-2 has no Hoare annotation [2020-07-18 05:18:22,534 WARN L170 areAnnotationChecker]: L585-2 has no Hoare annotation [2020-07-18 05:18:22,535 WARN L170 areAnnotationChecker]: L610-12 has no Hoare annotation [2020-07-18 05:18:22,535 WARN L170 areAnnotationChecker]: L610-1 has no Hoare annotation [2020-07-18 05:18:22,535 WARN L170 areAnnotationChecker]: L610-1 has no Hoare annotation [2020-07-18 05:18:22,535 WARN L170 areAnnotationChecker]: sll_createFINAL has no Hoare annotation [2020-07-18 05:18:22,535 WARN L170 areAnnotationChecker]: L565-2 has no Hoare annotation [2020-07-18 05:18:22,535 WARN L170 areAnnotationChecker]: L565-2 has no Hoare annotation [2020-07-18 05:18:22,535 WARN L170 areAnnotationChecker]: L592 has no Hoare annotation [2020-07-18 05:18:22,535 WARN L170 areAnnotationChecker]: L592 has no Hoare annotation [2020-07-18 05:18:22,535 WARN L170 areAnnotationChecker]: L617 has no Hoare annotation [2020-07-18 05:18:22,536 WARN L170 areAnnotationChecker]: sll_lengthFINAL has no Hoare annotation [2020-07-18 05:18:22,536 WARN L170 areAnnotationChecker]: L578-1 has no Hoare annotation [2020-07-18 05:18:22,536 WARN L170 areAnnotationChecker]: L629 has no Hoare annotation [2020-07-18 05:18:22,536 WARN L170 areAnnotationChecker]: L586 has no Hoare annotation [2020-07-18 05:18:22,536 WARN L170 areAnnotationChecker]: _get_nondet_intFINAL has no Hoare annotation [2020-07-18 05:18:22,536 WARN L170 areAnnotationChecker]: L610-2 has no Hoare annotation [2020-07-18 05:18:22,536 WARN L170 areAnnotationChecker]: L610-5 has no Hoare annotation [2020-07-18 05:18:22,536 WARN L170 areAnnotationChecker]: L610-5 has no Hoare annotation [2020-07-18 05:18:22,536 WARN L170 areAnnotationChecker]: sll_createEXIT has no Hoare annotation [2020-07-18 05:18:22,537 WARN L170 areAnnotationChecker]: L565-3 has no Hoare annotation [2020-07-18 05:18:22,537 WARN L170 areAnnotationChecker]: L565-5 has no Hoare annotation [2020-07-18 05:18:22,537 WARN L170 areAnnotationChecker]: L593 has no Hoare annotation [2020-07-18 05:18:22,537 WARN L170 areAnnotationChecker]: L593 has no Hoare annotation [2020-07-18 05:18:22,537 WARN L170 areAnnotationChecker]: L592-1 has no Hoare annotation [2020-07-18 05:18:22,537 WARN L170 areAnnotationChecker]: L617-1 has no Hoare annotation [2020-07-18 05:18:22,537 WARN L170 areAnnotationChecker]: L617-1 has no Hoare annotation [2020-07-18 05:18:22,537 WARN L170 areAnnotationChecker]: sll_lengthEXIT has no Hoare annotation [2020-07-18 05:18:22,538 WARN L170 areAnnotationChecker]: L578-2 has no Hoare annotation [2020-07-18 05:18:22,538 WARN L170 areAnnotationChecker]: L617-4 has no Hoare annotation [2020-07-18 05:18:22,538 WARN L170 areAnnotationChecker]: L586-1 has no Hoare annotation [2020-07-18 05:18:22,538 WARN L170 areAnnotationChecker]: _get_nondet_intEXIT has no Hoare annotation [2020-07-18 05:18:22,538 WARN L170 areAnnotationChecker]: _get_nondet_intEXIT has no Hoare annotation [2020-07-18 05:18:22,538 WARN L170 areAnnotationChecker]: _get_nondet_intEXIT has no Hoare annotation [2020-07-18 05:18:22,538 WARN L170 areAnnotationChecker]: L610-3 has no Hoare annotation [2020-07-18 05:18:22,538 WARN L170 areAnnotationChecker]: L610-6 has no Hoare annotation [2020-07-18 05:18:22,538 WARN L170 areAnnotationChecker]: L610-9 has no Hoare annotation [2020-07-18 05:18:22,539 WARN L170 areAnnotationChecker]: L617-2 has no Hoare annotation [2020-07-18 05:18:22,539 WARN L170 areAnnotationChecker]: L566 has no Hoare annotation [2020-07-18 05:18:22,539 WARN L170 areAnnotationChecker]: L596 has no Hoare annotation [2020-07-18 05:18:22,539 WARN L170 areAnnotationChecker]: L625-1 has no Hoare annotation [2020-07-18 05:18:22,539 WARN L170 areAnnotationChecker]: L579 has no Hoare annotation [2020-07-18 05:18:22,539 WARN L170 areAnnotationChecker]: L617-5 has no Hoare annotation [2020-07-18 05:18:22,539 WARN L170 areAnnotationChecker]: L618-1 has no Hoare annotation [2020-07-18 05:18:22,539 WARN L170 areAnnotationChecker]: L621-1 has no Hoare annotation [2020-07-18 05:18:22,539 WARN L170 areAnnotationChecker]: L610-7 has no Hoare annotation [2020-07-18 05:18:22,539 WARN L170 areAnnotationChecker]: L610-10 has no Hoare annotation [2020-07-18 05:18:22,540 WARN L170 areAnnotationChecker]: L617-3 has no Hoare annotation [2020-07-18 05:18:22,540 WARN L170 areAnnotationChecker]: L566-1 has no Hoare annotation [2020-07-18 05:18:22,540 WARN L170 areAnnotationChecker]: L596-1 has no Hoare annotation [2020-07-18 05:18:22,540 WARN L170 areAnnotationChecker]: L625-2 has no Hoare annotation [2020-07-18 05:18:22,540 WARN L170 areAnnotationChecker]: L625-2 has no Hoare annotation [2020-07-18 05:18:22,540 WARN L170 areAnnotationChecker]: L579-1 has no Hoare annotation [2020-07-18 05:18:22,540 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2020-07-18 05:18:22,540 WARN L170 areAnnotationChecker]: L618-2 has no Hoare annotation [2020-07-18 05:18:22,540 WARN L170 areAnnotationChecker]: L621-2 has no Hoare annotation [2020-07-18 05:18:22,541 WARN L170 areAnnotationChecker]: L611 has no Hoare annotation [2020-07-18 05:18:22,541 WARN L170 areAnnotationChecker]: L618 has no Hoare annotation [2020-07-18 05:18:22,541 WARN L170 areAnnotationChecker]: L618 has no Hoare annotation [2020-07-18 05:18:22,541 WARN L170 areAnnotationChecker]: L567 has no Hoare annotation [2020-07-18 05:18:22,541 WARN L170 areAnnotationChecker]: L567 has no Hoare annotation [2020-07-18 05:18:22,541 WARN L170 areAnnotationChecker]: L596-2 has no Hoare annotation [2020-07-18 05:18:22,541 WARN L170 areAnnotationChecker]: L625-3 has no Hoare annotation [2020-07-18 05:18:22,541 WARN L170 areAnnotationChecker]: L625-5 has no Hoare annotation [2020-07-18 05:18:22,541 WARN L170 areAnnotationChecker]: L579-2 has no Hoare annotation [2020-07-18 05:18:22,542 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2020-07-18 05:18:22,542 WARN L170 areAnnotationChecker]: L618-3 has no Hoare annotation [2020-07-18 05:18:22,542 WARN L170 areAnnotationChecker]: L621-3 has no Hoare annotation [2020-07-18 05:18:22,542 WARN L170 areAnnotationChecker]: L611-1 has no Hoare annotation [2020-07-18 05:18:22,542 WARN L170 areAnnotationChecker]: L568 has no Hoare annotation [2020-07-18 05:18:22,542 WARN L170 areAnnotationChecker]: L568 has no Hoare annotation [2020-07-18 05:18:22,542 WARN L170 areAnnotationChecker]: L567-1 has no Hoare annotation [2020-07-18 05:18:22,542 WARN L170 areAnnotationChecker]: L597-6 has no Hoare annotation [2020-07-18 05:18:22,543 WARN L170 areAnnotationChecker]: L597-6 has no Hoare annotation [2020-07-18 05:18:22,543 WARN L170 areAnnotationChecker]: L625-4 has no Hoare annotation [2020-07-18 05:18:22,543 WARN L170 areAnnotationChecker]: L625-6 has no Hoare annotation [2020-07-18 05:18:22,543 WARN L170 areAnnotationChecker]: L619 has no Hoare annotation [2020-07-18 05:18:22,543 WARN L170 areAnnotationChecker]: L622 has no Hoare annotation [2020-07-18 05:18:22,543 WARN L170 areAnnotationChecker]: L622 has no Hoare annotation [2020-07-18 05:18:22,543 WARN L170 areAnnotationChecker]: L611-2 has no Hoare annotation [2020-07-18 05:18:22,543 WARN L170 areAnnotationChecker]: L570 has no Hoare annotation [2020-07-18 05:18:22,543 WARN L170 areAnnotationChecker]: L597-7 has no Hoare annotation [2020-07-18 05:18:22,543 WARN L170 areAnnotationChecker]: L597-1 has no Hoare annotation [2020-07-18 05:18:22,544 WARN L170 areAnnotationChecker]: L626 has no Hoare annotation [2020-07-18 05:18:22,544 WARN L170 areAnnotationChecker]: L626 has no Hoare annotation [2020-07-18 05:18:22,544 WARN L170 areAnnotationChecker]: L628 has no Hoare annotation [2020-07-18 05:18:22,544 WARN L170 areAnnotationChecker]: L620-11 has no Hoare annotation [2020-07-18 05:18:22,544 WARN L170 areAnnotationChecker]: L620-11 has no Hoare annotation [2020-07-18 05:18:22,544 WARN L170 areAnnotationChecker]: L622-1 has no Hoare annotation [2020-07-18 05:18:22,544 WARN L170 areAnnotationChecker]: L601 has no Hoare annotation [2020-07-18 05:18:22,544 WARN L170 areAnnotationChecker]: L601 has no Hoare annotation [2020-07-18 05:18:22,545 WARN L170 areAnnotationChecker]: L597-2 has no Hoare annotation [2020-07-18 05:18:22,545 WARN L170 areAnnotationChecker]: L597-2 has no Hoare annotation [2020-07-18 05:18:22,545 WARN L170 areAnnotationChecker]: L631 has no Hoare annotation [2020-07-18 05:18:22,545 WARN L170 areAnnotationChecker]: L628-1 has no Hoare annotation [2020-07-18 05:18:22,545 WARN L170 areAnnotationChecker]: L628-1 has no Hoare annotation [2020-07-18 05:18:22,545 WARN L170 areAnnotationChecker]: L620-12 has no Hoare annotation [2020-07-18 05:18:22,545 WARN L170 areAnnotationChecker]: L620-1 has no Hoare annotation [2020-07-18 05:18:22,545 WARN L170 areAnnotationChecker]: L620-1 has no Hoare annotation [2020-07-18 05:18:22,545 WARN L170 areAnnotationChecker]: L623 has no Hoare annotation [2020-07-18 05:18:22,546 WARN L170 areAnnotationChecker]: L603 has no Hoare annotation [2020-07-18 05:18:22,546 WARN L170 areAnnotationChecker]: L605 has no Hoare annotation [2020-07-18 05:18:22,546 WARN L170 areAnnotationChecker]: L597-3 has no Hoare annotation [2020-07-18 05:18:22,546 WARN L170 areAnnotationChecker]: L597-5 has no Hoare annotation [2020-07-18 05:18:22,546 WARN L170 areAnnotationChecker]: L617-6 has no Hoare annotation [2020-07-18 05:18:22,546 WARN L170 areAnnotationChecker]: L625 has no Hoare annotation [2020-07-18 05:18:22,546 WARN L170 areAnnotationChecker]: L625 has no Hoare annotation [2020-07-18 05:18:22,546 WARN L170 areAnnotationChecker]: L620-2 has no Hoare annotation [2020-07-18 05:18:22,546 WARN L170 areAnnotationChecker]: L620-5 has no Hoare annotation [2020-07-18 05:18:22,547 WARN L170 areAnnotationChecker]: L620-5 has no Hoare annotation [2020-07-18 05:18:22,547 WARN L170 areAnnotationChecker]: L623-1 has no Hoare annotation [2020-07-18 05:18:22,547 WARN L170 areAnnotationChecker]: L605-1 has no Hoare annotation [2020-07-18 05:18:22,547 WARN L170 areAnnotationChecker]: L598 has no Hoare annotation [2020-07-18 05:18:22,547 WARN L170 areAnnotationChecker]: L617-7 has no Hoare annotation [2020-07-18 05:18:22,547 WARN L170 areAnnotationChecker]: L620-3 has no Hoare annotation [2020-07-18 05:18:22,547 WARN L170 areAnnotationChecker]: L620-6 has no Hoare annotation [2020-07-18 05:18:22,547 WARN L170 areAnnotationChecker]: L620-9 has no Hoare annotation [2020-07-18 05:18:22,547 WARN L170 areAnnotationChecker]: sll_insertEXIT has no Hoare annotation [2020-07-18 05:18:22,547 WARN L170 areAnnotationChecker]: L599 has no Hoare annotation [2020-07-18 05:18:22,548 WARN L170 areAnnotationChecker]: L620-7 has no Hoare annotation [2020-07-18 05:18:22,548 WARN L170 areAnnotationChecker]: L620-10 has no Hoare annotation [2020-07-18 05:18:22,548 WARN L170 areAnnotationChecker]: L599-1 has no Hoare annotation [2020-07-18 05:18:22,548 WARN L170 areAnnotationChecker]: L621 has no Hoare annotation [2020-07-18 05:18:22,548 WARN L170 areAnnotationChecker]: L621 has no Hoare annotation [2020-07-18 05:18:22,548 WARN L170 areAnnotationChecker]: L599-2 has no Hoare annotation [2020-07-18 05:18:22,548 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:18:22,553 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 18.07 05:18:22 BoogieIcfgContainer [2020-07-18 05:18:22,553 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2020-07-18 05:18:22,556 INFO L168 Benchmark]: Toolchain (without parser) took 104084.07 ms. Allocated memory was 137.9 MB in the beginning and 664.3 MB in the end (delta: 526.4 MB). Free memory was 101.9 MB in the beginning and 337.2 MB in the end (delta: -235.3 MB). Peak memory consumption was 291.1 MB. Max. memory is 7.1 GB. [2020-07-18 05:18:22,556 INFO L168 Benchmark]: CDTParser took 0.93 ms. Allocated memory is still 137.9 MB. Free memory was 121.3 MB in the beginning and 121.1 MB in the end (delta: 210.0 kB). Peak memory consumption was 210.0 kB. Max. memory is 7.1 GB. [2020-07-18 05:18:22,556 INFO L168 Benchmark]: CACSL2BoogieTranslator took 723.56 ms. Allocated memory was 137.9 MB in the beginning and 203.4 MB in the end (delta: 65.5 MB). Free memory was 101.7 MB in the beginning and 167.8 MB in the end (delta: -66.1 MB). Peak memory consumption was 27.7 MB. Max. memory is 7.1 GB. [2020-07-18 05:18:22,557 INFO L168 Benchmark]: Boogie Preprocessor took 81.48 ms. Allocated memory is still 203.4 MB. Free memory was 167.8 MB in the beginning and 164.3 MB in the end (delta: 3.5 MB). Peak memory consumption was 3.5 MB. Max. memory is 7.1 GB. [2020-07-18 05:18:22,560 INFO L168 Benchmark]: RCFGBuilder took 974.85 ms. Allocated memory was 203.4 MB in the beginning and 235.9 MB in the end (delta: 32.5 MB). Free memory was 164.3 MB in the beginning and 202.0 MB in the end (delta: -37.7 MB). Peak memory consumption was 80.4 MB. Max. memory is 7.1 GB. [2020-07-18 05:18:22,561 INFO L168 Benchmark]: TraceAbstraction took 102291.13 ms. Allocated memory was 235.9 MB in the beginning and 664.3 MB in the end (delta: 428.3 MB). Free memory was 202.0 MB in the beginning and 337.2 MB in the end (delta: -135.2 MB). Peak memory consumption was 293.1 MB. Max. memory is 7.1 GB. [2020-07-18 05:18:22,563 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.93 ms. Allocated memory is still 137.9 MB. Free memory was 121.3 MB in the beginning and 121.1 MB in the end (delta: 210.0 kB). Peak memory consumption was 210.0 kB. Max. memory is 7.1 GB. * CACSL2BoogieTranslator took 723.56 ms. Allocated memory was 137.9 MB in the beginning and 203.4 MB in the end (delta: 65.5 MB). Free memory was 101.7 MB in the beginning and 167.8 MB in the end (delta: -66.1 MB). Peak memory consumption was 27.7 MB. Max. memory is 7.1 GB. * Boogie Preprocessor took 81.48 ms. Allocated memory is still 203.4 MB. Free memory was 167.8 MB in the beginning and 164.3 MB in the end (delta: 3.5 MB). Peak memory consumption was 3.5 MB. Max. memory is 7.1 GB. * RCFGBuilder took 974.85 ms. Allocated memory was 203.4 MB in the beginning and 235.9 MB in the end (delta: 32.5 MB). Free memory was 164.3 MB in the beginning and 202.0 MB in the end (delta: -37.7 MB). Peak memory consumption was 80.4 MB. Max. memory is 7.1 GB. * TraceAbstraction took 102291.13 ms. Allocated memory was 235.9 MB in the beginning and 664.3 MB in the end (delta: 428.3 MB). Free memory was 202.0 MB in the beginning and 337.2 MB in the end (delta: -135.2 MB). Peak memory consumption was 293.1 MB. Max. memory is 7.1 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - CounterExampleResult [Line: 630]: a call of __VERIFIER_error() is reachable a call of __VERIFIER_error() is reachable We found a FailurePath: [L616] CALL, EXPR _get_nondet_int(2, 5) VAL [\old(from)=2, \old(until)=5] [L609] int len = from; VAL [\old(from)=2, \old(until)=5, from=2, len=2, until=5] [L610] len < until && __VERIFIER_nondet_int() VAL [\old(from)=2, \old(until)=5, from=2, len=2, len < until && __VERIFIER_nondet_int()=1, until=5] [L610] len < until && __VERIFIER_nondet_int() VAL [\old(from)=2, \old(until)=5, __VERIFIER_nondet_int()=0, from=2, len=2, len < until && __VERIFIER_nondet_int()=0, until=5] [L610] COND FALSE !(len < until && __VERIFIER_nondet_int()) VAL [\old(from)=2, \old(until)=5, __VERIFIER_nondet_int()=0, from=2, len=2, len < until && __VERIFIER_nondet_int()=0, until=5] [L613] return len; VAL [\old(from)=2, \old(until)=5, \result=2, from=2, len=2, until=5] [L616] RET, EXPR _get_nondet_int(2, 5) VAL [_get_nondet_int(2, 5)=2] [L616] const int len = _get_nondet_int(2, 5); VAL [_get_nondet_int(2, 5)=2, len=2] [L617] SLL s = sll_create(len); VAL [len=2, s={2:0}] [L617] CALL, EXPR sll_create(len) VAL [\old(len)=2] [L564] SLL head = ((void *)0); VAL [\old(len)=2, head={0:0}, len=2] [L565] EXPR len-- VAL [\old(len)=2, head={0:0}, len=1, len--=2] [L565] COND TRUE len-- > 0 VAL [\old(len)=2, head={0:0}, len=1, len--=2] [L566] SLL new_head = (SLL) malloc(sizeof(struct node)); VAL [\old(len)=2, head={0:0}, len=1, malloc(sizeof(struct node))={-1:0}, new_head={-1:0}] [L567] COND FALSE !(((void *)0) == new_head) VAL [\old(len)=2, head={0:0}, len=1, malloc(sizeof(struct node))={-1:0}, new_head={-1:0}] [L570] new_head->next = head VAL [\old(len)=2, head={0:0}, len=1, malloc(sizeof(struct node))={-1:0}, new_head={-1:0}] [L571] head = new_head VAL [\old(len)=2, head={-1:0}, len=1, malloc(sizeof(struct node))={-1:0}, new_head={-1:0}] [L565] EXPR len-- VAL [\old(len)=2, head={-1:0}, len=0, len--=1, malloc(sizeof(struct node))={-1:0}, new_head={-1:0}] [L565] COND TRUE len-- > 0 VAL [\old(len)=2, head={-1:0}, len=0, len--=1, malloc(sizeof(struct node))={-1:0}, new_head={-1:0}] [L566] SLL new_head = (SLL) malloc(sizeof(struct node)); VAL [\old(len)=2, head={-1:0}, len=0, malloc(sizeof(struct node))={-2:0}, new_head={-2:0}] [L567] COND FALSE !(((void *)0) == new_head) VAL [\old(len)=2, head={-1:0}, len=0, malloc(sizeof(struct node))={-2:0}, new_head={-2:0}] [L570] new_head->next = head VAL [\old(len)=2, head={-1:0}, len=0, malloc(sizeof(struct node))={-2:0}, new_head={-2:0}] [L571] head = new_head VAL [\old(len)=2, head={-2:0}, len=0, malloc(sizeof(struct node))={-2:0}, new_head={-2:0}] [L565] EXPR len-- VAL [\old(len)=2, head={-2:0}, len=-1, len--=0, malloc(sizeof(struct node))={-2:0}, new_head={-2:0}] [L565] COND FALSE !(len-- > 0) VAL [\old(len)=2, head={-2:0}, len=-1, len--=0, malloc(sizeof(struct node))={-2:0}, new_head={-2:0}] [L573] return head; VAL [\old(len)=2, \result={-2:0}, head={-2:0}, len=-1, malloc(sizeof(struct node))={-2:0}, new_head={-2:0}] [L617] RET, EXPR sll_create(len) VAL [len=2, s={2:0}, sll_create(len)={-2:0}] [L617] SLL s = sll_create(len); VAL [len=2, s={2:0}, sll_create(len)={-2:0}] [L618] CALL, EXPR _get_nondet_int(0, len - 1) VAL [\old(from)=0, \old(until)=1] [L609] int len = from; VAL [\old(from)=0, \old(until)=1, from=0, len=0, until=1] [L610] len < until && __VERIFIER_nondet_int() VAL [\old(from)=0, \old(until)=1, from=0, len=0, len < until && __VERIFIER_nondet_int()=1, until=1] [L610] len < until && __VERIFIER_nondet_int() VAL [\old(from)=0, \old(until)=1, __VERIFIER_nondet_int()=1, from=0, len=0, len < until && __VERIFIER_nondet_int()=1, until=1] [L610] COND TRUE len < until && __VERIFIER_nondet_int() VAL [\old(from)=0, \old(until)=1, __VERIFIER_nondet_int()=1, from=0, len=0, len < until && __VERIFIER_nondet_int()=1, until=1] [L611] len++ VAL [\old(from)=0, \old(until)=1, from=0, len=1, until=1] [L610] len < until && __VERIFIER_nondet_int() VAL [\old(from)=0, \old(until)=1, from=0, len=1, len < until && __VERIFIER_nondet_int()=0, until=1] [L610] COND FALSE !(len < until && __VERIFIER_nondet_int()) VAL [\old(from)=0, \old(until)=1, from=0, len=1, len < until && __VERIFIER_nondet_int()=0, until=1] [L613] return len; VAL [\old(from)=0, \old(until)=1, \result=1, from=0, len=1, until=1] [L618] RET, EXPR _get_nondet_int(0, len - 1) VAL [_get_nondet_int(0, len - 1)=1, len=2, s={2:0}] [L618] const int k = _get_nondet_int(0, len - 1); VAL [_get_nondet_int(0, len - 1)=1, k=1, len=2, s={2:0}] [L619] int i = 0; VAL [i=0, k=1, len=2, s={2:0}] [L620] i < k && __VERIFIER_nondet_int() VAL [i=0, i < k && __VERIFIER_nondet_int()=1, k=1, len=2, s={2:0}] [L620] i < k && __VERIFIER_nondet_int() VAL [__VERIFIER_nondet_int()=0, i=0, i < k && __VERIFIER_nondet_int()=0, k=1, len=2, s={2:0}] [L620] COND FALSE !(i < k && __VERIFIER_nondet_int()) VAL [__VERIFIER_nondet_int()=0, i=0, i < k && __VERIFIER_nondet_int()=0, k=1, len=2, s={2:0}] [L625] EXPR \read(s) VAL [\read(s)={-2:0}, i=0, k=1, len=2, s={2:0}] [L625] CALL, EXPR sll_length(s) VAL [head={-2:0}] [L576] int len = 0; VAL [head={-2:0}, head={-2:0}, len=0] [L577] COND TRUE \read(head) VAL [head={-2:0}, head={-2:0}, len=0] [L578] len++ VAL [head={-2:0}, head={-2:0}, len=1] [L579] EXPR head->next VAL [head={-2:0}, head={-2:0}, head->next={-1:0}, len=1] [L579] head = head->next VAL [head={-2:0}, head={-1:0}, head->next={-1:0}, len=1] [L577] COND TRUE \read(head) VAL [head={-2:0}, head={-1:0}, len=1] [L578] len++ VAL [head={-2:0}, head={-1:0}, len=2] [L579] EXPR head->next VAL [head={-1:0}, head={-2:0}, head->next={0:0}, len=2] [L579] head = head->next VAL [head={0:0}, head={-2:0}, head->next={0:0}, len=2] [L577] COND FALSE !(\read(head)) VAL [head={0:0}, head={-2:0}, len=2] [L581] return len; VAL [\result=2, head={0:0}, head={-2:0}, len=2] [L625] RET, EXPR sll_length(s) VAL [\read(s)={-2:0}, i=0, k=1, len=2, s={2:0}, sll_length(s)=2] [L625] COND TRUE k + len != sll_length(s) VAL [\read(s)={-2:0}, i=0, k=1, len=2, s={2:0}, sll_length(s)=2] [L630] __VERIFIER_error() VAL [i=0, k=1, len=2, s={2:0}] - StatisticsResult: Ultimate Automizer benchmark data CFG has 11 procedures, 153 locations, 1 error locations. Started 1 CEGAR loops. VerificationResult: UNSAFE, OverallTime: 102.1s, OverallIterations: 15, TraceHistogramMax: 3, AutomataDifference: 76.7s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 1932 SDtfs, 4096 SDslu, 11645 SDs, 0 SdLazy, 13081 SolverSat, 553 SolverUnsat, 0 SolverUnknown, 0 SolverNotchecked, 18.7s Time, PredicateUnifierStatistics: 0 DeclaredPredicates, 589 GetRequests, 195 SyntacticMatches, 0 SemanticMatches, 394 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1761 ImplicationChecksByTransitivity, 11.7s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=321occurred in iteration=13, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 10.3s AutomataMinimizationTime, 14 MinimizatonAttempts, 648 StatesRemovedByMinimization, 14 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.3s SatisfiabilityAnalysisTime, 6.1s InterpolantComputationTime, 1377 NumberOfCodeBlocks, 1377 NumberOfCodeBlocksAsserted, 15 NumberOfCheckSat, 1248 ConstructedInterpolants, 0 QuantifiedInterpolants, 572611 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 14 InterpolantComputations, 2 PerfectInterpolantSequences, 167/365 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...