/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 -s ../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationFastUPR_32.epf -i ../../../trunk/examples/svcomp/ldv-regression/rule60_list2.c_1.i -------------------------------------------------------------------------------- This is Ultimate 0.1.25-46f3038-m [2020-07-08 16:23:33,395 INFO L177 SettingsManager]: Resetting all preferences to default values... [2020-07-08 16:23:33,397 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2020-07-08 16:23:33,411 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2020-07-08 16:23:33,411 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2020-07-08 16:23:33,412 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2020-07-08 16:23:33,414 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2020-07-08 16:23:33,416 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2020-07-08 16:23:33,418 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2020-07-08 16:23:33,419 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2020-07-08 16:23:33,420 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2020-07-08 16:23:33,421 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2020-07-08 16:23:33,421 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2020-07-08 16:23:33,423 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2020-07-08 16:23:33,424 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2020-07-08 16:23:33,425 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2020-07-08 16:23:33,426 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2020-07-08 16:23:33,427 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2020-07-08 16:23:33,428 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2020-07-08 16:23:33,430 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2020-07-08 16:23:33,432 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2020-07-08 16:23:33,433 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2020-07-08 16:23:33,434 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2020-07-08 16:23:33,435 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2020-07-08 16:23:33,437 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2020-07-08 16:23:33,437 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2020-07-08 16:23:33,437 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2020-07-08 16:23:33,438 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2020-07-08 16:23:33,439 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2020-07-08 16:23:33,440 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2020-07-08 16:23:33,440 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2020-07-08 16:23:33,441 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2020-07-08 16:23:33,441 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2020-07-08 16:23:33,442 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2020-07-08 16:23:33,443 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2020-07-08 16:23:33,444 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2020-07-08 16:23:33,444 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2020-07-08 16:23:33,445 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2020-07-08 16:23:33,445 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2020-07-08 16:23:33,446 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2020-07-08 16:23:33,447 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2020-07-08 16:23:33,448 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationFastUPR_32.epf [2020-07-08 16:23:33,462 INFO L113 SettingsManager]: Loading preferences was successful [2020-07-08 16:23:33,463 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2020-07-08 16:23:33,465 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2020-07-08 16:23:33,465 INFO L138 SettingsManager]: * sizeof long=4 [2020-07-08 16:23:33,465 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2020-07-08 16:23:33,466 INFO L138 SettingsManager]: * sizeof POINTER=4 [2020-07-08 16:23:33,466 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2020-07-08 16:23:33,466 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2020-07-08 16:23:33,466 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2020-07-08 16:23:33,466 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2020-07-08 16:23:33,467 INFO L138 SettingsManager]: * sizeof long double=12 [2020-07-08 16:23:33,467 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2020-07-08 16:23:33,467 INFO L138 SettingsManager]: * Use constant arrays=true [2020-07-08 16:23:33,467 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2020-07-08 16:23:33,468 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2020-07-08 16:23:33,469 INFO L138 SettingsManager]: * Size of a code block=SingleStatement [2020-07-08 16:23:33,469 INFO L138 SettingsManager]: * To the following directory=./dump/ [2020-07-08 16:23:33,469 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2020-07-08 16:23:33,469 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2020-07-08 16:23:33,470 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2020-07-08 16:23:33,470 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=AcceleratedInterpolation [2020-07-08 16:23:33,470 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2020-07-08 16:23:33,470 INFO L138 SettingsManager]: * Use separate solver for trace checks=false [2020-07-08 16:23:33,819 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2020-07-08 16:23:33,838 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2020-07-08 16:23:33,842 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2020-07-08 16:23:33,843 INFO L271 PluginConnector]: Initializing CDTParser... [2020-07-08 16:23:33,844 INFO L275 PluginConnector]: CDTParser initialized [2020-07-08 16:23:33,845 INFO L429 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/ldv-regression/rule60_list2.c_1.i [2020-07-08 16:23:33,914 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/6af665421/fbc0f066723c433cae2d9adb9141f8f5/FLAG9bcc831a5 [2020-07-08 16:23:34,502 INFO L306 CDTParser]: Found 1 translation units. [2020-07-08 16:23:34,503 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/ldv-regression/rule60_list2.c_1.i [2020-07-08 16:23:34,515 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/6af665421/fbc0f066723c433cae2d9adb9141f8f5/FLAG9bcc831a5 [2020-07-08 16:23:34,754 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/6af665421/fbc0f066723c433cae2d9adb9141f8f5 [2020-07-08 16:23:34,763 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2020-07-08 16:23:34,766 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2020-07-08 16:23:34,767 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2020-07-08 16:23:34,767 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2020-07-08 16:23:34,771 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2020-07-08 16:23:34,773 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.07 04:23:34" (1/1) ... [2020-07-08 16:23:34,776 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@3c3213f3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.07 04:23:34, skipping insertion in model container [2020-07-08 16:23:34,777 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.07 04:23:34" (1/1) ... [2020-07-08 16:23:34,785 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2020-07-08 16:23:34,849 INFO L178 MainTranslator]: Built tables and reachable declarations [2020-07-08 16:23:35,395 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-07-08 16:23:35,408 INFO L203 MainTranslator]: Completed pre-run [2020-07-08 16:23:35,485 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-07-08 16:23:35,578 INFO L208 MainTranslator]: Completed translation [2020-07-08 16:23:35,578 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.07 04:23:35 WrapperNode [2020-07-08 16:23:35,578 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2020-07-08 16:23:35,579 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2020-07-08 16:23:35,579 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2020-07-08 16:23:35,580 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2020-07-08 16:23:35,593 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.07 04:23:35" (1/1) ... [2020-07-08 16:23:35,593 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.07 04:23:35" (1/1) ... [2020-07-08 16:23:35,608 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.07 04:23:35" (1/1) ... [2020-07-08 16:23:35,608 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.07 04:23:35" (1/1) ... [2020-07-08 16:23:35,632 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.07 04:23:35" (1/1) ... [2020-07-08 16:23:35,634 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.07 04:23:35" (1/1) ... [2020-07-08 16:23:35,638 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.07 04:23:35" (1/1) ... [2020-07-08 16:23:35,650 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2020-07-08 16:23:35,656 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2020-07-08 16:23:35,656 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2020-07-08 16:23:35,656 INFO L275 PluginConnector]: RCFGBuilder initialized [2020-07-08 16:23:35,657 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.07 04:23:35" (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-08 16:23:35,717 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2020-07-08 16:23:35,718 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2020-07-08 16:23:35,718 INFO L138 BoogieDeclarations]: Found implementation of procedure __blast_assert [2020-07-08 16:23:35,718 INFO L138 BoogieDeclarations]: Found implementation of procedure __getMemory [2020-07-08 16:23:35,718 INFO L138 BoogieDeclarations]: Found implementation of procedure my_malloc [2020-07-08 16:23:35,718 INFO L138 BoogieDeclarations]: Found implementation of procedure list_add [2020-07-08 16:23:35,718 INFO L138 BoogieDeclarations]: Found implementation of procedure list_del [2020-07-08 16:23:35,718 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2020-07-08 16:23:35,718 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_error [2020-07-08 16:23:35,719 INFO L130 BoogieDeclarations]: Found specification of procedure __blast_assert [2020-07-08 16:23:35,719 INFO L130 BoogieDeclarations]: Found specification of procedure __underflow [2020-07-08 16:23:35,719 INFO L130 BoogieDeclarations]: Found specification of procedure __uflow [2020-07-08 16:23:35,719 INFO L130 BoogieDeclarations]: Found specification of procedure __overflow [2020-07-08 16:23:35,719 INFO L130 BoogieDeclarations]: Found specification of procedure _IO_getc [2020-07-08 16:23:35,719 INFO L130 BoogieDeclarations]: Found specification of procedure _IO_putc [2020-07-08 16:23:35,719 INFO L130 BoogieDeclarations]: Found specification of procedure _IO_feof [2020-07-08 16:23:35,720 INFO L130 BoogieDeclarations]: Found specification of procedure _IO_ferror [2020-07-08 16:23:35,720 INFO L130 BoogieDeclarations]: Found specification of procedure _IO_peekc_locked [2020-07-08 16:23:35,720 INFO L130 BoogieDeclarations]: Found specification of procedure _IO_flockfile [2020-07-08 16:23:35,720 INFO L130 BoogieDeclarations]: Found specification of procedure _IO_funlockfile [2020-07-08 16:23:35,720 INFO L130 BoogieDeclarations]: Found specification of procedure _IO_ftrylockfile [2020-07-08 16:23:35,720 INFO L130 BoogieDeclarations]: Found specification of procedure _IO_vfscanf [2020-07-08 16:23:35,721 INFO L130 BoogieDeclarations]: Found specification of procedure _IO_vfprintf [2020-07-08 16:23:35,721 INFO L130 BoogieDeclarations]: Found specification of procedure _IO_padn [2020-07-08 16:23:35,721 INFO L130 BoogieDeclarations]: Found specification of procedure _IO_sgetn [2020-07-08 16:23:35,721 INFO L130 BoogieDeclarations]: Found specification of procedure _IO_seekoff [2020-07-08 16:23:35,721 INFO L130 BoogieDeclarations]: Found specification of procedure _IO_seekpos [2020-07-08 16:23:35,721 INFO L130 BoogieDeclarations]: Found specification of procedure _IO_free_backup_area [2020-07-08 16:23:35,722 INFO L130 BoogieDeclarations]: Found specification of procedure remove [2020-07-08 16:23:35,722 INFO L130 BoogieDeclarations]: Found specification of procedure rename [2020-07-08 16:23:35,722 INFO L130 BoogieDeclarations]: Found specification of procedure renameat [2020-07-08 16:23:35,722 INFO L130 BoogieDeclarations]: Found specification of procedure tmpfile [2020-07-08 16:23:35,722 INFO L130 BoogieDeclarations]: Found specification of procedure tmpnam [2020-07-08 16:23:35,722 INFO L130 BoogieDeclarations]: Found specification of procedure tmpnam_r [2020-07-08 16:23:35,723 INFO L130 BoogieDeclarations]: Found specification of procedure tempnam [2020-07-08 16:23:35,723 INFO L130 BoogieDeclarations]: Found specification of procedure fclose [2020-07-08 16:23:35,723 INFO L130 BoogieDeclarations]: Found specification of procedure fflush [2020-07-08 16:23:35,723 INFO L130 BoogieDeclarations]: Found specification of procedure fflush_unlocked [2020-07-08 16:23:35,723 INFO L130 BoogieDeclarations]: Found specification of procedure fopen [2020-07-08 16:23:35,723 INFO L130 BoogieDeclarations]: Found specification of procedure freopen [2020-07-08 16:23:35,724 INFO L130 BoogieDeclarations]: Found specification of procedure fdopen [2020-07-08 16:23:35,724 INFO L130 BoogieDeclarations]: Found specification of procedure fmemopen [2020-07-08 16:23:35,724 INFO L130 BoogieDeclarations]: Found specification of procedure open_memstream [2020-07-08 16:23:35,724 INFO L130 BoogieDeclarations]: Found specification of procedure setbuf [2020-07-08 16:23:35,724 INFO L130 BoogieDeclarations]: Found specification of procedure setvbuf [2020-07-08 16:23:35,724 INFO L130 BoogieDeclarations]: Found specification of procedure setbuffer [2020-07-08 16:23:35,724 INFO L130 BoogieDeclarations]: Found specification of procedure setlinebuf [2020-07-08 16:23:35,725 INFO L130 BoogieDeclarations]: Found specification of procedure fprintf [2020-07-08 16:23:35,725 INFO L130 BoogieDeclarations]: Found specification of procedure printf [2020-07-08 16:23:35,725 INFO L130 BoogieDeclarations]: Found specification of procedure sprintf [2020-07-08 16:23:35,725 INFO L130 BoogieDeclarations]: Found specification of procedure vfprintf [2020-07-08 16:23:35,725 INFO L130 BoogieDeclarations]: Found specification of procedure vprintf [2020-07-08 16:23:35,725 INFO L130 BoogieDeclarations]: Found specification of procedure vsprintf [2020-07-08 16:23:35,726 INFO L130 BoogieDeclarations]: Found specification of procedure snprintf [2020-07-08 16:23:35,726 INFO L130 BoogieDeclarations]: Found specification of procedure vsnprintf [2020-07-08 16:23:35,726 INFO L130 BoogieDeclarations]: Found specification of procedure vdprintf [2020-07-08 16:23:35,726 INFO L130 BoogieDeclarations]: Found specification of procedure dprintf [2020-07-08 16:23:35,726 INFO L130 BoogieDeclarations]: Found specification of procedure fscanf [2020-07-08 16:23:35,726 INFO L130 BoogieDeclarations]: Found specification of procedure scanf [2020-07-08 16:23:35,726 INFO L130 BoogieDeclarations]: Found specification of procedure sscanf [2020-07-08 16:23:35,726 INFO L130 BoogieDeclarations]: Found specification of procedure vfscanf [2020-07-08 16:23:35,726 INFO L130 BoogieDeclarations]: Found specification of procedure vscanf [2020-07-08 16:23:35,726 INFO L130 BoogieDeclarations]: Found specification of procedure vsscanf [2020-07-08 16:23:35,727 INFO L130 BoogieDeclarations]: Found specification of procedure fgetc [2020-07-08 16:23:35,727 INFO L130 BoogieDeclarations]: Found specification of procedure getc [2020-07-08 16:23:35,727 INFO L130 BoogieDeclarations]: Found specification of procedure getchar [2020-07-08 16:23:35,727 INFO L130 BoogieDeclarations]: Found specification of procedure getc_unlocked [2020-07-08 16:23:35,727 INFO L130 BoogieDeclarations]: Found specification of procedure getchar_unlocked [2020-07-08 16:23:35,727 INFO L130 BoogieDeclarations]: Found specification of procedure fgetc_unlocked [2020-07-08 16:23:35,727 INFO L130 BoogieDeclarations]: Found specification of procedure fputc [2020-07-08 16:23:35,727 INFO L130 BoogieDeclarations]: Found specification of procedure putc [2020-07-08 16:23:35,727 INFO L130 BoogieDeclarations]: Found specification of procedure putchar [2020-07-08 16:23:35,727 INFO L130 BoogieDeclarations]: Found specification of procedure fputc_unlocked [2020-07-08 16:23:35,728 INFO L130 BoogieDeclarations]: Found specification of procedure putc_unlocked [2020-07-08 16:23:35,728 INFO L130 BoogieDeclarations]: Found specification of procedure putchar_unlocked [2020-07-08 16:23:35,728 INFO L130 BoogieDeclarations]: Found specification of procedure getw [2020-07-08 16:23:35,728 INFO L130 BoogieDeclarations]: Found specification of procedure putw [2020-07-08 16:23:35,728 INFO L130 BoogieDeclarations]: Found specification of procedure fgets [2020-07-08 16:23:35,728 INFO L130 BoogieDeclarations]: Found specification of procedure gets [2020-07-08 16:23:35,728 INFO L130 BoogieDeclarations]: Found specification of procedure __getdelim [2020-07-08 16:23:35,729 INFO L130 BoogieDeclarations]: Found specification of procedure getdelim [2020-07-08 16:23:35,729 INFO L130 BoogieDeclarations]: Found specification of procedure getline [2020-07-08 16:23:35,729 INFO L130 BoogieDeclarations]: Found specification of procedure fputs [2020-07-08 16:23:35,729 INFO L130 BoogieDeclarations]: Found specification of procedure puts [2020-07-08 16:23:35,729 INFO L130 BoogieDeclarations]: Found specification of procedure ungetc [2020-07-08 16:23:35,729 INFO L130 BoogieDeclarations]: Found specification of procedure fread [2020-07-08 16:23:35,730 INFO L130 BoogieDeclarations]: Found specification of procedure fwrite [2020-07-08 16:23:35,730 INFO L130 BoogieDeclarations]: Found specification of procedure fread_unlocked [2020-07-08 16:23:35,730 INFO L130 BoogieDeclarations]: Found specification of procedure fwrite_unlocked [2020-07-08 16:23:35,730 INFO L130 BoogieDeclarations]: Found specification of procedure fseek [2020-07-08 16:23:35,730 INFO L130 BoogieDeclarations]: Found specification of procedure ftell [2020-07-08 16:23:35,730 INFO L130 BoogieDeclarations]: Found specification of procedure rewind [2020-07-08 16:23:35,731 INFO L130 BoogieDeclarations]: Found specification of procedure fseeko [2020-07-08 16:23:35,731 INFO L130 BoogieDeclarations]: Found specification of procedure ftello [2020-07-08 16:23:35,731 INFO L130 BoogieDeclarations]: Found specification of procedure fgetpos [2020-07-08 16:23:35,731 INFO L130 BoogieDeclarations]: Found specification of procedure fsetpos [2020-07-08 16:23:35,731 INFO L130 BoogieDeclarations]: Found specification of procedure clearerr [2020-07-08 16:23:35,731 INFO L130 BoogieDeclarations]: Found specification of procedure feof [2020-07-08 16:23:35,731 INFO L130 BoogieDeclarations]: Found specification of procedure ferror [2020-07-08 16:23:35,732 INFO L130 BoogieDeclarations]: Found specification of procedure clearerr_unlocked [2020-07-08 16:23:35,732 INFO L130 BoogieDeclarations]: Found specification of procedure feof_unlocked [2020-07-08 16:23:35,733 INFO L130 BoogieDeclarations]: Found specification of procedure ferror_unlocked [2020-07-08 16:23:35,733 INFO L130 BoogieDeclarations]: Found specification of procedure perror [2020-07-08 16:23:35,733 INFO L130 BoogieDeclarations]: Found specification of procedure fileno [2020-07-08 16:23:35,733 INFO L130 BoogieDeclarations]: Found specification of procedure fileno_unlocked [2020-07-08 16:23:35,733 INFO L130 BoogieDeclarations]: Found specification of procedure popen [2020-07-08 16:23:35,734 INFO L130 BoogieDeclarations]: Found specification of procedure pclose [2020-07-08 16:23:35,734 INFO L130 BoogieDeclarations]: Found specification of procedure ctermid [2020-07-08 16:23:35,734 INFO L130 BoogieDeclarations]: Found specification of procedure flockfile [2020-07-08 16:23:35,734 INFO L130 BoogieDeclarations]: Found specification of procedure ftrylockfile [2020-07-08 16:23:35,734 INFO L130 BoogieDeclarations]: Found specification of procedure funlockfile [2020-07-08 16:23:35,734 INFO L130 BoogieDeclarations]: Found specification of procedure malloc [2020-07-08 16:23:35,734 INFO L130 BoogieDeclarations]: Found specification of procedure calloc [2020-07-08 16:23:35,734 INFO L130 BoogieDeclarations]: Found specification of procedure realloc [2020-07-08 16:23:35,734 INFO L130 BoogieDeclarations]: Found specification of procedure free [2020-07-08 16:23:35,734 INFO L130 BoogieDeclarations]: Found specification of procedure cfree [2020-07-08 16:23:35,735 INFO L130 BoogieDeclarations]: Found specification of procedure memalign [2020-07-08 16:23:35,735 INFO L130 BoogieDeclarations]: Found specification of procedure valloc [2020-07-08 16:23:35,739 INFO L130 BoogieDeclarations]: Found specification of procedure pvalloc [2020-07-08 16:23:35,740 INFO L130 BoogieDeclarations]: Found specification of procedure __default_morecore [2020-07-08 16:23:35,740 INFO L130 BoogieDeclarations]: Found specification of procedure mallinfo [2020-07-08 16:23:35,740 INFO L130 BoogieDeclarations]: Found specification of procedure mallopt [2020-07-08 16:23:35,740 INFO L130 BoogieDeclarations]: Found specification of procedure malloc_trim [2020-07-08 16:23:35,740 INFO L130 BoogieDeclarations]: Found specification of procedure malloc_usable_size [2020-07-08 16:23:35,740 INFO L130 BoogieDeclarations]: Found specification of procedure malloc_stats [2020-07-08 16:23:35,740 INFO L130 BoogieDeclarations]: Found specification of procedure malloc_info [2020-07-08 16:23:35,741 INFO L130 BoogieDeclarations]: Found specification of procedure malloc_get_state [2020-07-08 16:23:35,741 INFO L130 BoogieDeclarations]: Found specification of procedure malloc_set_state [2020-07-08 16:23:35,741 INFO L130 BoogieDeclarations]: Found specification of procedure __malloc_check_init [2020-07-08 16:23:35,741 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2020-07-08 16:23:35,741 INFO L130 BoogieDeclarations]: Found specification of procedure __getMemory [2020-07-08 16:23:35,741 INFO L130 BoogieDeclarations]: Found specification of procedure my_malloc [2020-07-08 16:23:35,741 INFO L130 BoogieDeclarations]: Found specification of procedure list_add [2020-07-08 16:23:35,742 INFO L130 BoogieDeclarations]: Found specification of procedure list_del [2020-07-08 16:23:35,742 INFO L130 BoogieDeclarations]: Found specification of procedure main [2020-07-08 16:23:35,742 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2020-07-08 16:23:35,742 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2020-07-08 16:23:35,742 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~$Pointer$ [2020-07-08 16:23:35,742 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2020-07-08 16:23:35,742 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2020-07-08 16:23:35,743 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2020-07-08 16:23:35,743 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2020-07-08 16:23:36,338 INFO L290 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2020-07-08 16:23:36,339 INFO L295 CfgBuilder]: Removed 0 assume(true) statements. [2020-07-08 16:23:36,343 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.07 04:23:36 BoogieIcfgContainer [2020-07-08 16:23:36,344 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2020-07-08 16:23:36,345 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2020-07-08 16:23:36,345 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2020-07-08 16:23:36,349 INFO L275 PluginConnector]: TraceAbstraction initialized [2020-07-08 16:23:36,349 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.07 04:23:34" (1/3) ... [2020-07-08 16:23:36,350 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@10d1d498 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.07 04:23:36, skipping insertion in model container [2020-07-08 16:23:36,351 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.07 04:23:35" (2/3) ... [2020-07-08 16:23:36,351 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@10d1d498 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.07 04:23:36, skipping insertion in model container [2020-07-08 16:23:36,351 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.07 04:23:36" (3/3) ... [2020-07-08 16:23:36,353 INFO L109 eAbstractionObserver]: Analyzing ICFG rule60_list2.c_1.i [2020-07-08 16:23:36,365 INFO L157 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:AcceleratedInterpolation Determinization: PREDICATE_ABSTRACTION [2020-07-08 16:23:36,374 INFO L169 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2020-07-08 16:23:36,389 INFO L251 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2020-07-08 16:23:36,410 INFO L375 AbstractCegarLoop]: Interprodecural is true [2020-07-08 16:23:36,411 INFO L376 AbstractCegarLoop]: Hoare is true [2020-07-08 16:23:36,411 INFO L377 AbstractCegarLoop]: Compute interpolants for AcceleratedInterpolation [2020-07-08 16:23:36,411 INFO L378 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2020-07-08 16:23:36,411 INFO L379 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2020-07-08 16:23:36,412 INFO L380 AbstractCegarLoop]: Difference is false [2020-07-08 16:23:36,412 INFO L381 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2020-07-08 16:23:36,412 INFO L385 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2020-07-08 16:23:36,429 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states. [2020-07-08 16:23:36,439 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2020-07-08 16:23:36,440 INFO L414 BasicCegarLoop]: Found error trace [2020-07-08 16:23:36,441 INFO L422 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-08 16:23:36,442 INFO L427 AbstractCegarLoop]: === Iteration 1 === [__blast_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-08 16:23:36,448 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-08 16:23:36,449 INFO L82 PathProgramCache]: Analyzing trace with hash 1490968618, now seen corresponding path program 1 times [2020-07-08 16:23:36,457 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-08 16:23:36,457 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [9614075] [2020-07-08 16:23:36,458 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-08 16:23:36,592 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 16:23:36,817 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 16:23:36,848 INFO L280 TraceCheckUtils]: 0: Hoare triple {90#(and (= |#valid| |old(#valid)|) (= ~elem~0.base |old(~elem~0.base)|) (= |#NULL.base| |old(#NULL.base)|) (= |~#head~0.base| |old(~#head~0.base)|) (= ~guard_malloc_counter~0.offset |old(~guard_malloc_counter~0.offset)|) (= |#NULL.offset| |old(#NULL.offset)|) (= ~elem~0.offset |old(~elem~0.offset)|) (= |old(#length)| |#length|) (= |~#head~0.offset| |old(~#head~0.offset)|) (= ~guard_malloc_counter~0.base |old(~guard_malloc_counter~0.base)|))} #NULL.base, #NULL.offset := 0, 0; {74#true} is VALID [2020-07-08 16:23:36,849 INFO L280 TraceCheckUtils]: 1: Hoare triple {74#true} #valid := #valid[0 := 0]; {74#true} is VALID [2020-07-08 16:23:36,850 INFO L280 TraceCheckUtils]: 2: Hoare triple {74#true} assume 0 < #StackHeapBarrier; {74#true} is VALID [2020-07-08 16:23:36,850 INFO L280 TraceCheckUtils]: 3: Hoare triple {74#true} ~guard_malloc_counter~0.base, ~guard_malloc_counter~0.offset := 0, 0; {74#true} is VALID [2020-07-08 16:23:36,851 INFO L280 TraceCheckUtils]: 4: Hoare triple {74#true} ~elem~0.base, ~elem~0.offset := 0, 0; {74#true} is VALID [2020-07-08 16:23:36,851 INFO L280 TraceCheckUtils]: 5: Hoare triple {74#true} SUMMARY for call ~#head~0.base, ~#head~0.offset := #Ultimate.allocOnStack(8); srcloc: L900 {74#true} is VALID [2020-07-08 16:23:36,852 INFO L280 TraceCheckUtils]: 6: Hoare triple {74#true} SUMMARY for call write~init~$Pointer$(0, 0, ~#head~0.base, ~#head~0.offset, 4); srcloc: L900-1 {74#true} is VALID [2020-07-08 16:23:36,852 INFO L280 TraceCheckUtils]: 7: Hoare triple {74#true} SUMMARY for call write~init~$Pointer$(0, 0, ~#head~0.base, 4 + ~#head~0.offset, 4); srcloc: L900-2 {74#true} is VALID [2020-07-08 16:23:36,852 INFO L280 TraceCheckUtils]: 8: Hoare triple {74#true} assume true; {74#true} is VALID [2020-07-08 16:23:36,853 INFO L275 TraceCheckUtils]: 9: Hoare quadruple {74#true} {74#true} #112#return; {74#true} is VALID [2020-07-08 16:23:36,858 INFO L263 TraceCheckUtils]: 0: Hoare triple {74#true} call ULTIMATE.init(); {90#(and (= |#valid| |old(#valid)|) (= ~elem~0.base |old(~elem~0.base)|) (= |#NULL.base| |old(#NULL.base)|) (= |~#head~0.base| |old(~#head~0.base)|) (= ~guard_malloc_counter~0.offset |old(~guard_malloc_counter~0.offset)|) (= |#NULL.offset| |old(#NULL.offset)|) (= ~elem~0.offset |old(~elem~0.offset)|) (= |old(#length)| |#length|) (= |~#head~0.offset| |old(~#head~0.offset)|) (= ~guard_malloc_counter~0.base |old(~guard_malloc_counter~0.base)|))} is VALID [2020-07-08 16:23:36,858 INFO L280 TraceCheckUtils]: 1: Hoare triple {90#(and (= |#valid| |old(#valid)|) (= ~elem~0.base |old(~elem~0.base)|) (= |#NULL.base| |old(#NULL.base)|) (= |~#head~0.base| |old(~#head~0.base)|) (= ~guard_malloc_counter~0.offset |old(~guard_malloc_counter~0.offset)|) (= |#NULL.offset| |old(#NULL.offset)|) (= ~elem~0.offset |old(~elem~0.offset)|) (= |old(#length)| |#length|) (= |~#head~0.offset| |old(~#head~0.offset)|) (= ~guard_malloc_counter~0.base |old(~guard_malloc_counter~0.base)|))} #NULL.base, #NULL.offset := 0, 0; {74#true} is VALID [2020-07-08 16:23:36,859 INFO L280 TraceCheckUtils]: 2: Hoare triple {74#true} #valid := #valid[0 := 0]; {74#true} is VALID [2020-07-08 16:23:36,859 INFO L280 TraceCheckUtils]: 3: Hoare triple {74#true} assume 0 < #StackHeapBarrier; {74#true} is VALID [2020-07-08 16:23:36,859 INFO L280 TraceCheckUtils]: 4: Hoare triple {74#true} ~guard_malloc_counter~0.base, ~guard_malloc_counter~0.offset := 0, 0; {74#true} is VALID [2020-07-08 16:23:36,860 INFO L280 TraceCheckUtils]: 5: Hoare triple {74#true} ~elem~0.base, ~elem~0.offset := 0, 0; {74#true} is VALID [2020-07-08 16:23:36,860 INFO L280 TraceCheckUtils]: 6: Hoare triple {74#true} SUMMARY for call ~#head~0.base, ~#head~0.offset := #Ultimate.allocOnStack(8); srcloc: L900 {74#true} is VALID [2020-07-08 16:23:36,860 INFO L280 TraceCheckUtils]: 7: Hoare triple {74#true} SUMMARY for call write~init~$Pointer$(0, 0, ~#head~0.base, ~#head~0.offset, 4); srcloc: L900-1 {74#true} is VALID [2020-07-08 16:23:36,861 INFO L280 TraceCheckUtils]: 8: Hoare triple {74#true} SUMMARY for call write~init~$Pointer$(0, 0, ~#head~0.base, 4 + ~#head~0.offset, 4); srcloc: L900-2 {74#true} is VALID [2020-07-08 16:23:36,861 INFO L280 TraceCheckUtils]: 9: Hoare triple {74#true} assume true; {74#true} is VALID [2020-07-08 16:23:36,862 INFO L275 TraceCheckUtils]: 10: Hoare quadruple {74#true} {74#true} #112#return; {74#true} is VALID [2020-07-08 16:23:36,863 INFO L263 TraceCheckUtils]: 11: Hoare triple {74#true} call #t~ret34 := main(); {74#true} is VALID [2020-07-08 16:23:36,866 INFO L280 TraceCheckUtils]: 12: Hoare triple {74#true} havoc ~dev1~0.base, ~dev1~0.offset; {74#true} is VALID [2020-07-08 16:23:36,866 INFO L280 TraceCheckUtils]: 13: Hoare triple {74#true} havoc ~dev2~0.base, ~dev2~0.offset; {74#true} is VALID [2020-07-08 16:23:36,867 INFO L263 TraceCheckUtils]: 14: Hoare triple {74#true} call #t~ret32.base, #t~ret32.offset := my_malloc(8); {86#(= 8 |my_malloc_#in~size|)} is VALID [2020-07-08 16:23:36,872 INFO L280 TraceCheckUtils]: 15: Hoare triple {86#(= 8 |my_malloc_#in~size|)} ~size := #in~size; {87#(= 8 my_malloc_~size)} is VALID [2020-07-08 16:23:36,873 INFO L263 TraceCheckUtils]: 16: Hoare triple {87#(= 8 my_malloc_~size)} call #t~ret30.base, #t~ret30.offset := __getMemory(~size); {88#(= 8 |__getMemory_#in~size|)} is VALID [2020-07-08 16:23:36,875 INFO L280 TraceCheckUtils]: 17: Hoare triple {88#(= 8 |__getMemory_#in~size|)} ~size := #in~size; {89#(= 8 __getMemory_~size)} is VALID [2020-07-08 16:23:36,876 INFO L280 TraceCheckUtils]: 18: Hoare triple {89#(= 8 __getMemory_~size)} assume !(~size > 0); {75#false} is VALID [2020-07-08 16:23:36,877 INFO L263 TraceCheckUtils]: 19: Hoare triple {75#false} call __blast_assert(); {75#false} is VALID [2020-07-08 16:23:36,877 INFO L280 TraceCheckUtils]: 20: Hoare triple {75#false} assume !false; {75#false} is VALID [2020-07-08 16:23:36,880 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-08 16:23:36,881 INFO L185 leratedInterpolation]: Finished Analysing Program using PRECISE loop Acceleration [2020-07-08 16:23:36,883 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [9614075] [2020-07-08 16:23:36,885 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-08 16:23:36,886 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2020-07-08 16:23:36,886 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1488163294] [2020-07-08 16:23:36,893 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 21 [2020-07-08 16:23:36,896 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-08 16:23:36,900 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states. [2020-07-08 16:23:36,952 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 21 edges. 21 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-08 16:23:36,952 INFO L459 AbstractCegarLoop]: Interpolant automaton has 7 states [2020-07-08 16:23:36,952 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-08 16:23:36,960 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2020-07-08 16:23:36,961 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2020-07-08 16:23:36,963 INFO L87 Difference]: Start difference. First operand 71 states. Second operand 7 states. [2020-07-08 16:23:38,659 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-08 16:23:38,659 INFO L93 Difference]: Finished difference Result 128 states and 157 transitions. [2020-07-08 16:23:38,659 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2020-07-08 16:23:38,660 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 21 [2020-07-08 16:23:38,660 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-08 16:23:38,661 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2020-07-08 16:23:38,680 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 157 transitions. [2020-07-08 16:23:38,680 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2020-07-08 16:23:38,700 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 157 transitions. [2020-07-08 16:23:38,700 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 157 transitions. [2020-07-08 16:23:38,996 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 157 edges. 157 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-08 16:23:39,017 INFO L225 Difference]: With dead ends: 128 [2020-07-08 16:23:39,017 INFO L226 Difference]: Without dead ends: 67 [2020-07-08 16:23:39,022 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 14 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=41, Invalid=115, Unknown=0, NotChecked=0, Total=156 [2020-07-08 16:23:39,038 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 67 states. [2020-07-08 16:23:39,251 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 67 to 63. [2020-07-08 16:23:39,252 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-08 16:23:39,253 INFO L82 GeneralOperation]: Start isEquivalent. First operand 67 states. Second operand 63 states. [2020-07-08 16:23:39,253 INFO L74 IsIncluded]: Start isIncluded. First operand 67 states. Second operand 63 states. [2020-07-08 16:23:39,254 INFO L87 Difference]: Start difference. First operand 67 states. Second operand 63 states. [2020-07-08 16:23:39,263 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-08 16:23:39,264 INFO L93 Difference]: Finished difference Result 67 states and 75 transitions. [2020-07-08 16:23:39,264 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 75 transitions. [2020-07-08 16:23:39,266 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-08 16:23:39,266 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-08 16:23:39,266 INFO L74 IsIncluded]: Start isIncluded. First operand 63 states. Second operand 67 states. [2020-07-08 16:23:39,266 INFO L87 Difference]: Start difference. First operand 63 states. Second operand 67 states. [2020-07-08 16:23:39,275 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-08 16:23:39,275 INFO L93 Difference]: Finished difference Result 67 states and 75 transitions. [2020-07-08 16:23:39,275 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 75 transitions. [2020-07-08 16:23:39,277 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-08 16:23:39,277 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-08 16:23:39,277 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-08 16:23:39,278 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-08 16:23:39,278 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 63 states. [2020-07-08 16:23:39,288 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 63 states to 63 states and 69 transitions. [2020-07-08 16:23:39,293 INFO L78 Accepts]: Start accepts. Automaton has 63 states and 69 transitions. Word has length 21 [2020-07-08 16:23:39,295 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-08 16:23:39,295 INFO L479 AbstractCegarLoop]: Abstraction has 63 states and 69 transitions. [2020-07-08 16:23:39,295 INFO L480 AbstractCegarLoop]: Interpolant automaton has 7 states. [2020-07-08 16:23:39,295 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 63 states and 69 transitions. [2020-07-08 16:23:39,405 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-08 16:23:39,405 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 69 transitions. [2020-07-08 16:23:39,408 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 62 [2020-07-08 16:23:39,408 INFO L414 BasicCegarLoop]: Found error trace [2020-07-08 16:23:39,411 INFO L422 BasicCegarLoop]: trace histogram [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] [2020-07-08 16:23:39,412 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2020-07-08 16:23:39,412 INFO L427 AbstractCegarLoop]: === Iteration 2 === [__blast_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-08 16:23:39,413 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-08 16:23:39,413 INFO L82 PathProgramCache]: Analyzing trace with hash -114203518, now seen corresponding path program 1 times [2020-07-08 16:23:39,413 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-08 16:23:39,414 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [998968251] [2020-07-08 16:23:39,414 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY Garbage collection #1: 37 nodes / 0 free / 0.001s / 0.001s total Resizing node table from 37 to 73 Garbage collection #2: 73 nodes / 0 free / 0.001s / 0.002s total Resizing node table from 73 to 139 Garbage collection #3: 139 nodes / 0 free / 0.0s / 0.002s total Resizing node table from 139 to 277 Garbage collection #4: 277 nodes / 0 free / 0.0s / 0.002s total Resizing node table from 277 to 547 Garbage collection #5: 547 nodes / 0 free / 0.0s / 0.002s total Resizing node table from 547 to 1093 [2020-07-08 16:23:41,857 INFO L501 QuantifierPusher]: Distributing 2 conjuncts over 2 disjuncts [2020-07-08 16:23:41,954 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 16:23:42,136 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 16:23:42,148 INFO L280 TraceCheckUtils]: 0: Hoare triple {653#(and (= |#valid| |old(#valid)|) (= ~elem~0.base |old(~elem~0.base)|) (= |#NULL.base| |old(#NULL.base)|) (= |~#head~0.base| |old(~#head~0.base)|) (= ~guard_malloc_counter~0.offset |old(~guard_malloc_counter~0.offset)|) (= |#NULL.offset| |old(#NULL.offset)|) (= ~elem~0.offset |old(~elem~0.offset)|) (= |old(#length)| |#length|) (= |~#head~0.offset| |old(~#head~0.offset)|) (= ~guard_malloc_counter~0.base |old(~guard_malloc_counter~0.base)|))} #NULL.base, #NULL.offset := 0, 0; {621#true} is VALID [2020-07-08 16:23:42,148 INFO L280 TraceCheckUtils]: 1: Hoare triple {621#true} #valid := #valid[0 := 0]; {621#true} is VALID [2020-07-08 16:23:42,149 INFO L280 TraceCheckUtils]: 2: Hoare triple {621#true} assume 0 < #StackHeapBarrier; {621#true} is VALID [2020-07-08 16:23:42,149 INFO L280 TraceCheckUtils]: 3: Hoare triple {621#true} ~guard_malloc_counter~0.base, ~guard_malloc_counter~0.offset := 0, 0; {621#true} is VALID [2020-07-08 16:23:42,149 INFO L280 TraceCheckUtils]: 4: Hoare triple {621#true} ~elem~0.base, ~elem~0.offset := 0, 0; {621#true} is VALID [2020-07-08 16:23:42,150 INFO L280 TraceCheckUtils]: 5: Hoare triple {621#true} SUMMARY for call ~#head~0.base, ~#head~0.offset := #Ultimate.allocOnStack(8); srcloc: L900 {621#true} is VALID [2020-07-08 16:23:42,150 INFO L280 TraceCheckUtils]: 6: Hoare triple {621#true} SUMMARY for call write~init~$Pointer$(0, 0, ~#head~0.base, ~#head~0.offset, 4); srcloc: L900-1 {621#true} is VALID [2020-07-08 16:23:42,150 INFO L280 TraceCheckUtils]: 7: Hoare triple {621#true} SUMMARY for call write~init~$Pointer$(0, 0, ~#head~0.base, 4 + ~#head~0.offset, 4); srcloc: L900-2 {621#true} is VALID [2020-07-08 16:23:42,151 INFO L280 TraceCheckUtils]: 8: Hoare triple {621#true} assume true; {621#true} is VALID [2020-07-08 16:23:42,151 INFO L275 TraceCheckUtils]: 9: Hoare quadruple {621#true} {621#true} #112#return; {621#true} is VALID [2020-07-08 16:23:42,188 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 16:23:42,271 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-08 16:23:42,330 INFO L280 TraceCheckUtils]: 0: Hoare triple {654#(and (= ~guard_malloc_counter~0.offset |old(~guard_malloc_counter~0.offset)|) (= ~guard_malloc_counter~0.base |old(~guard_malloc_counter~0.base)|))} ~size := #in~size; {621#true} is VALID [2020-07-08 16:23:42,330 INFO L280 TraceCheckUtils]: 1: Hoare triple {621#true} assume ~size > 0; {621#true} is VALID [2020-07-08 16:23:42,331 INFO L280 TraceCheckUtils]: 2: Hoare triple {621#true} #t~post28.base, #t~post28.offset := ~guard_malloc_counter~0.base, ~guard_malloc_counter~0.offset; {621#true} is VALID [2020-07-08 16:23:42,331 INFO L280 TraceCheckUtils]: 3: Hoare triple {621#true} ~guard_malloc_counter~0.base, ~guard_malloc_counter~0.offset := #t~post28.base, 1 + #t~post28.offset; {621#true} is VALID [2020-07-08 16:23:42,331 INFO L280 TraceCheckUtils]: 4: Hoare triple {621#true} havoc #t~post28.base, #t~post28.offset; {621#true} is VALID [2020-07-08 16:23:42,332 INFO L280 TraceCheckUtils]: 5: Hoare triple {621#true} assume -2147483648 <= #t~nondet29 && #t~nondet29 <= 2147483647; {621#true} is VALID [2020-07-08 16:23:42,332 INFO L280 TraceCheckUtils]: 6: Hoare triple {621#true} assume 0 == #t~nondet29; {621#true} is VALID [2020-07-08 16:23:42,332 INFO L280 TraceCheckUtils]: 7: Hoare triple {621#true} havoc #t~nondet29; {621#true} is VALID [2020-07-08 16:23:42,334 INFO L280 TraceCheckUtils]: 8: Hoare triple {621#true} #res.base, #res.offset := 0, 0; {668#(and (<= |__getMemory_#res.base| 0) (<= |__getMemory_#res.offset| 0) (<= 0 |__getMemory_#res.offset|) (<= 0 |__getMemory_#res.base|))} is VALID [2020-07-08 16:23:42,335 INFO L280 TraceCheckUtils]: 9: Hoare triple {668#(and (<= |__getMemory_#res.base| 0) (<= |__getMemory_#res.offset| 0) (<= 0 |__getMemory_#res.offset|) (<= 0 |__getMemory_#res.base|))} assume true; {668#(and (<= |__getMemory_#res.base| 0) (<= |__getMemory_#res.offset| 0) (<= 0 |__getMemory_#res.offset|) (<= 0 |__getMemory_#res.base|))} is VALID [2020-07-08 16:23:42,336 INFO L275 TraceCheckUtils]: 10: Hoare quadruple {668#(and (<= |__getMemory_#res.base| 0) (<= |__getMemory_#res.offset| 0) (<= 0 |__getMemory_#res.offset|) (<= 0 |__getMemory_#res.base|))} {621#true} #92#return; {666#(and (<= |my_malloc_#t~ret30.offset| 0) (<= 0 |my_malloc_#t~ret30.offset|) (<= 0 |my_malloc_#t~ret30.base|) (<= |my_malloc_#t~ret30.base| 0))} is VALID [2020-07-08 16:23:42,338 INFO L280 TraceCheckUtils]: 0: Hoare triple {654#(and (= ~guard_malloc_counter~0.offset |old(~guard_malloc_counter~0.offset)|) (= ~guard_malloc_counter~0.base |old(~guard_malloc_counter~0.base)|))} [116] my_mallocENTRY-->L879_primed: Formula: (let ((.cse40 (* 2 |v_oct___getMemory_#res.offset_out_1|)) (.cse20 (* 2 |v_oct___getMemory_#t~nondet29_in_1|)) (.cse39 (* 2 |v_oct_my_malloc_#in~size_out_1|)) (.cse43 (* 2 |v_oct___getMemory_#res.base_out_1|)) (.cse37 (+ v_oct_~guard_malloc_counter~0.offset_in_1 3)) (.cse41 (* 2 |v_oct_my_malloc_#res.base_out_1|)) (.cse44 (* 2 |v_oct_my_malloc_#res.offset_out_1|)) (.cse42 (* 2 v_oct_my_malloc_~size_out_1))) (let ((.cse32 (<= .cse42 16)) (.cse30 (<= 0 .cse44)) (.cse22 (<= .cse44 0)) (.cse2 (<= v_oct_~guard_malloc_counter~0.base_out_1 v_oct_~guard_malloc_counter~0.base_in_1)) (.cse4 (<= |v_oct___getMemory_#res.offset_out_1| |v_oct_my_malloc_#res.offset_out_1|)) (.cse24 (<= .cse41 0)) (.cse38 (<= .cse37 v_oct_~guard_malloc_counter~0.offset_out_1)) (.cse36 (<= 2 (* 2 |v_oct___getMemory_#in~size_out_1|))) (.cse13 (<= 0 .cse43)) (.cse31 (<= |v_oct___getMemory_#in~size_out_1| v_oct_my_malloc_~size_out_1)) (.cse14 (<= 16 .cse39)) (.cse28 (<= v_oct_main_~dev1~0.offset_out_1 |v_oct_my_malloc_#res.offset_out_1|)) (.cse26 (<= |v_oct___getMemory_#in~size_out_1| v_oct___getMemory_~size_out_1)) (.cse27 (<= v_oct_my_malloc_~size_out_1 |v_oct___getMemory_#in~size_out_1|)) (.cse18 (<= 2 (* 2 v_oct___getMemory_~size_out_1))) (.cse23 (<= v_oct___getMemory_~size_out_1 |v_oct___getMemory_#in~size_out_1|)) (.cse0 (<= |v_oct_my_malloc_#res.base_out_1| |v_oct___getMemory_#res.base_out_1|)) (.cse1 (<= .cse43 0)) (.cse3 (<= |v_oct_my_malloc_#res.offset_out_1| v_oct_main_~dev1~0.offset_out_1)) (.cse25 (<= 16 .cse42)) (.cse9 (<= v_oct_~guard_malloc_counter~0.base_in_1 v_oct_~guard_malloc_counter~0.base_out_1)) (.cse6 (<= |v_oct_my_malloc_#res.base_out_1| v_oct_main_~dev1~0.base_out_1)) (.cse7 (<= |v_oct___getMemory_#res.base_out_1| |v_oct_my_malloc_#res.base_out_1|)) (.cse11 (<= v_oct_main_~dev1~0.base_out_1 |v_oct_my_malloc_#res.base_out_1|)) (.cse21 (<= .cse20 0)) (.cse35 (<= 0 .cse41)) (.cse29 (<= 0 .cse40)) (.cse16 (<= 0 .cse20)) (.cse15 (<= .cse40 0)) (.cse33 (<= .cse39 16)) (.cse34 (<= |v_oct_my_malloc_#res.offset_out_1| |v_oct___getMemory_#res.offset_out_1|))) (or (let ((.cse5 (+ v_oct_~guard_malloc_counter~0.offset_in_1 1))) (and (<= |v_oct_my_malloc_#in~size_in_1| v_oct_my_malloc_~size_out_1) .cse0 .cse1 .cse2 .cse3 .cse4 (<= v_oct_~guard_malloc_counter~0.offset_out_1 .cse5) .cse6 .cse7 (let ((.cse8 (<= .cse20 4294967294)) (.cse10 (<= 0 (+ .cse20 4294967296))) (.cse12 (<= .cse5 v_oct_~guard_malloc_counter~0.offset_out_1)) (.cse17 (<= 0 (+ .cse20 4294967296)))) (or (and .cse8 .cse9 .cse10 .cse11 .cse12 .cse13 .cse14 .cse15 .cse16 (not .cse17) .cse18) (and (let ((.cse19 (<= .cse20 4294967294))) (or (and .cse8 (not .cse19) .cse9 .cse10 .cse11 .cse12 .cse13 .cse14 .cse15 .cse16 .cse18) (and .cse9 .cse11 .cse12 .cse13 .cse19 .cse14 .cse15 .cse16 .cse18))) .cse17))) (or (not .cse9) (not .cse0) (not .cse21) (not .cse6) (not .cse22) (not .cse23) (not .cse3) (not .cse24) (not .cse13) (not .cse18) (not .cse7) (not .cse25) (not .cse14) (not .cse26) (not .cse2) (not .cse27) (not .cse28) (not .cse29) (not .cse4) (not .cse30) (not .cse31) (not .cse15) (not .cse32) (not .cse33) (not .cse34) (not .cse1) (not .cse35) (not .cse36) (not .cse11) (not .cse16) (< v_oct_~guard_malloc_counter~0.offset_out_1 .cse37)) .cse21 .cse31 .cse29 .cse33 (<= v_oct_my_malloc_~size_out_1 |v_oct_my_malloc_#in~size_in_1|) .cse28 .cse26 .cse34 .cse27 .cse23)) (and .cse32 .cse30 .cse22 .cse2 .cse4 .cse24 .cse38 .cse36 .cse13 .cse31 .cse14 .cse26 .cse28 .cse27 .cse18 .cse23 .cse0 .cse1 .cse3 .cse25 .cse9 .cse6 .cse7 .cse11 .cse21 .cse35 .cse29 .cse16 .cse15 .cse33 .cse34) (and .cse32 .cse30 .cse22 .cse2 .cse4 .cse24 .cse38 .cse36 .cse13 .cse31 .cse14 .cse28 .cse26 .cse27 .cse18 .cse23 .cse0 .cse1 .cse3 .cse25 .cse9 .cse6 .cse7 .cse11 .cse21 .cse35 .cse29 .cse16 .cse15 .cse33 .cse34)))) InVars {~guard_malloc_counter~0.offset=v_oct_~guard_malloc_counter~0.offset_in_1, ~guard_malloc_counter~0.base=v_oct_~guard_malloc_counter~0.base_in_1, __getMemory_#t~nondet29=|v_oct___getMemory_#t~nondet29_in_1|, my_malloc_#in~size=|v_oct_my_malloc_#in~size_in_1|} OutVars{__getMemory_#res.base=|v_oct___getMemory_#res.base_out_1|, my_malloc_#in~size=|v_oct_my_malloc_#in~size_out_1|, __getMemory_#t~post28.offset=|v_oct___getMemory_#t~post28.offset_out_1|, ~guard_malloc_counter~0.base=v_oct_~guard_malloc_counter~0.base_out_1, __getMemory_~size=v_oct___getMemory_~size_out_1, __getMemory_#t~nondet29=|v_oct___getMemory_#t~nondet29_out_1|, main_#t~ret32.offset=|v_oct_main_#t~ret32.offset_out_1|, __getMemory_#t~post28.base=|v_oct___getMemory_#t~post28.base_out_1|, my_malloc_#res.offset=|v_oct_my_malloc_#res.offset_out_1|, __getMemory_#res.offset=|v_oct___getMemory_#res.offset_out_1|, ~guard_malloc_counter~0.offset=v_oct_~guard_malloc_counter~0.offset_out_1, main_~dev1~0.offset=v_oct_main_~dev1~0.offset_out_1, my_malloc_#t~ret30.base=|v_oct_my_malloc_#t~ret30.base_out_1|, my_malloc_#res.base=|v_oct_my_malloc_#res.base_out_1|, my_malloc_#t~ret30.offset=|v_oct_my_malloc_#t~ret30.offset_out_1|, main_~dev1~0.base=v_oct_main_~dev1~0.base_out_1, __getMemory_#in~size=|v_oct___getMemory_#in~size_out_1|, main_#t~ret32.base=|v_oct_main_#t~ret32.base_out_1|, my_malloc_~size=v_oct_my_malloc_~size_out_1} AuxVars[] AssignedVars[__getMemory_#res.base, my_malloc_#in~size, __getMemory_#t~post28.offset, ~guard_malloc_counter~0.base, __getMemory_~size, __getMemory_#t~nondet29, main_#t~ret32.offset, __getMemory_#t~post28.base, my_malloc_#res.offset, __getMemory_#res.offset, ~guard_malloc_counter~0.offset, main_~dev1~0.offset, my_malloc_#t~ret30.base, my_malloc_#res.base, my_malloc_#t~ret30.offset, main_~dev1~0.base, __getMemory_#in~size, main_#t~ret32.base, my_malloc_~size] {621#true} is VALID [2020-07-08 16:23:42,338 INFO L280 TraceCheckUtils]: 1: Hoare triple {621#true} [115] L879_primed-->L879: Formula: (= v_my_malloc_~size_1 |v_my_malloc_#in~size_1|) InVars {my_malloc_#in~size=|v_my_malloc_#in~size_1|} OutVars{my_malloc_#in~size=|v_my_malloc_#in~size_1|, my_malloc_~size=v_my_malloc_~size_1} AuxVars[] AssignedVars[my_malloc_~size] {621#true} is VALID [2020-07-08 16:23:42,340 INFO L263 TraceCheckUtils]: 2: Hoare triple {621#true} call #t~ret30.base, #t~ret30.offset := __getMemory(~size); {654#(and (= ~guard_malloc_counter~0.offset |old(~guard_malloc_counter~0.offset)|) (= ~guard_malloc_counter~0.base |old(~guard_malloc_counter~0.base)|))} is VALID [2020-07-08 16:23:42,340 INFO L280 TraceCheckUtils]: 3: Hoare triple {654#(and (= ~guard_malloc_counter~0.offset |old(~guard_malloc_counter~0.offset)|) (= ~guard_malloc_counter~0.base |old(~guard_malloc_counter~0.base)|))} ~size := #in~size; {621#true} is VALID [2020-07-08 16:23:42,340 INFO L280 TraceCheckUtils]: 4: Hoare triple {621#true} assume ~size > 0; {621#true} is VALID [2020-07-08 16:23:42,341 INFO L280 TraceCheckUtils]: 5: Hoare triple {621#true} #t~post28.base, #t~post28.offset := ~guard_malloc_counter~0.base, ~guard_malloc_counter~0.offset; {621#true} is VALID [2020-07-08 16:23:42,341 INFO L280 TraceCheckUtils]: 6: Hoare triple {621#true} ~guard_malloc_counter~0.base, ~guard_malloc_counter~0.offset := #t~post28.base, 1 + #t~post28.offset; {621#true} is VALID [2020-07-08 16:23:42,341 INFO L280 TraceCheckUtils]: 7: Hoare triple {621#true} havoc #t~post28.base, #t~post28.offset; {621#true} is VALID [2020-07-08 16:23:42,342 INFO L280 TraceCheckUtils]: 8: Hoare triple {621#true} assume -2147483648 <= #t~nondet29 && #t~nondet29 <= 2147483647; {621#true} is VALID [2020-07-08 16:23:42,342 INFO L280 TraceCheckUtils]: 9: Hoare triple {621#true} assume 0 == #t~nondet29; {621#true} is VALID [2020-07-08 16:23:42,342 INFO L280 TraceCheckUtils]: 10: Hoare triple {621#true} havoc #t~nondet29; {621#true} is VALID [2020-07-08 16:23:42,343 INFO L280 TraceCheckUtils]: 11: Hoare triple {621#true} #res.base, #res.offset := 0, 0; {668#(and (<= |__getMemory_#res.base| 0) (<= |__getMemory_#res.offset| 0) (<= 0 |__getMemory_#res.offset|) (<= 0 |__getMemory_#res.base|))} is VALID [2020-07-08 16:23:42,344 INFO L280 TraceCheckUtils]: 12: Hoare triple {668#(and (<= |__getMemory_#res.base| 0) (<= |__getMemory_#res.offset| 0) (<= 0 |__getMemory_#res.offset|) (<= 0 |__getMemory_#res.base|))} assume true; {668#(and (<= |__getMemory_#res.base| 0) (<= |__getMemory_#res.offset| 0) (<= 0 |__getMemory_#res.offset|) (<= 0 |__getMemory_#res.base|))} is VALID [2020-07-08 16:23:42,346 INFO L275 TraceCheckUtils]: 13: Hoare quadruple {668#(and (<= |__getMemory_#res.base| 0) (<= |__getMemory_#res.offset| 0) (<= 0 |__getMemory_#res.offset|) (<= 0 |__getMemory_#res.base|))} {621#true} #92#return; {666#(and (<= |my_malloc_#t~ret30.offset| 0) (<= 0 |my_malloc_#t~ret30.offset|) (<= 0 |my_malloc_#t~ret30.base|) (<= |my_malloc_#t~ret30.base| 0))} is VALID [2020-07-08 16:23:42,347 INFO L280 TraceCheckUtils]: 14: Hoare triple {666#(and (<= |my_malloc_#t~ret30.offset| 0) (<= 0 |my_malloc_#t~ret30.offset|) (<= 0 |my_malloc_#t~ret30.base|) (<= |my_malloc_#t~ret30.base| 0))} #res.base, #res.offset := #t~ret30.base, #t~ret30.offset; {667#(and (<= |my_malloc_#res.base| 0) (<= |my_malloc_#res.offset| 0) (<= 0 |my_malloc_#res.base|) (<= 0 |my_malloc_#res.offset|))} is VALID [2020-07-08 16:23:42,348 INFO L280 TraceCheckUtils]: 15: Hoare triple {667#(and (<= |my_malloc_#res.base| 0) (<= |my_malloc_#res.offset| 0) (<= 0 |my_malloc_#res.base|) (<= 0 |my_malloc_#res.offset|))} havoc #t~ret30.base, #t~ret30.offset; {667#(and (<= |my_malloc_#res.base| 0) (<= |my_malloc_#res.offset| 0) (<= 0 |my_malloc_#res.base|) (<= 0 |my_malloc_#res.offset|))} is VALID [2020-07-08 16:23:42,349 INFO L280 TraceCheckUtils]: 16: Hoare triple {667#(and (<= |my_malloc_#res.base| 0) (<= |my_malloc_#res.offset| 0) (<= 0 |my_malloc_#res.base|) (<= 0 |my_malloc_#res.offset|))} assume true; {667#(and (<= |my_malloc_#res.base| 0) (<= |my_malloc_#res.offset| 0) (<= 0 |my_malloc_#res.base|) (<= 0 |my_malloc_#res.offset|))} is VALID [2020-07-08 16:23:42,351 INFO L275 TraceCheckUtils]: 17: Hoare quadruple {667#(and (<= |my_malloc_#res.base| 0) (<= |my_malloc_#res.offset| 0) (<= 0 |my_malloc_#res.base|) (<= 0 |my_malloc_#res.offset|))} {621#true} #96#return; {651#(and (= 0 |main_#t~ret33.offset|) (= 0 |main_#t~ret33.base|))} is VALID [2020-07-08 16:23:42,353 INFO L263 TraceCheckUtils]: 0: Hoare triple {621#true} call ULTIMATE.init(); {653#(and (= |#valid| |old(#valid)|) (= ~elem~0.base |old(~elem~0.base)|) (= |#NULL.base| |old(#NULL.base)|) (= |~#head~0.base| |old(~#head~0.base)|) (= ~guard_malloc_counter~0.offset |old(~guard_malloc_counter~0.offset)|) (= |#NULL.offset| |old(#NULL.offset)|) (= ~elem~0.offset |old(~elem~0.offset)|) (= |old(#length)| |#length|) (= |~#head~0.offset| |old(~#head~0.offset)|) (= ~guard_malloc_counter~0.base |old(~guard_malloc_counter~0.base)|))} is VALID [2020-07-08 16:23:42,354 INFO L280 TraceCheckUtils]: 1: Hoare triple {653#(and (= |#valid| |old(#valid)|) (= ~elem~0.base |old(~elem~0.base)|) (= |#NULL.base| |old(#NULL.base)|) (= |~#head~0.base| |old(~#head~0.base)|) (= ~guard_malloc_counter~0.offset |old(~guard_malloc_counter~0.offset)|) (= |#NULL.offset| |old(#NULL.offset)|) (= ~elem~0.offset |old(~elem~0.offset)|) (= |old(#length)| |#length|) (= |~#head~0.offset| |old(~#head~0.offset)|) (= ~guard_malloc_counter~0.base |old(~guard_malloc_counter~0.base)|))} #NULL.base, #NULL.offset := 0, 0; {621#true} is VALID [2020-07-08 16:23:42,354 INFO L280 TraceCheckUtils]: 2: Hoare triple {621#true} #valid := #valid[0 := 0]; {621#true} is VALID [2020-07-08 16:23:42,354 INFO L280 TraceCheckUtils]: 3: Hoare triple {621#true} assume 0 < #StackHeapBarrier; {621#true} is VALID [2020-07-08 16:23:42,355 INFO L280 TraceCheckUtils]: 4: Hoare triple {621#true} ~guard_malloc_counter~0.base, ~guard_malloc_counter~0.offset := 0, 0; {621#true} is VALID [2020-07-08 16:23:42,355 INFO L280 TraceCheckUtils]: 5: Hoare triple {621#true} ~elem~0.base, ~elem~0.offset := 0, 0; {621#true} is VALID [2020-07-08 16:23:42,355 INFO L280 TraceCheckUtils]: 6: Hoare triple {621#true} SUMMARY for call ~#head~0.base, ~#head~0.offset := #Ultimate.allocOnStack(8); srcloc: L900 {621#true} is VALID [2020-07-08 16:23:42,356 INFO L280 TraceCheckUtils]: 7: Hoare triple {621#true} SUMMARY for call write~init~$Pointer$(0, 0, ~#head~0.base, ~#head~0.offset, 4); srcloc: L900-1 {621#true} is VALID [2020-07-08 16:23:42,356 INFO L280 TraceCheckUtils]: 8: Hoare triple {621#true} SUMMARY for call write~init~$Pointer$(0, 0, ~#head~0.base, 4 + ~#head~0.offset, 4); srcloc: L900-2 {621#true} is VALID [2020-07-08 16:23:42,356 INFO L280 TraceCheckUtils]: 9: Hoare triple {621#true} assume true; {621#true} is VALID [2020-07-08 16:23:42,357 INFO L275 TraceCheckUtils]: 10: Hoare quadruple {621#true} {621#true} #112#return; {621#true} is VALID [2020-07-08 16:23:42,357 INFO L263 TraceCheckUtils]: 11: Hoare triple {621#true} call #t~ret34 := main(); {621#true} is VALID [2020-07-08 16:23:42,357 INFO L280 TraceCheckUtils]: 12: Hoare triple {621#true} havoc ~dev1~0.base, ~dev1~0.offset; {621#true} is VALID [2020-07-08 16:23:42,358 INFO L280 TraceCheckUtils]: 13: Hoare triple {621#true} havoc ~dev2~0.base, ~dev2~0.offset; {621#true} is VALID [2020-07-08 16:23:42,359 INFO L263 TraceCheckUtils]: 14: Hoare triple {621#true} call #t~ret32.base, #t~ret32.offset := my_malloc(8); {654#(and (= ~guard_malloc_counter~0.offset |old(~guard_malloc_counter~0.offset)|) (= ~guard_malloc_counter~0.base |old(~guard_malloc_counter~0.base)|))} is VALID [2020-07-08 16:23:42,360 INFO L280 TraceCheckUtils]: 15: Hoare triple {654#(and (= ~guard_malloc_counter~0.offset |old(~guard_malloc_counter~0.offset)|) (= ~guard_malloc_counter~0.base |old(~guard_malloc_counter~0.base)|))} [116] my_mallocENTRY-->L879_primed: Formula: (let ((.cse40 (* 2 |v_oct___getMemory_#res.offset_out_1|)) (.cse20 (* 2 |v_oct___getMemory_#t~nondet29_in_1|)) (.cse39 (* 2 |v_oct_my_malloc_#in~size_out_1|)) (.cse43 (* 2 |v_oct___getMemory_#res.base_out_1|)) (.cse37 (+ v_oct_~guard_malloc_counter~0.offset_in_1 3)) (.cse41 (* 2 |v_oct_my_malloc_#res.base_out_1|)) (.cse44 (* 2 |v_oct_my_malloc_#res.offset_out_1|)) (.cse42 (* 2 v_oct_my_malloc_~size_out_1))) (let ((.cse32 (<= .cse42 16)) (.cse30 (<= 0 .cse44)) (.cse22 (<= .cse44 0)) (.cse2 (<= v_oct_~guard_malloc_counter~0.base_out_1 v_oct_~guard_malloc_counter~0.base_in_1)) (.cse4 (<= |v_oct___getMemory_#res.offset_out_1| |v_oct_my_malloc_#res.offset_out_1|)) (.cse24 (<= .cse41 0)) (.cse38 (<= .cse37 v_oct_~guard_malloc_counter~0.offset_out_1)) (.cse36 (<= 2 (* 2 |v_oct___getMemory_#in~size_out_1|))) (.cse13 (<= 0 .cse43)) (.cse31 (<= |v_oct___getMemory_#in~size_out_1| v_oct_my_malloc_~size_out_1)) (.cse14 (<= 16 .cse39)) (.cse28 (<= v_oct_main_~dev1~0.offset_out_1 |v_oct_my_malloc_#res.offset_out_1|)) (.cse26 (<= |v_oct___getMemory_#in~size_out_1| v_oct___getMemory_~size_out_1)) (.cse27 (<= v_oct_my_malloc_~size_out_1 |v_oct___getMemory_#in~size_out_1|)) (.cse18 (<= 2 (* 2 v_oct___getMemory_~size_out_1))) (.cse23 (<= v_oct___getMemory_~size_out_1 |v_oct___getMemory_#in~size_out_1|)) (.cse0 (<= |v_oct_my_malloc_#res.base_out_1| |v_oct___getMemory_#res.base_out_1|)) (.cse1 (<= .cse43 0)) (.cse3 (<= |v_oct_my_malloc_#res.offset_out_1| v_oct_main_~dev1~0.offset_out_1)) (.cse25 (<= 16 .cse42)) (.cse9 (<= v_oct_~guard_malloc_counter~0.base_in_1 v_oct_~guard_malloc_counter~0.base_out_1)) (.cse6 (<= |v_oct_my_malloc_#res.base_out_1| v_oct_main_~dev1~0.base_out_1)) (.cse7 (<= |v_oct___getMemory_#res.base_out_1| |v_oct_my_malloc_#res.base_out_1|)) (.cse11 (<= v_oct_main_~dev1~0.base_out_1 |v_oct_my_malloc_#res.base_out_1|)) (.cse21 (<= .cse20 0)) (.cse35 (<= 0 .cse41)) (.cse29 (<= 0 .cse40)) (.cse16 (<= 0 .cse20)) (.cse15 (<= .cse40 0)) (.cse33 (<= .cse39 16)) (.cse34 (<= |v_oct_my_malloc_#res.offset_out_1| |v_oct___getMemory_#res.offset_out_1|))) (or (let ((.cse5 (+ v_oct_~guard_malloc_counter~0.offset_in_1 1))) (and (<= |v_oct_my_malloc_#in~size_in_1| v_oct_my_malloc_~size_out_1) .cse0 .cse1 .cse2 .cse3 .cse4 (<= v_oct_~guard_malloc_counter~0.offset_out_1 .cse5) .cse6 .cse7 (let ((.cse8 (<= .cse20 4294967294)) (.cse10 (<= 0 (+ .cse20 4294967296))) (.cse12 (<= .cse5 v_oct_~guard_malloc_counter~0.offset_out_1)) (.cse17 (<= 0 (+ .cse20 4294967296)))) (or (and .cse8 .cse9 .cse10 .cse11 .cse12 .cse13 .cse14 .cse15 .cse16 (not .cse17) .cse18) (and (let ((.cse19 (<= .cse20 4294967294))) (or (and .cse8 (not .cse19) .cse9 .cse10 .cse11 .cse12 .cse13 .cse14 .cse15 .cse16 .cse18) (and .cse9 .cse11 .cse12 .cse13 .cse19 .cse14 .cse15 .cse16 .cse18))) .cse17))) (or (not .cse9) (not .cse0) (not .cse21) (not .cse6) (not .cse22) (not .cse23) (not .cse3) (not .cse24) (not .cse13) (not .cse18) (not .cse7) (not .cse25) (not .cse14) (not .cse26) (not .cse2) (not .cse27) (not .cse28) (not .cse29) (not .cse4) (not .cse30) (not .cse31) (not .cse15) (not .cse32) (not .cse33) (not .cse34) (not .cse1) (not .cse35) (not .cse36) (not .cse11) (not .cse16) (< v_oct_~guard_malloc_counter~0.offset_out_1 .cse37)) .cse21 .cse31 .cse29 .cse33 (<= v_oct_my_malloc_~size_out_1 |v_oct_my_malloc_#in~size_in_1|) .cse28 .cse26 .cse34 .cse27 .cse23)) (and .cse32 .cse30 .cse22 .cse2 .cse4 .cse24 .cse38 .cse36 .cse13 .cse31 .cse14 .cse26 .cse28 .cse27 .cse18 .cse23 .cse0 .cse1 .cse3 .cse25 .cse9 .cse6 .cse7 .cse11 .cse21 .cse35 .cse29 .cse16 .cse15 .cse33 .cse34) (and .cse32 .cse30 .cse22 .cse2 .cse4 .cse24 .cse38 .cse36 .cse13 .cse31 .cse14 .cse28 .cse26 .cse27 .cse18 .cse23 .cse0 .cse1 .cse3 .cse25 .cse9 .cse6 .cse7 .cse11 .cse21 .cse35 .cse29 .cse16 .cse15 .cse33 .cse34)))) InVars {~guard_malloc_counter~0.offset=v_oct_~guard_malloc_counter~0.offset_in_1, ~guard_malloc_counter~0.base=v_oct_~guard_malloc_counter~0.base_in_1, __getMemory_#t~nondet29=|v_oct___getMemory_#t~nondet29_in_1|, my_malloc_#in~size=|v_oct_my_malloc_#in~size_in_1|} OutVars{__getMemory_#res.base=|v_oct___getMemory_#res.base_out_1|, my_malloc_#in~size=|v_oct_my_malloc_#in~size_out_1|, __getMemory_#t~post28.offset=|v_oct___getMemory_#t~post28.offset_out_1|, ~guard_malloc_counter~0.base=v_oct_~guard_malloc_counter~0.base_out_1, __getMemory_~size=v_oct___getMemory_~size_out_1, __getMemory_#t~nondet29=|v_oct___getMemory_#t~nondet29_out_1|, main_#t~ret32.offset=|v_oct_main_#t~ret32.offset_out_1|, __getMemory_#t~post28.base=|v_oct___getMemory_#t~post28.base_out_1|, my_malloc_#res.offset=|v_oct_my_malloc_#res.offset_out_1|, __getMemory_#res.offset=|v_oct___getMemory_#res.offset_out_1|, ~guard_malloc_counter~0.offset=v_oct_~guard_malloc_counter~0.offset_out_1, main_~dev1~0.offset=v_oct_main_~dev1~0.offset_out_1, my_malloc_#t~ret30.base=|v_oct_my_malloc_#t~ret30.base_out_1|, my_malloc_#res.base=|v_oct_my_malloc_#res.base_out_1|, my_malloc_#t~ret30.offset=|v_oct_my_malloc_#t~ret30.offset_out_1|, main_~dev1~0.base=v_oct_main_~dev1~0.base_out_1, __getMemory_#in~size=|v_oct___getMemory_#in~size_out_1|, main_#t~ret32.base=|v_oct_main_#t~ret32.base_out_1|, my_malloc_~size=v_oct_my_malloc_~size_out_1} AuxVars[] AssignedVars[__getMemory_#res.base, my_malloc_#in~size, __getMemory_#t~post28.offset, ~guard_malloc_counter~0.base, __getMemory_~size, __getMemory_#t~nondet29, main_#t~ret32.offset, __getMemory_#t~post28.base, my_malloc_#res.offset, __getMemory_#res.offset, ~guard_malloc_counter~0.offset, main_~dev1~0.offset, my_malloc_#t~ret30.base, my_malloc_#res.base, my_malloc_#t~ret30.offset, main_~dev1~0.base, __getMemory_#in~size, main_#t~ret32.base, my_malloc_~size] {621#true} is VALID [2020-07-08 16:23:42,360 INFO L280 TraceCheckUtils]: 16: Hoare triple {621#true} [115] L879_primed-->L879: Formula: (= v_my_malloc_~size_1 |v_my_malloc_#in~size_1|) InVars {my_malloc_#in~size=|v_my_malloc_#in~size_1|} OutVars{my_malloc_#in~size=|v_my_malloc_#in~size_1|, my_malloc_~size=v_my_malloc_~size_1} AuxVars[] AssignedVars[my_malloc_~size] {621#true} is VALID [2020-07-08 16:23:42,361 INFO L263 TraceCheckUtils]: 17: Hoare triple {621#true} call #t~ret30.base, #t~ret30.offset := __getMemory(~size); {654#(and (= ~guard_malloc_counter~0.offset |old(~guard_malloc_counter~0.offset)|) (= ~guard_malloc_counter~0.base |old(~guard_malloc_counter~0.base)|))} is VALID [2020-07-08 16:23:42,361 INFO L280 TraceCheckUtils]: 18: Hoare triple {654#(and (= ~guard_malloc_counter~0.offset |old(~guard_malloc_counter~0.offset)|) (= ~guard_malloc_counter~0.base |old(~guard_malloc_counter~0.base)|))} ~size := #in~size; {621#true} is VALID [2020-07-08 16:23:42,362 INFO L280 TraceCheckUtils]: 19: Hoare triple {621#true} assume ~size > 0; {621#true} is VALID [2020-07-08 16:23:42,362 INFO L280 TraceCheckUtils]: 20: Hoare triple {621#true} #t~post28.base, #t~post28.offset := ~guard_malloc_counter~0.base, ~guard_malloc_counter~0.offset; {621#true} is VALID [2020-07-08 16:23:42,362 INFO L280 TraceCheckUtils]: 21: Hoare triple {621#true} ~guard_malloc_counter~0.base, ~guard_malloc_counter~0.offset := #t~post28.base, 1 + #t~post28.offset; {621#true} is VALID [2020-07-08 16:23:42,363 INFO L280 TraceCheckUtils]: 22: Hoare triple {621#true} havoc #t~post28.base, #t~post28.offset; {621#true} is VALID [2020-07-08 16:23:42,363 INFO L280 TraceCheckUtils]: 23: Hoare triple {621#true} assume -2147483648 <= #t~nondet29 && #t~nondet29 <= 2147483647; {621#true} is VALID [2020-07-08 16:23:42,363 INFO L280 TraceCheckUtils]: 24: Hoare triple {621#true} assume 0 == #t~nondet29; {621#true} is VALID [2020-07-08 16:23:42,364 INFO L280 TraceCheckUtils]: 25: Hoare triple {621#true} havoc #t~nondet29; {621#true} is VALID [2020-07-08 16:23:42,365 INFO L280 TraceCheckUtils]: 26: Hoare triple {621#true} #res.base, #res.offset := 0, 0; {668#(and (<= |__getMemory_#res.base| 0) (<= |__getMemory_#res.offset| 0) (<= 0 |__getMemory_#res.offset|) (<= 0 |__getMemory_#res.base|))} is VALID [2020-07-08 16:23:42,366 INFO L280 TraceCheckUtils]: 27: Hoare triple {668#(and (<= |__getMemory_#res.base| 0) (<= |__getMemory_#res.offset| 0) (<= 0 |__getMemory_#res.offset|) (<= 0 |__getMemory_#res.base|))} assume true; {668#(and (<= |__getMemory_#res.base| 0) (<= |__getMemory_#res.offset| 0) (<= 0 |__getMemory_#res.offset|) (<= 0 |__getMemory_#res.base|))} is VALID [2020-07-08 16:23:42,367 INFO L275 TraceCheckUtils]: 28: Hoare quadruple {668#(and (<= |__getMemory_#res.base| 0) (<= |__getMemory_#res.offset| 0) (<= 0 |__getMemory_#res.offset|) (<= 0 |__getMemory_#res.base|))} {621#true} #92#return; {666#(and (<= |my_malloc_#t~ret30.offset| 0) (<= 0 |my_malloc_#t~ret30.offset|) (<= 0 |my_malloc_#t~ret30.base|) (<= |my_malloc_#t~ret30.base| 0))} is VALID [2020-07-08 16:23:42,368 INFO L280 TraceCheckUtils]: 29: Hoare triple {666#(and (<= |my_malloc_#t~ret30.offset| 0) (<= 0 |my_malloc_#t~ret30.offset|) (<= 0 |my_malloc_#t~ret30.base|) (<= |my_malloc_#t~ret30.base| 0))} #res.base, #res.offset := #t~ret30.base, #t~ret30.offset; {667#(and (<= |my_malloc_#res.base| 0) (<= |my_malloc_#res.offset| 0) (<= 0 |my_malloc_#res.base|) (<= 0 |my_malloc_#res.offset|))} is VALID [2020-07-08 16:23:42,369 INFO L280 TraceCheckUtils]: 30: Hoare triple {667#(and (<= |my_malloc_#res.base| 0) (<= |my_malloc_#res.offset| 0) (<= 0 |my_malloc_#res.base|) (<= 0 |my_malloc_#res.offset|))} havoc #t~ret30.base, #t~ret30.offset; {667#(and (<= |my_malloc_#res.base| 0) (<= |my_malloc_#res.offset| 0) (<= 0 |my_malloc_#res.base|) (<= 0 |my_malloc_#res.offset|))} is VALID [2020-07-08 16:23:42,370 INFO L280 TraceCheckUtils]: 31: Hoare triple {667#(and (<= |my_malloc_#res.base| 0) (<= |my_malloc_#res.offset| 0) (<= 0 |my_malloc_#res.base|) (<= 0 |my_malloc_#res.offset|))} assume true; {667#(and (<= |my_malloc_#res.base| 0) (<= |my_malloc_#res.offset| 0) (<= 0 |my_malloc_#res.base|) (<= 0 |my_malloc_#res.offset|))} is VALID [2020-07-08 16:23:42,372 INFO L275 TraceCheckUtils]: 32: Hoare quadruple {667#(and (<= |my_malloc_#res.base| 0) (<= |my_malloc_#res.offset| 0) (<= 0 |my_malloc_#res.base|) (<= 0 |my_malloc_#res.offset|))} {621#true} #96#return; {651#(and (= 0 |main_#t~ret33.offset|) (= 0 |main_#t~ret33.base|))} is VALID [2020-07-08 16:23:42,373 INFO L280 TraceCheckUtils]: 33: Hoare triple {651#(and (= 0 |main_#t~ret33.offset|) (= 0 |main_#t~ret33.base|))} ~dev2~0.base, ~dev2~0.offset := #t~ret33.base, #t~ret33.offset; {652#(and (= 0 main_~dev2~0.offset) (= main_~dev2~0.base 0))} is VALID [2020-07-08 16:23:42,374 INFO L280 TraceCheckUtils]: 34: Hoare triple {652#(and (= 0 main_~dev2~0.offset) (= main_~dev2~0.base 0))} havoc #t~ret33.base, #t~ret33.offset; {652#(and (= 0 main_~dev2~0.offset) (= main_~dev2~0.base 0))} is VALID [2020-07-08 16:23:42,375 INFO L280 TraceCheckUtils]: 35: Hoare triple {652#(and (= 0 main_~dev2~0.offset) (= main_~dev2~0.base 0))} assume (~dev1~0.base != 0 || ~dev1~0.offset != 0) && (~dev2~0.base != 0 || ~dev2~0.offset != 0); {622#false} is VALID [2020-07-08 16:23:42,376 INFO L263 TraceCheckUtils]: 36: Hoare triple {622#false} call list_add(~dev2~0.base, ~dev2~0.offset, ~#head~0.base, ~#head~0.offset); {622#false} is VALID [2020-07-08 16:23:42,376 INFO L280 TraceCheckUtils]: 37: Hoare triple {622#false} ~new.base, ~new.offset := #in~new.base, #in~new.offset; {622#false} is VALID [2020-07-08 16:23:42,376 INFO L280 TraceCheckUtils]: 38: Hoare triple {622#false} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {622#false} is VALID [2020-07-08 16:23:42,377 INFO L280 TraceCheckUtils]: 39: Hoare triple {622#false} assume !(~new.base != ~elem~0.base || ~new.offset != ~elem~0.offset); {622#false} is VALID [2020-07-08 16:23:42,377 INFO L263 TraceCheckUtils]: 40: Hoare triple {622#false} call __blast_assert(); {622#false} is VALID [2020-07-08 16:23:42,377 INFO L280 TraceCheckUtils]: 41: Hoare triple {622#false} assume !false; {622#false} is VALID [2020-07-08 16:23:42,381 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-08 16:23:43,194 INFO L185 leratedInterpolation]: Finished Analysing Program using PRECISE loop Acceleration [2020-07-08 16:23:43,195 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [998968251] [2020-07-08 16:23:43,195 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-08 16:23:43,195 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [26] imperfect sequences [] total 26 [2020-07-08 16:23:43,195 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1624546974] [2020-07-08 16:23:43,197 INFO L78 Accepts]: Start accepts. Automaton has 26 states. Word has length 61 [2020-07-08 16:23:43,197 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-08 16:23:43,197 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 26 states. [2020-07-08 16:23:43,220 WARN L140 InductivityCheck]: Transition 669#(and (= |my_malloc_#in~size| my_malloc_~size) (= ~guard_malloc_counter~0.offset |old(~guard_malloc_counter~0.offset)|) (= ~guard_malloc_counter~0.base |old(~guard_malloc_counter~0.base)|)) ( _ , call #t~ret30.base, #t~ret30.offset := __getMemory(~size); , 670#(and (= ~guard_malloc_counter~0.offset |old(~guard_malloc_counter~0.offset)|) (= |__getMemory_#in~size| |my_malloc_#in~size|) (= ~guard_malloc_counter~0.base |old(~guard_malloc_counter~0.base)|)) ) not inductive [2020-07-08 16:23:43,221 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2020-07-08 16:23:43,222 FATAL L? ?]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction has thrown an exception: java.lang.AssertionError: inductivity failed at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.predicates.InductivityCheck.evaluateResult(InductivityCheck.java:142) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.predicates.InductivityCheck.checkInductivity(InductivityCheck.java:108) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.predicates.InductivityCheck.(InductivityCheck.java:75) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.BasicCegarLoop.constructInterpolantAutomaton(BasicCegarLoop.java:583) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.iterateInternal(AbstractCegarLoop.java:455) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.iterate(AbstractCegarLoop.java:370) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.CegarLoopResult.iterate(CegarLoopResult.java:142) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.iterateNew(TraceAbstractionStarter.java:334) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.runCegarLoops(TraceAbstractionStarter.java:175) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.(TraceAbstractionStarter.java:127) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver.finish(TraceAbstractionObserver.java:120) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runObserver(PluginConnector.java:168) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runTool(PluginConnector.java:151) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.run(PluginConnector.java:128) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.executePluginConnector(ToolchainWalker.java:232) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.processPlugin(ToolchainWalker.java:226) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walkUnprotected(ToolchainWalker.java:142) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walk(ToolchainWalker.java:104) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainManager$Toolchain.processToolchain(ToolchainManager.java:317) at de.uni_freiburg.informatik.ultimate.core.coreplugin.toolchain.DefaultToolchainJob.run(DefaultToolchainJob.java:145) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55) [2020-07-08 16:23:43,229 INFO L168 Benchmark]: Toolchain (without parser) took 8463.32 ms. Allocated memory was 134.7 MB in the beginning and 304.6 MB in the end (delta: 169.9 MB). Free memory was 98.3 MB in the beginning and 117.6 MB in the end (delta: -19.3 MB). Peak memory consumption was 150.6 MB. Max. memory is 7.1 GB. [2020-07-08 16:23:43,230 INFO L168 Benchmark]: CDTParser took 0.19 ms. Allocated memory is still 134.7 MB. Free memory was 118.1 MB in the beginning and 117.9 MB in the end (delta: 210.1 kB). Peak memory consumption was 210.1 kB. Max. memory is 7.1 GB. [2020-07-08 16:23:43,231 INFO L168 Benchmark]: CACSL2BoogieTranslator took 812.23 ms. Allocated memory was 134.7 MB in the beginning and 196.6 MB in the end (delta: 61.9 MB). Free memory was 98.1 MB in the beginning and 160.7 MB in the end (delta: -62.6 MB). Peak memory consumption was 27.5 MB. Max. memory is 7.1 GB. [2020-07-08 16:23:43,232 INFO L168 Benchmark]: Boogie Preprocessor took 70.77 ms. Allocated memory is still 196.6 MB. Free memory was 160.7 MB in the beginning and 157.9 MB in the end (delta: 2.8 MB). Peak memory consumption was 2.8 MB. Max. memory is 7.1 GB. [2020-07-08 16:23:43,233 INFO L168 Benchmark]: RCFGBuilder took 687.99 ms. Allocated memory is still 196.6 MB. Free memory was 157.9 MB in the beginning and 99.3 MB in the end (delta: 58.5 MB). Peak memory consumption was 58.5 MB. Max. memory is 7.1 GB. [2020-07-08 16:23:43,234 INFO L168 Benchmark]: TraceAbstraction took 6880.84 ms. Allocated memory was 196.6 MB in the beginning and 304.6 MB in the end (delta: 108.0 MB). Free memory was 98.6 MB in the beginning and 117.6 MB in the end (delta: -19.0 MB). Peak memory consumption was 89.1 MB. Max. memory is 7.1 GB. [2020-07-08 16:23:43,238 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.19 ms. Allocated memory is still 134.7 MB. Free memory was 118.1 MB in the beginning and 117.9 MB in the end (delta: 210.1 kB). Peak memory consumption was 210.1 kB. Max. memory is 7.1 GB. * CACSL2BoogieTranslator took 812.23 ms. Allocated memory was 134.7 MB in the beginning and 196.6 MB in the end (delta: 61.9 MB). Free memory was 98.1 MB in the beginning and 160.7 MB in the end (delta: -62.6 MB). Peak memory consumption was 27.5 MB. Max. memory is 7.1 GB. * Boogie Preprocessor took 70.77 ms. Allocated memory is still 196.6 MB. Free memory was 160.7 MB in the beginning and 157.9 MB in the end (delta: 2.8 MB). Peak memory consumption was 2.8 MB. Max. memory is 7.1 GB. * RCFGBuilder took 687.99 ms. Allocated memory is still 196.6 MB. Free memory was 157.9 MB in the beginning and 99.3 MB in the end (delta: 58.5 MB). Peak memory consumption was 58.5 MB. Max. memory is 7.1 GB. * TraceAbstraction took 6880.84 ms. Allocated memory was 196.6 MB in the beginning and 304.6 MB in the end (delta: 108.0 MB). Free memory was 98.6 MB in the beginning and 117.6 MB in the end (delta: -19.0 MB). Peak memory consumption was 89.1 MB. Max. memory is 7.1 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - ExceptionOrErrorResult: AssertionError: inductivity failed de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: AssertionError: inductivity failed: de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.predicates.InductivityCheck.evaluateResult(InductivityCheck.java:142) RESULT: Ultimate could not prove your program: Toolchain returned no result. Received shutdown request...