./Ultimate.py --spec ../sv-benchmarks/c/properties/valid-memsafety.prp --file ../sv-benchmarks/c/list-ext-properties/test-0232_1-1.i --full-output -ea --architecture 32bit -------------------------------------------------------------------------------- Checking for memory safety (deref-memtrack) Using default analysis Version 03d7b7b3 Calling Ultimate with: /usr/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -ea -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerMemDerefMemtrack.xml -i ../sv-benchmarks/c/list-ext-properties/test-0232_1-1.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-DerefFreeMemtrack-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G valid-free) ) CHECK( init(main()), LTL(G valid-deref) ) CHECK( init(main()), LTL(G valid-memtrack) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash b36390e4ace21fb538f0c1df6f562bcf2825b5901fb45d9987e6242615034592 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:48:34,749 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:48:34,751 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:48:34,796 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:48:34,797 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:48:34,800 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:48:34,801 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:48:34,804 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:48:34,807 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:48:34,811 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:48:34,812 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:48:34,814 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:48:34,814 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:48:34,817 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:48:34,818 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:48:34,821 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:48:34,823 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:48:34,823 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:48:34,826 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:48:34,831 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:48:34,833 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:48:34,834 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:48:34,836 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:48:34,842 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:48:34,849 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:48:34,849 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:48:34,850 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:48:34,851 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:48:34,852 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:48:34,852 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:48:34,853 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:48:34,854 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:48:34,855 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:48:34,856 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:48:34,858 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:48:34,858 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:48:34,858 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:48:34,859 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:48:34,859 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:48:34,860 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:48:34,861 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:48:34,862 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-DerefFreeMemtrack-32bit-Automizer_Default.epf [2022-02-20 23:48:34,900 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:48:34,900 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:48:34,901 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:48:34,901 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:48:34,902 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:48:34,902 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:48:34,902 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:48:34,903 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:48:34,906 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:48:34,906 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:48:34,907 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:48:34,907 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:48:34,907 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:48:34,907 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:48:34,907 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:48:34,908 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:48:34,908 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:48:34,908 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2022-02-20 23:48:34,908 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:48:34,908 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:48:34,908 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:48:34,909 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:48:34,909 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:48:34,909 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:48:34,909 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:48:34,909 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:48:34,910 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:48:34,911 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:48:34,911 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 23:48:34,911 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 23:48:34,911 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.graphml Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G valid-free) ) CHECK( init(main()), LTL(G valid-deref) ) CHECK( init(main()), LTL(G valid-memtrack) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> b36390e4ace21fb538f0c1df6f562bcf2825b5901fb45d9987e6242615034592 [2022-02-20 23:48:35,156 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:48:35,179 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:48:35,182 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:48:35,184 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:48:35,184 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:48:35,185 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/list-ext-properties/test-0232_1-1.i [2022-02-20 23:48:35,238 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/f83b3e1ed/5ee524b0af5f453f81666540f16b32a4/FLAG175bb0058 [2022-02-20 23:48:35,681 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:48:35,682 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/list-ext-properties/test-0232_1-1.i [2022-02-20 23:48:35,706 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/f83b3e1ed/5ee524b0af5f453f81666540f16b32a4/FLAG175bb0058 [2022-02-20 23:48:35,721 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/f83b3e1ed/5ee524b0af5f453f81666540f16b32a4 [2022-02-20 23:48:35,723 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:48:35,725 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:48:35,728 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:48:35,728 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:48:35,730 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:48:35,732 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:48:35" (1/1) ... [2022-02-20 23:48:35,733 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@70ad33a7 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:35, skipping insertion in model container [2022-02-20 23:48:35,733 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:48:35" (1/1) ... [2022-02-20 23:48:35,739 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:48:35,785 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:48:36,054 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:48:36,062 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 23:48:36,114 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:48:36,146 INFO L208 MainTranslator]: Completed translation [2022-02-20 23:48:36,147 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:36 WrapperNode [2022-02-20 23:48:36,147 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:48:36,147 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 23:48:36,147 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 23:48:36,148 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 23:48:36,155 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:36" (1/1) ... [2022-02-20 23:48:36,169 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:36" (1/1) ... [2022-02-20 23:48:36,195 INFO L137 Inliner]: procedures = 126, calls = 33, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 98 [2022-02-20 23:48:36,197 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 23:48:36,198 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 23:48:36,199 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 23:48:36,199 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 23:48:36,205 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:36" (1/1) ... [2022-02-20 23:48:36,206 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:36" (1/1) ... [2022-02-20 23:48:36,218 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:36" (1/1) ... [2022-02-20 23:48:36,219 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:36" (1/1) ... [2022-02-20 23:48:36,230 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:36" (1/1) ... [2022-02-20 23:48:36,246 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:36" (1/1) ... [2022-02-20 23:48:36,255 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:36" (1/1) ... [2022-02-20 23:48:36,270 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 23:48:36,271 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 23:48:36,271 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 23:48:36,282 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 23:48:36,283 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:36" (1/1) ... [2022-02-20 23:48:36,289 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:48:36,298 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:48:36,312 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-02-20 23:48:36,331 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-02-20 23:48:36,358 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2022-02-20 23:48:36,358 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 23:48:36,359 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-02-20 23:48:36,359 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2022-02-20 23:48:36,360 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2022-02-20 23:48:36,360 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 23:48:36,360 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~$Pointer$ [2022-02-20 23:48:36,360 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-20 23:48:36,360 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 23:48:36,360 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 23:48:36,470 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 23:48:36,472 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 23:48:36,927 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 23:48:36,933 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 23:48:36,934 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-02-20 23:48:36,936 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:48:36 BoogieIcfgContainer [2022-02-20 23:48:36,936 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 23:48:36,937 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 23:48:36,937 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 23:48:36,942 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 23:48:36,944 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 11:48:35" (1/3) ... [2022-02-20 23:48:36,944 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@62fe1233 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:48:36, skipping insertion in model container [2022-02-20 23:48:36,945 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:36" (2/3) ... [2022-02-20 23:48:36,945 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@62fe1233 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:48:36, skipping insertion in model container [2022-02-20 23:48:36,945 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:48:36" (3/3) ... [2022-02-20 23:48:36,946 INFO L111 eAbstractionObserver]: Analyzing ICFG test-0232_1-1.i [2022-02-20 23:48:36,951 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 23:48:36,952 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 44 error locations. [2022-02-20 23:48:36,987 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 23:48:36,994 INFO L339 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=false, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mLoopAccelerationTechnique=FAST_UPR [2022-02-20 23:48:36,994 INFO L340 AbstractCegarLoop]: Starting to check reachability of 44 error locations. [2022-02-20 23:48:37,013 INFO L276 IsEmpty]: Start isEmpty. Operand has 91 states, 46 states have (on average 2.108695652173913) internal successors, (97), 90 states have internal predecessors, (97), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:37,018 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2022-02-20 23:48:37,018 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:37,019 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2022-02-20 23:48:37,019 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 40 more)] === [2022-02-20 23:48:37,023 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:37,023 INFO L85 PathProgramCache]: Analyzing trace with hash 925637, now seen corresponding path program 1 times [2022-02-20 23:48:37,030 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:37,031 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [300175241] [2022-02-20 23:48:37,031 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:37,032 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:37,120 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:37,232 INFO L290 TraceCheckUtils]: 0: Hoare triple {94#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(16, 2);~c~0 := 0; {94#true} is VALID [2022-02-20 23:48:37,234 INFO L290 TraceCheckUtils]: 1: Hoare triple {94#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post12#1, main_#t~nondet11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~post18#1, main_~next~0#1.base, main_~next~0#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~post22#1, main_~next~1#1.base, main_~next~1#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset, main_~length~0#1;call main_~#list~0#1.base, main_~#list~0#1.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, main_~#list~0#1.base, main_~#list~0#1.offset, 4);main_~length~0#1 := 0; {96#(= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1)} is VALID [2022-02-20 23:48:37,236 INFO L290 TraceCheckUtils]: 2: Hoare triple {96#(= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1)} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := 1 + append_#t~post3#1;havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {97#(= (select |#valid| |ULTIMATE.start_append_~plist#1.base|) 1)} is VALID [2022-02-20 23:48:37,236 INFO L290 TraceCheckUtils]: 3: Hoare triple {97#(= (select |#valid| |ULTIMATE.start_append_~plist#1.base|) 1)} assume !(1 == #valid[append_~plist#1.base]); {95#false} is VALID [2022-02-20 23:48:37,237 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:37,238 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:37,239 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [300175241] [2022-02-20 23:48:37,239 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [300175241] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:37,239 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:37,240 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:48:37,243 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1557604176] [2022-02-20 23:48:37,244 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:37,248 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 4 states have internal predecessors, (4), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 4 [2022-02-20 23:48:37,249 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:37,252 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 4 states have internal predecessors, (4), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:37,259 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 4 edges. 4 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:37,260 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:48:37,260 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:37,286 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:48:37,287 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:48:37,291 INFO L87 Difference]: Start difference. First operand has 91 states, 46 states have (on average 2.108695652173913) internal successors, (97), 90 states have internal predecessors, (97), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand has 4 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 4 states have internal predecessors, (4), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:37,644 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:37,644 INFO L93 Difference]: Finished difference Result 116 states and 121 transitions. [2022-02-20 23:48:37,644 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:48:37,645 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 4 states have internal predecessors, (4), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 4 [2022-02-20 23:48:37,645 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:37,646 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 4 states have internal predecessors, (4), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:37,662 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 135 transitions. [2022-02-20 23:48:37,662 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 4 states have internal predecessors, (4), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:37,666 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 135 transitions. [2022-02-20 23:48:37,666 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 135 transitions. [2022-02-20 23:48:37,797 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 135 edges. 135 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:37,807 INFO L225 Difference]: With dead ends: 116 [2022-02-20 23:48:37,808 INFO L226 Difference]: Without dead ends: 114 [2022-02-20 23:48:37,809 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:48:37,812 INFO L933 BasicCegarLoop]: 50 mSDtfsCounter, 166 mSDsluCounter, 21 mSDsCounter, 0 mSdLazyCounter, 79 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 166 SdHoareTripleChecker+Valid, 71 SdHoareTripleChecker+Invalid, 94 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 79 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:37,813 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [166 Valid, 71 Invalid, 94 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 79 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:48:37,826 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 114 states. [2022-02-20 23:48:37,836 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 114 to 84. [2022-02-20 23:48:37,836 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:37,837 INFO L82 GeneralOperation]: Start isEquivalent. First operand 114 states. Second operand has 84 states, 46 states have (on average 1.934782608695652) internal successors, (89), 83 states have internal predecessors, (89), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:37,838 INFO L74 IsIncluded]: Start isIncluded. First operand 114 states. Second operand has 84 states, 46 states have (on average 1.934782608695652) internal successors, (89), 83 states have internal predecessors, (89), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:37,839 INFO L87 Difference]: Start difference. First operand 114 states. Second operand has 84 states, 46 states have (on average 1.934782608695652) internal successors, (89), 83 states have internal predecessors, (89), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:37,844 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:37,844 INFO L93 Difference]: Finished difference Result 114 states and 119 transitions. [2022-02-20 23:48:37,845 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 119 transitions. [2022-02-20 23:48:37,846 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:37,846 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:37,847 INFO L74 IsIncluded]: Start isIncluded. First operand has 84 states, 46 states have (on average 1.934782608695652) internal successors, (89), 83 states have internal predecessors, (89), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 114 states. [2022-02-20 23:48:37,847 INFO L87 Difference]: Start difference. First operand has 84 states, 46 states have (on average 1.934782608695652) internal successors, (89), 83 states have internal predecessors, (89), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 114 states. [2022-02-20 23:48:37,853 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:37,854 INFO L93 Difference]: Finished difference Result 114 states and 119 transitions. [2022-02-20 23:48:37,854 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 119 transitions. [2022-02-20 23:48:37,855 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:37,855 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:37,855 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:37,855 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:37,856 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 84 states, 46 states have (on average 1.934782608695652) internal successors, (89), 83 states have internal predecessors, (89), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:37,859 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 84 states to 84 states and 89 transitions. [2022-02-20 23:48:37,860 INFO L78 Accepts]: Start accepts. Automaton has 84 states and 89 transitions. Word has length 4 [2022-02-20 23:48:37,860 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:37,861 INFO L470 AbstractCegarLoop]: Abstraction has 84 states and 89 transitions. [2022-02-20 23:48:37,861 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 4 states have internal predecessors, (4), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:37,861 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 89 transitions. [2022-02-20 23:48:37,861 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2022-02-20 23:48:37,861 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:37,861 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2022-02-20 23:48:37,862 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 23:48:37,862 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 40 more)] === [2022-02-20 23:48:37,863 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:37,863 INFO L85 PathProgramCache]: Analyzing trace with hash 925638, now seen corresponding path program 1 times [2022-02-20 23:48:37,863 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:37,863 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1014633212] [2022-02-20 23:48:37,863 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:37,864 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:37,885 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:37,943 INFO L290 TraceCheckUtils]: 0: Hoare triple {530#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(16, 2);~c~0 := 0; {530#true} is VALID [2022-02-20 23:48:37,944 INFO L290 TraceCheckUtils]: 1: Hoare triple {530#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post12#1, main_#t~nondet11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~post18#1, main_~next~0#1.base, main_~next~0#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~post22#1, main_~next~1#1.base, main_~next~1#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset, main_~length~0#1;call main_~#list~0#1.base, main_~#list~0#1.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, main_~#list~0#1.base, main_~#list~0#1.offset, 4);main_~length~0#1 := 0; {532#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_main_~#list~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1))} is VALID [2022-02-20 23:48:37,945 INFO L290 TraceCheckUtils]: 2: Hoare triple {532#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_main_~#list~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1))} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := 1 + append_#t~post3#1;havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {533#(and (= |ULTIMATE.start_append_~plist#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_append_~plist#1.base|)))} is VALID [2022-02-20 23:48:37,946 INFO L290 TraceCheckUtils]: 3: Hoare triple {533#(and (= |ULTIMATE.start_append_~plist#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_append_~plist#1.base|)))} assume !(4 + append_~plist#1.offset <= #length[append_~plist#1.base] && 0 <= append_~plist#1.offset); {531#false} is VALID [2022-02-20 23:48:37,946 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:37,947 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:37,947 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1014633212] [2022-02-20 23:48:37,947 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1014633212] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:37,947 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:37,947 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:48:37,948 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [139541358] [2022-02-20 23:48:37,948 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:37,949 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 4 states have internal predecessors, (4), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 4 [2022-02-20 23:48:37,949 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:37,949 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 4 states have internal predecessors, (4), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:37,954 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 4 edges. 4 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:37,954 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:48:37,955 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:37,955 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:48:37,955 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:48:37,956 INFO L87 Difference]: Start difference. First operand 84 states and 89 transitions. Second operand has 4 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 4 states have internal predecessors, (4), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,302 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:38,303 INFO L93 Difference]: Finished difference Result 107 states and 112 transitions. [2022-02-20 23:48:38,303 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:48:38,303 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 4 states have internal predecessors, (4), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 4 [2022-02-20 23:48:38,303 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:38,303 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 4 states have internal predecessors, (4), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,305 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 119 transitions. [2022-02-20 23:48:38,305 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 4 states have internal predecessors, (4), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,307 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 119 transitions. [2022-02-20 23:48:38,307 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 119 transitions. [2022-02-20 23:48:38,466 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 119 edges. 119 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:38,468 INFO L225 Difference]: With dead ends: 107 [2022-02-20 23:48:38,468 INFO L226 Difference]: Without dead ends: 107 [2022-02-20 23:48:38,469 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:48:38,470 INFO L933 BasicCegarLoop]: 36 mSDtfsCounter, 165 mSDsluCounter, 14 mSDsCounter, 0 mSdLazyCounter, 80 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 165 SdHoareTripleChecker+Valid, 50 SdHoareTripleChecker+Invalid, 93 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 80 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:38,470 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [165 Valid, 50 Invalid, 93 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 80 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:48:38,471 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 107 states. [2022-02-20 23:48:38,475 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 107 to 89. [2022-02-20 23:48:38,495 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:38,496 INFO L82 GeneralOperation]: Start isEquivalent. First operand 107 states. Second operand has 89 states, 54 states have (on average 1.8148148148148149) internal successors, (98), 88 states have internal predecessors, (98), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,497 INFO L74 IsIncluded]: Start isIncluded. First operand 107 states. Second operand has 89 states, 54 states have (on average 1.8148148148148149) internal successors, (98), 88 states have internal predecessors, (98), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,497 INFO L87 Difference]: Start difference. First operand 107 states. Second operand has 89 states, 54 states have (on average 1.8148148148148149) internal successors, (98), 88 states have internal predecessors, (98), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,500 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:38,501 INFO L93 Difference]: Finished difference Result 107 states and 112 transitions. [2022-02-20 23:48:38,501 INFO L276 IsEmpty]: Start isEmpty. Operand 107 states and 112 transitions. [2022-02-20 23:48:38,501 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:38,502 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:38,502 INFO L74 IsIncluded]: Start isIncluded. First operand has 89 states, 54 states have (on average 1.8148148148148149) internal successors, (98), 88 states have internal predecessors, (98), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 107 states. [2022-02-20 23:48:38,503 INFO L87 Difference]: Start difference. First operand has 89 states, 54 states have (on average 1.8148148148148149) internal successors, (98), 88 states have internal predecessors, (98), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 107 states. [2022-02-20 23:48:38,506 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:38,506 INFO L93 Difference]: Finished difference Result 107 states and 112 transitions. [2022-02-20 23:48:38,506 INFO L276 IsEmpty]: Start isEmpty. Operand 107 states and 112 transitions. [2022-02-20 23:48:38,507 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:38,507 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:38,507 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:38,507 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:38,508 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 89 states, 54 states have (on average 1.8148148148148149) internal successors, (98), 88 states have internal predecessors, (98), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,510 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 89 states to 89 states and 98 transitions. [2022-02-20 23:48:38,510 INFO L78 Accepts]: Start accepts. Automaton has 89 states and 98 transitions. Word has length 4 [2022-02-20 23:48:38,511 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:38,511 INFO L470 AbstractCegarLoop]: Abstraction has 89 states and 98 transitions. [2022-02-20 23:48:38,511 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 4 states have internal predecessors, (4), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,511 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 98 transitions. [2022-02-20 23:48:38,511 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 6 [2022-02-20 23:48:38,511 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:38,512 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1] [2022-02-20 23:48:38,512 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-02-20 23:48:38,512 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr2REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 40 more)] === [2022-02-20 23:48:38,512 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:38,513 INFO L85 PathProgramCache]: Analyzing trace with hash 28694727, now seen corresponding path program 1 times [2022-02-20 23:48:38,513 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:38,513 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1396993276] [2022-02-20 23:48:38,513 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:38,513 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:38,528 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:38,546 INFO L290 TraceCheckUtils]: 0: Hoare triple {948#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(16, 2);~c~0 := 0; {948#true} is VALID [2022-02-20 23:48:38,546 INFO L290 TraceCheckUtils]: 1: Hoare triple {948#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post12#1, main_#t~nondet11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~post18#1, main_~next~0#1.base, main_~next~0#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~post22#1, main_~next~1#1.base, main_~next~1#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset, main_~length~0#1;call main_~#list~0#1.base, main_~#list~0#1.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, main_~#list~0#1.base, main_~#list~0#1.offset, 4);main_~length~0#1 := 0; {948#true} is VALID [2022-02-20 23:48:38,547 INFO L290 TraceCheckUtils]: 2: Hoare triple {948#true} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := 1 + append_#t~post3#1;havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {950#(= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) 1)} is VALID [2022-02-20 23:48:38,548 INFO L290 TraceCheckUtils]: 3: Hoare triple {950#(= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) 1)} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L533 {950#(= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) 1)} is VALID [2022-02-20 23:48:38,548 INFO L290 TraceCheckUtils]: 4: Hoare triple {950#(= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) 1)} assume !(1 == #valid[append_~item~0#1.base]); {949#false} is VALID [2022-02-20 23:48:38,548 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:38,549 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:38,549 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1396993276] [2022-02-20 23:48:38,549 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1396993276] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:38,549 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:38,549 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:48:38,549 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [126570350] [2022-02-20 23:48:38,550 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:38,550 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 5 [2022-02-20 23:48:38,550 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:38,550 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,560 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 5 edges. 5 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:38,560 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:48:38,560 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:38,561 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:48:38,561 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:48:38,561 INFO L87 Difference]: Start difference. First operand 89 states and 98 transitions. Second operand has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,699 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:38,699 INFO L93 Difference]: Finished difference Result 103 states and 108 transitions. [2022-02-20 23:48:38,699 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:48:38,699 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 5 [2022-02-20 23:48:38,699 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:38,700 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,702 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 112 transitions. [2022-02-20 23:48:38,705 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,706 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 112 transitions. [2022-02-20 23:48:38,706 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 112 transitions. [2022-02-20 23:48:38,799 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 112 edges. 112 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:38,804 INFO L225 Difference]: With dead ends: 103 [2022-02-20 23:48:38,804 INFO L226 Difference]: Without dead ends: 103 [2022-02-20 23:48:38,804 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:48:38,805 INFO L933 BasicCegarLoop]: 49 mSDtfsCounter, 57 mSDsluCounter, 22 mSDsCounter, 0 mSdLazyCounter, 54 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 57 SdHoareTripleChecker+Valid, 71 SdHoareTripleChecker+Invalid, 58 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 54 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:38,806 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [57 Valid, 71 Invalid, 58 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 54 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:48:38,807 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 103 states. [2022-02-20 23:48:38,818 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 103 to 85. [2022-02-20 23:48:38,819 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:38,820 INFO L82 GeneralOperation]: Start isEquivalent. First operand 103 states. Second operand has 85 states, 54 states have (on average 1.7407407407407407) internal successors, (94), 84 states have internal predecessors, (94), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,822 INFO L74 IsIncluded]: Start isIncluded. First operand 103 states. Second operand has 85 states, 54 states have (on average 1.7407407407407407) internal successors, (94), 84 states have internal predecessors, (94), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,822 INFO L87 Difference]: Start difference. First operand 103 states. Second operand has 85 states, 54 states have (on average 1.7407407407407407) internal successors, (94), 84 states have internal predecessors, (94), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,825 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:38,826 INFO L93 Difference]: Finished difference Result 103 states and 108 transitions. [2022-02-20 23:48:38,827 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 108 transitions. [2022-02-20 23:48:38,828 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:38,831 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:38,832 INFO L74 IsIncluded]: Start isIncluded. First operand has 85 states, 54 states have (on average 1.7407407407407407) internal successors, (94), 84 states have internal predecessors, (94), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 103 states. [2022-02-20 23:48:38,832 INFO L87 Difference]: Start difference. First operand has 85 states, 54 states have (on average 1.7407407407407407) internal successors, (94), 84 states have internal predecessors, (94), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 103 states. [2022-02-20 23:48:38,835 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:38,837 INFO L93 Difference]: Finished difference Result 103 states and 108 transitions. [2022-02-20 23:48:38,838 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 108 transitions. [2022-02-20 23:48:38,839 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:38,839 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:38,839 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:38,839 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:38,839 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 85 states, 54 states have (on average 1.7407407407407407) internal successors, (94), 84 states have internal predecessors, (94), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,842 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 85 states to 85 states and 94 transitions. [2022-02-20 23:48:38,842 INFO L78 Accepts]: Start accepts. Automaton has 85 states and 94 transitions. Word has length 5 [2022-02-20 23:48:38,842 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:38,842 INFO L470 AbstractCegarLoop]: Abstraction has 85 states and 94 transitions. [2022-02-20 23:48:38,842 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,843 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 94 transitions. [2022-02-20 23:48:38,843 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 6 [2022-02-20 23:48:38,843 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:38,843 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1] [2022-02-20 23:48:38,843 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-02-20 23:48:38,843 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr3REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 40 more)] === [2022-02-20 23:48:38,844 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:38,844 INFO L85 PathProgramCache]: Analyzing trace with hash 28694728, now seen corresponding path program 1 times [2022-02-20 23:48:38,844 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:38,844 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [670042814] [2022-02-20 23:48:38,845 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:38,845 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:38,861 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:38,885 INFO L290 TraceCheckUtils]: 0: Hoare triple {1347#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(16, 2);~c~0 := 0; {1347#true} is VALID [2022-02-20 23:48:38,886 INFO L290 TraceCheckUtils]: 1: Hoare triple {1347#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post12#1, main_#t~nondet11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~post18#1, main_~next~0#1.base, main_~next~0#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~post22#1, main_~next~1#1.base, main_~next~1#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset, main_~length~0#1;call main_~#list~0#1.base, main_~#list~0#1.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, main_~#list~0#1.base, main_~#list~0#1.offset, 4);main_~length~0#1 := 0; {1347#true} is VALID [2022-02-20 23:48:38,887 INFO L290 TraceCheckUtils]: 2: Hoare triple {1347#true} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := 1 + append_#t~post3#1;havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {1349#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= (+ (select |#length| |ULTIMATE.start_append_~item~0#1.base|) (- 8)) 0))} is VALID [2022-02-20 23:48:38,888 INFO L290 TraceCheckUtils]: 3: Hoare triple {1349#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= (+ (select |#length| |ULTIMATE.start_append_~item~0#1.base|) (- 8)) 0))} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L533 {1349#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= (+ (select |#length| |ULTIMATE.start_append_~item~0#1.base|) (- 8)) 0))} is VALID [2022-02-20 23:48:38,888 INFO L290 TraceCheckUtils]: 4: Hoare triple {1349#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= (+ (select |#length| |ULTIMATE.start_append_~item~0#1.base|) (- 8)) 0))} assume !(4 + append_~item~0#1.offset <= #length[append_~item~0#1.base] && 0 <= append_~item~0#1.offset); {1348#false} is VALID [2022-02-20 23:48:38,889 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:38,889 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:38,889 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [670042814] [2022-02-20 23:48:38,889 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [670042814] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:38,889 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:38,890 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:48:38,890 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1664143576] [2022-02-20 23:48:38,890 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:38,890 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 5 [2022-02-20 23:48:38,891 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:38,891 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,897 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 5 edges. 5 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:38,897 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:48:38,897 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:38,898 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:48:38,898 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:48:38,898 INFO L87 Difference]: Start difference. First operand 85 states and 94 transitions. Second operand has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:39,007 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:39,008 INFO L93 Difference]: Finished difference Result 82 states and 91 transitions. [2022-02-20 23:48:39,008 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:48:39,008 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 5 [2022-02-20 23:48:39,009 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:39,009 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:39,010 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 81 transitions. [2022-02-20 23:48:39,010 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:39,011 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 81 transitions. [2022-02-20 23:48:39,012 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 81 transitions. [2022-02-20 23:48:39,084 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 81 edges. 81 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:39,086 INFO L225 Difference]: With dead ends: 82 [2022-02-20 23:48:39,086 INFO L226 Difference]: Without dead ends: 82 [2022-02-20 23:48:39,086 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:48:39,088 INFO L933 BasicCegarLoop]: 48 mSDtfsCounter, 71 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 31 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 71 SdHoareTripleChecker+Valid, 48 SdHoareTripleChecker+Invalid, 35 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 31 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:39,088 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [71 Valid, 48 Invalid, 35 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 31 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:48:39,089 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 82 states. [2022-02-20 23:48:39,092 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 82 to 81. [2022-02-20 23:48:39,092 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:39,092 INFO L82 GeneralOperation]: Start isEquivalent. First operand 82 states. Second operand has 81 states, 54 states have (on average 1.6666666666666667) internal successors, (90), 80 states have internal predecessors, (90), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:39,093 INFO L74 IsIncluded]: Start isIncluded. First operand 82 states. Second operand has 81 states, 54 states have (on average 1.6666666666666667) internal successors, (90), 80 states have internal predecessors, (90), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:39,093 INFO L87 Difference]: Start difference. First operand 82 states. Second operand has 81 states, 54 states have (on average 1.6666666666666667) internal successors, (90), 80 states have internal predecessors, (90), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:39,097 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:39,098 INFO L93 Difference]: Finished difference Result 82 states and 91 transitions. [2022-02-20 23:48:39,098 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 91 transitions. [2022-02-20 23:48:39,098 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:39,099 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:39,099 INFO L74 IsIncluded]: Start isIncluded. First operand has 81 states, 54 states have (on average 1.6666666666666667) internal successors, (90), 80 states have internal predecessors, (90), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 82 states. [2022-02-20 23:48:39,099 INFO L87 Difference]: Start difference. First operand has 81 states, 54 states have (on average 1.6666666666666667) internal successors, (90), 80 states have internal predecessors, (90), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 82 states. [2022-02-20 23:48:39,101 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:39,102 INFO L93 Difference]: Finished difference Result 82 states and 91 transitions. [2022-02-20 23:48:39,102 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 91 transitions. [2022-02-20 23:48:39,102 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:39,102 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:39,102 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:39,102 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:39,103 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 81 states, 54 states have (on average 1.6666666666666667) internal successors, (90), 80 states have internal predecessors, (90), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:39,105 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 81 states to 81 states and 90 transitions. [2022-02-20 23:48:39,105 INFO L78 Accepts]: Start accepts. Automaton has 81 states and 90 transitions. Word has length 5 [2022-02-20 23:48:39,105 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:39,105 INFO L470 AbstractCegarLoop]: Abstraction has 81 states and 90 transitions. [2022-02-20 23:48:39,105 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:39,106 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 90 transitions. [2022-02-20 23:48:39,106 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 11 [2022-02-20 23:48:39,106 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:39,106 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:39,106 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-02-20 23:48:39,107 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr8REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 40 more)] === [2022-02-20 23:48:39,107 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:39,108 INFO L85 PathProgramCache]: Analyzing trace with hash -1328641136, now seen corresponding path program 1 times [2022-02-20 23:48:39,108 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:39,108 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1674557616] [2022-02-20 23:48:39,108 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:39,108 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:39,151 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:39,246 INFO L290 TraceCheckUtils]: 0: Hoare triple {1679#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(16, 2);~c~0 := 0; {1679#true} is VALID [2022-02-20 23:48:39,247 INFO L290 TraceCheckUtils]: 1: Hoare triple {1679#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post12#1, main_#t~nondet11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~post18#1, main_~next~0#1.base, main_~next~0#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~post22#1, main_~next~1#1.base, main_~next~1#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset, main_~length~0#1;call main_~#list~0#1.base, main_~#list~0#1.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, main_~#list~0#1.base, main_~#list~0#1.offset, 4);main_~length~0#1 := 0; {1681#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0))} is VALID [2022-02-20 23:48:39,248 INFO L290 TraceCheckUtils]: 2: Hoare triple {1681#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0))} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := 1 + append_#t~post3#1;havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {1682#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) 0))} is VALID [2022-02-20 23:48:39,249 INFO L290 TraceCheckUtils]: 3: Hoare triple {1682#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) 0))} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L533 {1683#(and (= |ULTIMATE.start_append_#t~mem5#1.offset| 0) (= |ULTIMATE.start_append_#t~mem5#1.base| 0))} is VALID [2022-02-20 23:48:39,251 INFO L290 TraceCheckUtils]: 4: Hoare triple {1683#(and (= |ULTIMATE.start_append_#t~mem5#1.offset| 0) (= |ULTIMATE.start_append_#t~mem5#1.base| 0))} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L533-1 {1684#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) 0))} is VALID [2022-02-20 23:48:39,252 INFO L290 TraceCheckUtils]: 5: Hoare triple {1684#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) 0))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {1684#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) 0))} is VALID [2022-02-20 23:48:39,252 INFO L290 TraceCheckUtils]: 6: Hoare triple {1684#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) 0))} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L534 {1685#(and (= |ULTIMATE.start_append_#t~mem6#1.base| 0) (= |ULTIMATE.start_append_#t~mem6#1.offset| 0))} is VALID [2022-02-20 23:48:39,253 INFO L290 TraceCheckUtils]: 7: Hoare triple {1685#(and (= |ULTIMATE.start_append_#t~mem6#1.base| 0) (= |ULTIMATE.start_append_#t~mem6#1.offset| 0))} assume append_#t~mem6#1.base != 0 || append_#t~mem6#1.offset != 0; {1680#false} is VALID [2022-02-20 23:48:39,253 INFO L290 TraceCheckUtils]: 8: Hoare triple {1680#false} SUMMARY for call append_#t~mem7#1.base, append_#t~mem7#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L535 {1680#false} is VALID [2022-02-20 23:48:39,253 INFO L290 TraceCheckUtils]: 9: Hoare triple {1680#false} assume !(1 == #valid[append_#t~mem7#1.base]); {1680#false} is VALID [2022-02-20 23:48:39,254 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:39,254 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:39,254 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1674557616] [2022-02-20 23:48:39,254 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1674557616] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:39,255 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:39,255 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-20 23:48:39,255 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1754344838] [2022-02-20 23:48:39,255 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:39,256 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 1.4285714285714286) internal successors, (10), 7 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 10 [2022-02-20 23:48:39,256 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:39,256 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 1.4285714285714286) internal successors, (10), 7 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:39,265 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 10 edges. 10 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:39,266 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 23:48:39,266 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:39,266 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 23:48:39,267 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:48:39,267 INFO L87 Difference]: Start difference. First operand 81 states and 90 transitions. Second operand has 7 states, 7 states have (on average 1.4285714285714286) internal successors, (10), 7 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:39,696 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:39,696 INFO L93 Difference]: Finished difference Result 92 states and 101 transitions. [2022-02-20 23:48:39,696 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-02-20 23:48:39,696 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 1.4285714285714286) internal successors, (10), 7 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 10 [2022-02-20 23:48:39,697 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:39,697 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 1.4285714285714286) internal successors, (10), 7 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:39,698 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 88 transitions. [2022-02-20 23:48:39,698 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 1.4285714285714286) internal successors, (10), 7 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:39,699 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 88 transitions. [2022-02-20 23:48:39,700 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 88 transitions. [2022-02-20 23:48:39,771 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 88 edges. 88 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:39,772 INFO L225 Difference]: With dead ends: 92 [2022-02-20 23:48:39,772 INFO L226 Difference]: Without dead ends: 92 [2022-02-20 23:48:39,773 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 13 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=49, Invalid=107, Unknown=0, NotChecked=0, Total=156 [2022-02-20 23:48:39,774 INFO L933 BasicCegarLoop]: 69 mSDtfsCounter, 14 mSDsluCounter, 297 mSDsCounter, 0 mSdLazyCounter, 88 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 366 SdHoareTripleChecker+Invalid, 94 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 88 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:39,774 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 366 Invalid, 94 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 88 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:48:39,775 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 92 states. [2022-02-20 23:48:39,778 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 92 to 87. [2022-02-20 23:48:39,778 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:39,778 INFO L82 GeneralOperation]: Start isEquivalent. First operand 92 states. Second operand has 87 states, 60 states have (on average 1.6) internal successors, (96), 86 states have internal predecessors, (96), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:39,778 INFO L74 IsIncluded]: Start isIncluded. First operand 92 states. Second operand has 87 states, 60 states have (on average 1.6) internal successors, (96), 86 states have internal predecessors, (96), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:39,778 INFO L87 Difference]: Start difference. First operand 92 states. Second operand has 87 states, 60 states have (on average 1.6) internal successors, (96), 86 states have internal predecessors, (96), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:39,780 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:39,780 INFO L93 Difference]: Finished difference Result 92 states and 101 transitions. [2022-02-20 23:48:39,781 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 101 transitions. [2022-02-20 23:48:39,781 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:39,781 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:39,781 INFO L74 IsIncluded]: Start isIncluded. First operand has 87 states, 60 states have (on average 1.6) internal successors, (96), 86 states have internal predecessors, (96), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 92 states. [2022-02-20 23:48:39,781 INFO L87 Difference]: Start difference. First operand has 87 states, 60 states have (on average 1.6) internal successors, (96), 86 states have internal predecessors, (96), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 92 states. [2022-02-20 23:48:39,783 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:39,783 INFO L93 Difference]: Finished difference Result 92 states and 101 transitions. [2022-02-20 23:48:39,784 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 101 transitions. [2022-02-20 23:48:39,784 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:39,784 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:39,784 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:39,784 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:39,784 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 87 states, 60 states have (on average 1.6) internal successors, (96), 86 states have internal predecessors, (96), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:39,786 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 87 states to 87 states and 96 transitions. [2022-02-20 23:48:39,786 INFO L78 Accepts]: Start accepts. Automaton has 87 states and 96 transitions. Word has length 10 [2022-02-20 23:48:39,786 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:39,787 INFO L470 AbstractCegarLoop]: Abstraction has 87 states and 96 transitions. [2022-02-20 23:48:39,787 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 1.4285714285714286) internal successors, (10), 7 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:39,787 INFO L276 IsEmpty]: Start isEmpty. Operand 87 states and 96 transitions. [2022-02-20 23:48:39,787 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-02-20 23:48:39,787 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:39,787 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:39,788 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2022-02-20 23:48:39,788 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr23REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 40 more)] === [2022-02-20 23:48:39,788 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:39,788 INFO L85 PathProgramCache]: Analyzing trace with hash 2075089492, now seen corresponding path program 1 times [2022-02-20 23:48:39,788 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:39,789 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1866389928] [2022-02-20 23:48:39,789 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:39,789 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:39,820 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:39,913 INFO L290 TraceCheckUtils]: 0: Hoare triple {2063#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(16, 2);~c~0 := 0; {2063#true} is VALID [2022-02-20 23:48:39,914 INFO L290 TraceCheckUtils]: 1: Hoare triple {2063#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post12#1, main_#t~nondet11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~post18#1, main_~next~0#1.base, main_~next~0#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~post22#1, main_~next~1#1.base, main_~next~1#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset, main_~length~0#1;call main_~#list~0#1.base, main_~#list~0#1.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, main_~#list~0#1.base, main_~#list~0#1.offset, 4);main_~length~0#1 := 0; {2063#true} is VALID [2022-02-20 23:48:39,914 INFO L290 TraceCheckUtils]: 2: Hoare triple {2063#true} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := 1 + append_#t~post3#1;havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {2065#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:39,915 INFO L290 TraceCheckUtils]: 3: Hoare triple {2065#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L533 {2065#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:39,916 INFO L290 TraceCheckUtils]: 4: Hoare triple {2065#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L533-1 {2065#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:39,916 INFO L290 TraceCheckUtils]: 5: Hoare triple {2065#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {2065#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:39,917 INFO L290 TraceCheckUtils]: 6: Hoare triple {2065#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L534 {2065#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:39,917 INFO L290 TraceCheckUtils]: 7: Hoare triple {2065#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} assume !(append_#t~mem6#1.base != 0 || append_#t~mem6#1.offset != 0);call append_#t~malloc9#1.base, append_#t~malloc9#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite10#1.base, append_#t~ite10#1.offset := append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {2065#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:39,918 INFO L290 TraceCheckUtils]: 8: Hoare triple {2065#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_#t~ite10#1.base, append_#t~ite10#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L534-3 {2066#(and (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) 1) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:39,919 INFO L290 TraceCheckUtils]: 9: Hoare triple {2066#(and (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) 1) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~ite10#1.base, append_#t~ite10#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~mem8#1.base, append_#t~mem8#1.offset;havoc append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {2066#(and (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) 1) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:39,920 INFO L290 TraceCheckUtils]: 10: Hoare triple {2066#(and (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) 1) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L537 {2067#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1)} is VALID [2022-02-20 23:48:39,920 INFO L290 TraceCheckUtils]: 11: Hoare triple {2067#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1)} assume { :end_inline_append } true;main_#t~post12#1 := main_~length~0#1;main_~length~0#1 := 1 + main_#t~post12#1;havoc main_#t~post12#1; {2067#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1)} is VALID [2022-02-20 23:48:39,921 INFO L290 TraceCheckUtils]: 12: Hoare triple {2067#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1)} assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647; {2067#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1)} is VALID [2022-02-20 23:48:39,921 INFO L290 TraceCheckUtils]: 13: Hoare triple {2067#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1)} assume !(0 != main_#t~nondet11#1 && ~c~0 < 20);havoc main_#t~nondet11#1; {2067#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1)} is VALID [2022-02-20 23:48:39,921 INFO L290 TraceCheckUtils]: 14: Hoare triple {2067#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1)} assume main_~length~0#1 > 0; {2067#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1)} is VALID [2022-02-20 23:48:39,922 INFO L290 TraceCheckUtils]: 15: Hoare triple {2067#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1)} assume !(main_~length~0#1 < 0); {2067#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1)} is VALID [2022-02-20 23:48:39,922 INFO L290 TraceCheckUtils]: 16: Hoare triple {2067#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1)} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L548-2 {2068#(= (select |#valid| |ULTIMATE.start_main_#t~mem15#1.base|) 1)} is VALID [2022-02-20 23:48:39,923 INFO L290 TraceCheckUtils]: 17: Hoare triple {2068#(= (select |#valid| |ULTIMATE.start_main_#t~mem15#1.base|) 1)} assume !(1 == #valid[main_#t~mem15#1.base]); {2064#false} is VALID [2022-02-20 23:48:39,923 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:39,923 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:39,923 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1866389928] [2022-02-20 23:48:39,923 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1866389928] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:39,924 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:39,924 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:48:39,924 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [912886229] [2022-02-20 23:48:39,924 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:39,924 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 3.6) internal successors, (18), 6 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 18 [2022-02-20 23:48:39,925 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:39,925 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 3.6) internal successors, (18), 6 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:39,939 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:39,939 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:48:39,939 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:39,940 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:48:39,940 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:48:39,940 INFO L87 Difference]: Start difference. First operand 87 states and 96 transitions. Second operand has 6 states, 5 states have (on average 3.6) internal successors, (18), 6 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:40,310 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:40,310 INFO L93 Difference]: Finished difference Result 103 states and 108 transitions. [2022-02-20 23:48:40,310 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:48:40,311 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 3.6) internal successors, (18), 6 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 18 [2022-02-20 23:48:40,311 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:40,311 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 3.6) internal successors, (18), 6 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:40,312 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 106 transitions. [2022-02-20 23:48:40,313 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 3.6) internal successors, (18), 6 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:40,314 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 106 transitions. [2022-02-20 23:48:40,314 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 106 transitions. [2022-02-20 23:48:40,417 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 106 edges. 106 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:40,418 INFO L225 Difference]: With dead ends: 103 [2022-02-20 23:48:40,418 INFO L226 Difference]: Without dead ends: 103 [2022-02-20 23:48:40,418 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 8 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=27, Invalid=45, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:48:40,419 INFO L933 BasicCegarLoop]: 38 mSDtfsCounter, 177 mSDsluCounter, 71 mSDsCounter, 0 mSdLazyCounter, 151 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 177 SdHoareTripleChecker+Valid, 109 SdHoareTripleChecker+Invalid, 158 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 151 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:40,420 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [177 Valid, 109 Invalid, 158 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 151 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:48:40,420 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 103 states. [2022-02-20 23:48:40,423 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 103 to 87. [2022-02-20 23:48:40,423 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:40,423 INFO L82 GeneralOperation]: Start isEquivalent. First operand 103 states. Second operand has 87 states, 60 states have (on average 1.5833333333333333) internal successors, (95), 86 states have internal predecessors, (95), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:40,423 INFO L74 IsIncluded]: Start isIncluded. First operand 103 states. Second operand has 87 states, 60 states have (on average 1.5833333333333333) internal successors, (95), 86 states have internal predecessors, (95), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:40,424 INFO L87 Difference]: Start difference. First operand 103 states. Second operand has 87 states, 60 states have (on average 1.5833333333333333) internal successors, (95), 86 states have internal predecessors, (95), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:40,426 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:40,426 INFO L93 Difference]: Finished difference Result 103 states and 108 transitions. [2022-02-20 23:48:40,426 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 108 transitions. [2022-02-20 23:48:40,426 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:40,426 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:40,427 INFO L74 IsIncluded]: Start isIncluded. First operand has 87 states, 60 states have (on average 1.5833333333333333) internal successors, (95), 86 states have internal predecessors, (95), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 103 states. [2022-02-20 23:48:40,427 INFO L87 Difference]: Start difference. First operand has 87 states, 60 states have (on average 1.5833333333333333) internal successors, (95), 86 states have internal predecessors, (95), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 103 states. [2022-02-20 23:48:40,429 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:40,429 INFO L93 Difference]: Finished difference Result 103 states and 108 transitions. [2022-02-20 23:48:40,429 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 108 transitions. [2022-02-20 23:48:40,429 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:40,429 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:40,429 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:40,429 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:40,430 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 87 states, 60 states have (on average 1.5833333333333333) internal successors, (95), 86 states have internal predecessors, (95), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:40,431 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 87 states to 87 states and 95 transitions. [2022-02-20 23:48:40,431 INFO L78 Accepts]: Start accepts. Automaton has 87 states and 95 transitions. Word has length 18 [2022-02-20 23:48:40,431 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:40,432 INFO L470 AbstractCegarLoop]: Abstraction has 87 states and 95 transitions. [2022-02-20 23:48:40,432 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 3.6) internal successors, (18), 6 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:40,432 INFO L276 IsEmpty]: Start isEmpty. Operand 87 states and 95 transitions. [2022-02-20 23:48:40,432 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-02-20 23:48:40,432 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:40,432 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:40,433 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2022-02-20 23:48:40,433 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr24REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 40 more)] === [2022-02-20 23:48:40,433 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:40,433 INFO L85 PathProgramCache]: Analyzing trace with hash 2075089493, now seen corresponding path program 1 times [2022-02-20 23:48:40,433 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:40,434 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1473251865] [2022-02-20 23:48:40,434 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:40,434 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:40,474 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:40,566 INFO L290 TraceCheckUtils]: 0: Hoare triple {2473#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(16, 2);~c~0 := 0; {2473#true} is VALID [2022-02-20 23:48:40,566 INFO L290 TraceCheckUtils]: 1: Hoare triple {2473#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post12#1, main_#t~nondet11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~post18#1, main_~next~0#1.base, main_~next~0#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~post22#1, main_~next~1#1.base, main_~next~1#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset, main_~length~0#1;call main_~#list~0#1.base, main_~#list~0#1.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, main_~#list~0#1.base, main_~#list~0#1.offset, 4);main_~length~0#1 := 0; {2473#true} is VALID [2022-02-20 23:48:40,567 INFO L290 TraceCheckUtils]: 2: Hoare triple {2473#true} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := 1 + append_#t~post3#1;havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {2475#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:40,567 INFO L290 TraceCheckUtils]: 3: Hoare triple {2475#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L533 {2475#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:40,568 INFO L290 TraceCheckUtils]: 4: Hoare triple {2475#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L533-1 {2475#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:40,569 INFO L290 TraceCheckUtils]: 5: Hoare triple {2475#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {2475#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:40,570 INFO L290 TraceCheckUtils]: 6: Hoare triple {2475#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L534 {2475#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:40,570 INFO L290 TraceCheckUtils]: 7: Hoare triple {2475#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} assume !(append_#t~mem6#1.base != 0 || append_#t~mem6#1.offset != 0);call append_#t~malloc9#1.base, append_#t~malloc9#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite10#1.base, append_#t~ite10#1.offset := append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {2475#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:40,571 INFO L290 TraceCheckUtils]: 8: Hoare triple {2475#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_#t~ite10#1.base, append_#t~ite10#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L534-3 {2476#(and (<= (+ |ULTIMATE.start_append_~item~0#1.offset| 8) (select |#length| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:40,572 INFO L290 TraceCheckUtils]: 9: Hoare triple {2476#(and (<= (+ |ULTIMATE.start_append_~item~0#1.offset| 8) (select |#length| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~ite10#1.base, append_#t~ite10#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~mem8#1.base, append_#t~mem8#1.offset;havoc append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {2476#(and (<= (+ |ULTIMATE.start_append_~item~0#1.offset| 8) (select |#length| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:40,573 INFO L290 TraceCheckUtils]: 10: Hoare triple {2476#(and (<= (+ |ULTIMATE.start_append_~item~0#1.offset| 8) (select |#length| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L537 {2477#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0))} is VALID [2022-02-20 23:48:40,574 INFO L290 TraceCheckUtils]: 11: Hoare triple {2477#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0))} assume { :end_inline_append } true;main_#t~post12#1 := main_~length~0#1;main_~length~0#1 := 1 + main_#t~post12#1;havoc main_#t~post12#1; {2477#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0))} is VALID [2022-02-20 23:48:40,574 INFO L290 TraceCheckUtils]: 12: Hoare triple {2477#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0))} assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647; {2477#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0))} is VALID [2022-02-20 23:48:40,575 INFO L290 TraceCheckUtils]: 13: Hoare triple {2477#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0))} assume !(0 != main_#t~nondet11#1 && ~c~0 < 20);havoc main_#t~nondet11#1; {2477#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0))} is VALID [2022-02-20 23:48:40,575 INFO L290 TraceCheckUtils]: 14: Hoare triple {2477#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0))} assume main_~length~0#1 > 0; {2477#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0))} is VALID [2022-02-20 23:48:40,576 INFO L290 TraceCheckUtils]: 15: Hoare triple {2477#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0))} assume !(main_~length~0#1 < 0); {2477#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0))} is VALID [2022-02-20 23:48:40,577 INFO L290 TraceCheckUtils]: 16: Hoare triple {2477#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0))} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L548-2 {2478#(and (= |ULTIMATE.start_main_#t~mem15#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_main_#t~mem15#1.base|)))} is VALID [2022-02-20 23:48:40,577 INFO L290 TraceCheckUtils]: 17: Hoare triple {2478#(and (= |ULTIMATE.start_main_#t~mem15#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_main_#t~mem15#1.base|)))} assume !(4 + main_#t~mem15#1.offset <= #length[main_#t~mem15#1.base] && 0 <= main_#t~mem15#1.offset); {2474#false} is VALID [2022-02-20 23:48:40,578 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:40,578 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:40,578 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1473251865] [2022-02-20 23:48:40,578 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1473251865] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:40,579 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:40,579 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:48:40,579 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [982733772] [2022-02-20 23:48:40,579 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:40,579 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 3.6) internal successors, (18), 6 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 18 [2022-02-20 23:48:40,580 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:40,580 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 3.6) internal successors, (18), 6 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:40,596 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:40,597 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:48:40,597 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:40,597 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:48:40,597 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:48:40,598 INFO L87 Difference]: Start difference. First operand 87 states and 95 transitions. Second operand has 6 states, 5 states have (on average 3.6) internal successors, (18), 6 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:40,971 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:40,971 INFO L93 Difference]: Finished difference Result 98 states and 103 transitions. [2022-02-20 23:48:40,971 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:48:40,972 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 3.6) internal successors, (18), 6 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 18 [2022-02-20 23:48:40,972 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:40,972 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 3.6) internal successors, (18), 6 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:40,973 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 97 transitions. [2022-02-20 23:48:40,973 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 3.6) internal successors, (18), 6 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:40,974 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 97 transitions. [2022-02-20 23:48:40,974 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 97 transitions. [2022-02-20 23:48:41,072 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 97 edges. 97 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:41,074 INFO L225 Difference]: With dead ends: 98 [2022-02-20 23:48:41,074 INFO L226 Difference]: Without dead ends: 98 [2022-02-20 23:48:41,074 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=22, Invalid=34, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:48:41,075 INFO L933 BasicCegarLoop]: 43 mSDtfsCounter, 132 mSDsluCounter, 60 mSDsCounter, 0 mSdLazyCounter, 99 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 132 SdHoareTripleChecker+Valid, 103 SdHoareTripleChecker+Invalid, 104 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 99 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:41,075 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [132 Valid, 103 Invalid, 104 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 99 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:48:41,076 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 98 states. [2022-02-20 23:48:41,078 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 98 to 86. [2022-02-20 23:48:41,078 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:41,078 INFO L82 GeneralOperation]: Start isEquivalent. First operand 98 states. Second operand has 86 states, 60 states have (on average 1.55) internal successors, (93), 85 states have internal predecessors, (93), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,079 INFO L74 IsIncluded]: Start isIncluded. First operand 98 states. Second operand has 86 states, 60 states have (on average 1.55) internal successors, (93), 85 states have internal predecessors, (93), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,079 INFO L87 Difference]: Start difference. First operand 98 states. Second operand has 86 states, 60 states have (on average 1.55) internal successors, (93), 85 states have internal predecessors, (93), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,081 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:41,081 INFO L93 Difference]: Finished difference Result 98 states and 103 transitions. [2022-02-20 23:48:41,082 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 103 transitions. [2022-02-20 23:48:41,082 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:41,082 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:41,082 INFO L74 IsIncluded]: Start isIncluded. First operand has 86 states, 60 states have (on average 1.55) internal successors, (93), 85 states have internal predecessors, (93), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 98 states. [2022-02-20 23:48:41,082 INFO L87 Difference]: Start difference. First operand has 86 states, 60 states have (on average 1.55) internal successors, (93), 85 states have internal predecessors, (93), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 98 states. [2022-02-20 23:48:41,084 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:41,085 INFO L93 Difference]: Finished difference Result 98 states and 103 transitions. [2022-02-20 23:48:41,085 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 103 transitions. [2022-02-20 23:48:41,085 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:41,085 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:41,085 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:41,085 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:41,086 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 86 states, 60 states have (on average 1.55) internal successors, (93), 85 states have internal predecessors, (93), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,087 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 86 states to 86 states and 93 transitions. [2022-02-20 23:48:41,088 INFO L78 Accepts]: Start accepts. Automaton has 86 states and 93 transitions. Word has length 18 [2022-02-20 23:48:41,088 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:41,088 INFO L470 AbstractCegarLoop]: Abstraction has 86 states and 93 transitions. [2022-02-20 23:48:41,088 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 3.6) internal successors, (18), 6 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,088 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 93 transitions. [2022-02-20 23:48:41,089 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-02-20 23:48:41,089 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:41,089 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:41,089 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2022-02-20 23:48:41,089 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr16REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 40 more)] === [2022-02-20 23:48:41,090 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:41,090 INFO L85 PathProgramCache]: Analyzing trace with hash 2075075558, now seen corresponding path program 1 times [2022-02-20 23:48:41,090 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:41,090 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1417599704] [2022-02-20 23:48:41,090 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:41,091 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:41,143 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:41,177 INFO L290 TraceCheckUtils]: 0: Hoare triple {2865#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(16, 2);~c~0 := 0; {2865#true} is VALID [2022-02-20 23:48:41,178 INFO L290 TraceCheckUtils]: 1: Hoare triple {2865#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post12#1, main_#t~nondet11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~post18#1, main_~next~0#1.base, main_~next~0#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~post22#1, main_~next~1#1.base, main_~next~1#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset, main_~length~0#1;call main_~#list~0#1.base, main_~#list~0#1.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, main_~#list~0#1.base, main_~#list~0#1.offset, 4);main_~length~0#1 := 0; {2865#true} is VALID [2022-02-20 23:48:41,178 INFO L290 TraceCheckUtils]: 2: Hoare triple {2865#true} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := 1 + append_#t~post3#1;havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {2865#true} is VALID [2022-02-20 23:48:41,178 INFO L290 TraceCheckUtils]: 3: Hoare triple {2865#true} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L533 {2865#true} is VALID [2022-02-20 23:48:41,178 INFO L290 TraceCheckUtils]: 4: Hoare triple {2865#true} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L533-1 {2865#true} is VALID [2022-02-20 23:48:41,178 INFO L290 TraceCheckUtils]: 5: Hoare triple {2865#true} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {2865#true} is VALID [2022-02-20 23:48:41,178 INFO L290 TraceCheckUtils]: 6: Hoare triple {2865#true} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L534 {2865#true} is VALID [2022-02-20 23:48:41,178 INFO L290 TraceCheckUtils]: 7: Hoare triple {2865#true} assume !(append_#t~mem6#1.base != 0 || append_#t~mem6#1.offset != 0);call append_#t~malloc9#1.base, append_#t~malloc9#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite10#1.base, append_#t~ite10#1.offset := append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {2865#true} is VALID [2022-02-20 23:48:41,179 INFO L290 TraceCheckUtils]: 8: Hoare triple {2865#true} SUMMARY for call write~$Pointer$(append_#t~ite10#1.base, append_#t~ite10#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L534-3 {2865#true} is VALID [2022-02-20 23:48:41,179 INFO L290 TraceCheckUtils]: 9: Hoare triple {2865#true} havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~ite10#1.base, append_#t~ite10#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~mem8#1.base, append_#t~mem8#1.offset;havoc append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {2865#true} is VALID [2022-02-20 23:48:41,179 INFO L290 TraceCheckUtils]: 10: Hoare triple {2865#true} SUMMARY for call write~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L537 {2865#true} is VALID [2022-02-20 23:48:41,179 INFO L290 TraceCheckUtils]: 11: Hoare triple {2865#true} assume { :end_inline_append } true;main_#t~post12#1 := main_~length~0#1;main_~length~0#1 := 1 + main_#t~post12#1;havoc main_#t~post12#1; {2865#true} is VALID [2022-02-20 23:48:41,179 INFO L290 TraceCheckUtils]: 12: Hoare triple {2865#true} assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647; {2865#true} is VALID [2022-02-20 23:48:41,179 INFO L290 TraceCheckUtils]: 13: Hoare triple {2865#true} assume !(0 != main_#t~nondet11#1 && ~c~0 < 20);havoc main_#t~nondet11#1; {2865#true} is VALID [2022-02-20 23:48:41,180 INFO L290 TraceCheckUtils]: 14: Hoare triple {2865#true} assume main_~length~0#1 > 0; {2867#(<= 1 |ULTIMATE.start_main_~length~0#1|)} is VALID [2022-02-20 23:48:41,180 INFO L290 TraceCheckUtils]: 15: Hoare triple {2867#(<= 1 |ULTIMATE.start_main_~length~0#1|)} assume main_~length~0#1 < 0; {2866#false} is VALID [2022-02-20 23:48:41,181 INFO L290 TraceCheckUtils]: 16: Hoare triple {2866#false} SUMMARY for call main_#t~mem13#1.base, main_#t~mem13#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L549 {2866#false} is VALID [2022-02-20 23:48:41,181 INFO L290 TraceCheckUtils]: 17: Hoare triple {2866#false} assume !(1 == #valid[main_#t~mem13#1.base]); {2866#false} is VALID [2022-02-20 23:48:41,181 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:41,181 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:41,181 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1417599704] [2022-02-20 23:48:41,181 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1417599704] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:41,181 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:41,181 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:48:41,181 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1078438361] [2022-02-20 23:48:41,182 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:41,182 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 6.0) internal successors, (18), 3 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 18 [2022-02-20 23:48:41,182 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:41,182 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 6.0) internal successors, (18), 3 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,195 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:41,195 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:48:41,195 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:41,196 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:48:41,196 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:48:41,196 INFO L87 Difference]: Start difference. First operand 86 states and 93 transitions. Second operand has 3 states, 3 states have (on average 6.0) internal successors, (18), 3 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,273 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:41,273 INFO L93 Difference]: Finished difference Result 68 states and 74 transitions. [2022-02-20 23:48:41,273 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:48:41,273 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 6.0) internal successors, (18), 3 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 18 [2022-02-20 23:48:41,273 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:41,274 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 6.0) internal successors, (18), 3 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,274 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 61 transitions. [2022-02-20 23:48:41,274 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 6.0) internal successors, (18), 3 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,275 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 61 transitions. [2022-02-20 23:48:41,275 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 61 transitions. [2022-02-20 23:48:41,320 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:41,321 INFO L225 Difference]: With dead ends: 68 [2022-02-20 23:48:41,321 INFO L226 Difference]: Without dead ends: 68 [2022-02-20 23:48:41,321 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:48:41,322 INFO L933 BasicCegarLoop]: 57 mSDtfsCounter, 31 mSDsluCounter, 21 mSDsCounter, 0 mSdLazyCounter, 9 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 31 SdHoareTripleChecker+Valid, 78 SdHoareTripleChecker+Invalid, 10 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 9 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:41,322 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [31 Valid, 78 Invalid, 10 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 9 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:48:41,323 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 68 states. [2022-02-20 23:48:41,325 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 68 to 68. [2022-02-20 23:48:41,325 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:41,325 INFO L82 GeneralOperation]: Start isEquivalent. First operand 68 states. Second operand has 68 states, 51 states have (on average 1.4509803921568627) internal successors, (74), 67 states have internal predecessors, (74), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,325 INFO L74 IsIncluded]: Start isIncluded. First operand 68 states. Second operand has 68 states, 51 states have (on average 1.4509803921568627) internal successors, (74), 67 states have internal predecessors, (74), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,325 INFO L87 Difference]: Start difference. First operand 68 states. Second operand has 68 states, 51 states have (on average 1.4509803921568627) internal successors, (74), 67 states have internal predecessors, (74), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,327 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:41,327 INFO L93 Difference]: Finished difference Result 68 states and 74 transitions. [2022-02-20 23:48:41,327 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 74 transitions. [2022-02-20 23:48:41,327 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:41,327 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:41,327 INFO L74 IsIncluded]: Start isIncluded. First operand has 68 states, 51 states have (on average 1.4509803921568627) internal successors, (74), 67 states have internal predecessors, (74), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 68 states. [2022-02-20 23:48:41,327 INFO L87 Difference]: Start difference. First operand has 68 states, 51 states have (on average 1.4509803921568627) internal successors, (74), 67 states have internal predecessors, (74), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 68 states. [2022-02-20 23:48:41,334 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:41,335 INFO L93 Difference]: Finished difference Result 68 states and 74 transitions. [2022-02-20 23:48:41,335 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 74 transitions. [2022-02-20 23:48:41,335 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:41,335 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:41,335 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:41,335 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:41,335 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 68 states, 51 states have (on average 1.4509803921568627) internal successors, (74), 67 states have internal predecessors, (74), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,337 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 74 transitions. [2022-02-20 23:48:41,337 INFO L78 Accepts]: Start accepts. Automaton has 68 states and 74 transitions. Word has length 18 [2022-02-20 23:48:41,337 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:41,337 INFO L470 AbstractCegarLoop]: Abstraction has 68 states and 74 transitions. [2022-02-20 23:48:41,337 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 6.0) internal successors, (18), 3 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,337 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 74 transitions. [2022-02-20 23:48:41,338 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-02-20 23:48:41,338 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:41,338 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:41,338 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7 [2022-02-20 23:48:41,338 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting ULTIMATE.startErr43ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 40 more)] === [2022-02-20 23:48:41,338 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:41,339 INFO L85 PathProgramCache]: Analyzing trace with hash 2076311688, now seen corresponding path program 1 times [2022-02-20 23:48:41,339 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:41,339 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2145102001] [2022-02-20 23:48:41,339 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:41,339 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:41,358 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:41,387 INFO L290 TraceCheckUtils]: 0: Hoare triple {3142#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(16, 2);~c~0 := 0; {3142#true} is VALID [2022-02-20 23:48:41,388 INFO L290 TraceCheckUtils]: 1: Hoare triple {3142#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post12#1, main_#t~nondet11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~post18#1, main_~next~0#1.base, main_~next~0#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~post22#1, main_~next~1#1.base, main_~next~1#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset, main_~length~0#1;call main_~#list~0#1.base, main_~#list~0#1.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, main_~#list~0#1.base, main_~#list~0#1.offset, 4);main_~length~0#1 := 0; {3144#(= |ULTIMATE.start_main_~length~0#1| 0)} is VALID [2022-02-20 23:48:41,388 INFO L290 TraceCheckUtils]: 2: Hoare triple {3144#(= |ULTIMATE.start_main_~length~0#1| 0)} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := 1 + append_#t~post3#1;havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {3144#(= |ULTIMATE.start_main_~length~0#1| 0)} is VALID [2022-02-20 23:48:41,389 INFO L290 TraceCheckUtils]: 3: Hoare triple {3144#(= |ULTIMATE.start_main_~length~0#1| 0)} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L533 {3144#(= |ULTIMATE.start_main_~length~0#1| 0)} is VALID [2022-02-20 23:48:41,389 INFO L290 TraceCheckUtils]: 4: Hoare triple {3144#(= |ULTIMATE.start_main_~length~0#1| 0)} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L533-1 {3144#(= |ULTIMATE.start_main_~length~0#1| 0)} is VALID [2022-02-20 23:48:41,389 INFO L290 TraceCheckUtils]: 5: Hoare triple {3144#(= |ULTIMATE.start_main_~length~0#1| 0)} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {3144#(= |ULTIMATE.start_main_~length~0#1| 0)} is VALID [2022-02-20 23:48:41,390 INFO L290 TraceCheckUtils]: 6: Hoare triple {3144#(= |ULTIMATE.start_main_~length~0#1| 0)} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L534 {3144#(= |ULTIMATE.start_main_~length~0#1| 0)} is VALID [2022-02-20 23:48:41,390 INFO L290 TraceCheckUtils]: 7: Hoare triple {3144#(= |ULTIMATE.start_main_~length~0#1| 0)} assume !(append_#t~mem6#1.base != 0 || append_#t~mem6#1.offset != 0);call append_#t~malloc9#1.base, append_#t~malloc9#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite10#1.base, append_#t~ite10#1.offset := append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {3144#(= |ULTIMATE.start_main_~length~0#1| 0)} is VALID [2022-02-20 23:48:41,390 INFO L290 TraceCheckUtils]: 8: Hoare triple {3144#(= |ULTIMATE.start_main_~length~0#1| 0)} SUMMARY for call write~$Pointer$(append_#t~ite10#1.base, append_#t~ite10#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L534-3 {3144#(= |ULTIMATE.start_main_~length~0#1| 0)} is VALID [2022-02-20 23:48:41,391 INFO L290 TraceCheckUtils]: 9: Hoare triple {3144#(= |ULTIMATE.start_main_~length~0#1| 0)} havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~ite10#1.base, append_#t~ite10#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~mem8#1.base, append_#t~mem8#1.offset;havoc append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {3144#(= |ULTIMATE.start_main_~length~0#1| 0)} is VALID [2022-02-20 23:48:41,391 INFO L290 TraceCheckUtils]: 10: Hoare triple {3144#(= |ULTIMATE.start_main_~length~0#1| 0)} SUMMARY for call write~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L537 {3144#(= |ULTIMATE.start_main_~length~0#1| 0)} is VALID [2022-02-20 23:48:41,392 INFO L290 TraceCheckUtils]: 11: Hoare triple {3144#(= |ULTIMATE.start_main_~length~0#1| 0)} assume { :end_inline_append } true;main_#t~post12#1 := main_~length~0#1;main_~length~0#1 := 1 + main_#t~post12#1;havoc main_#t~post12#1; {3145#(<= 1 |ULTIMATE.start_main_~length~0#1|)} is VALID [2022-02-20 23:48:41,392 INFO L290 TraceCheckUtils]: 12: Hoare triple {3145#(<= 1 |ULTIMATE.start_main_~length~0#1|)} assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647; {3145#(<= 1 |ULTIMATE.start_main_~length~0#1|)} is VALID [2022-02-20 23:48:41,392 INFO L290 TraceCheckUtils]: 13: Hoare triple {3145#(<= 1 |ULTIMATE.start_main_~length~0#1|)} assume !(0 != main_#t~nondet11#1 && ~c~0 < 20);havoc main_#t~nondet11#1; {3145#(<= 1 |ULTIMATE.start_main_~length~0#1|)} is VALID [2022-02-20 23:48:41,393 INFO L290 TraceCheckUtils]: 14: Hoare triple {3145#(<= 1 |ULTIMATE.start_main_~length~0#1|)} assume !(main_~length~0#1 > 0); {3143#false} is VALID [2022-02-20 23:48:41,393 INFO L290 TraceCheckUtils]: 15: Hoare triple {3143#false} assume !(main_~length~0#1 > 0); {3143#false} is VALID [2022-02-20 23:48:41,393 INFO L290 TraceCheckUtils]: 16: Hoare triple {3143#false} main_#res#1 := 0;call ULTIMATE.dealloc(main_~#list~0#1.base, main_~#list~0#1.offset);havoc main_~#list~0#1.base, main_~#list~0#1.offset; {3143#false} is VALID [2022-02-20 23:48:41,393 INFO L290 TraceCheckUtils]: 17: Hoare triple {3143#false} assume !(#valid == main_old_#valid#1); {3143#false} is VALID [2022-02-20 23:48:41,393 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:41,394 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:41,394 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2145102001] [2022-02-20 23:48:41,394 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2145102001] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:41,394 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:41,394 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:48:41,394 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1552444755] [2022-02-20 23:48:41,394 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:41,395 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 4.5) internal successors, (18), 4 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 18 [2022-02-20 23:48:41,395 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:41,395 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 4.5) internal successors, (18), 4 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,408 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:41,409 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:48:41,409 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:41,409 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:48:41,409 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:48:41,409 INFO L87 Difference]: Start difference. First operand 68 states and 74 transitions. Second operand has 4 states, 4 states have (on average 4.5) internal successors, (18), 4 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,504 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:41,504 INFO L93 Difference]: Finished difference Result 67 states and 69 transitions. [2022-02-20 23:48:41,504 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:48:41,504 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 4.5) internal successors, (18), 4 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 18 [2022-02-20 23:48:41,505 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:41,505 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 4.5) internal successors, (18), 4 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,505 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 70 transitions. [2022-02-20 23:48:41,506 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 4.5) internal successors, (18), 4 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,506 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 70 transitions. [2022-02-20 23:48:41,506 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 70 transitions. [2022-02-20 23:48:41,570 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:41,571 INFO L225 Difference]: With dead ends: 67 [2022-02-20 23:48:41,571 INFO L226 Difference]: Without dead ends: 67 [2022-02-20 23:48:41,572 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:48:41,574 INFO L933 BasicCegarLoop]: 63 mSDtfsCounter, 48 mSDsluCounter, 63 mSDsCounter, 0 mSdLazyCounter, 18 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 48 SdHoareTripleChecker+Valid, 126 SdHoareTripleChecker+Invalid, 20 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 18 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:41,575 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [48 Valid, 126 Invalid, 20 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 18 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:48:41,576 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 67 states. [2022-02-20 23:48:41,579 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 67 to 63. [2022-02-20 23:48:41,579 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:41,579 INFO L82 GeneralOperation]: Start isEquivalent. First operand 67 states. Second operand has 63 states, 46 states have (on average 1.4130434782608696) internal successors, (65), 62 states have internal predecessors, (65), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,580 INFO L74 IsIncluded]: Start isIncluded. First operand 67 states. Second operand has 63 states, 46 states have (on average 1.4130434782608696) internal successors, (65), 62 states have internal predecessors, (65), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,580 INFO L87 Difference]: Start difference. First operand 67 states. Second operand has 63 states, 46 states have (on average 1.4130434782608696) internal successors, (65), 62 states have internal predecessors, (65), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,581 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:41,581 INFO L93 Difference]: Finished difference Result 67 states and 69 transitions. [2022-02-20 23:48:41,582 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 69 transitions. [2022-02-20 23:48:41,582 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:41,582 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:41,582 INFO L74 IsIncluded]: Start isIncluded. First operand has 63 states, 46 states have (on average 1.4130434782608696) internal successors, (65), 62 states have internal predecessors, (65), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 67 states. [2022-02-20 23:48:41,582 INFO L87 Difference]: Start difference. First operand has 63 states, 46 states have (on average 1.4130434782608696) internal successors, (65), 62 states have internal predecessors, (65), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 67 states. [2022-02-20 23:48:41,583 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:41,583 INFO L93 Difference]: Finished difference Result 67 states and 69 transitions. [2022-02-20 23:48:41,584 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 69 transitions. [2022-02-20 23:48:41,584 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:41,584 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:41,584 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:41,584 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:41,584 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 63 states, 46 states have (on average 1.4130434782608696) internal successors, (65), 62 states have internal predecessors, (65), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,585 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 63 states to 63 states and 65 transitions. [2022-02-20 23:48:41,585 INFO L78 Accepts]: Start accepts. Automaton has 63 states and 65 transitions. Word has length 18 [2022-02-20 23:48:41,586 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:41,586 INFO L470 AbstractCegarLoop]: Abstraction has 63 states and 65 transitions. [2022-02-20 23:48:41,586 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 4.5) internal successors, (18), 4 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,586 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 65 transitions. [2022-02-20 23:48:41,587 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2022-02-20 23:48:41,587 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:41,587 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:41,587 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8 [2022-02-20 23:48:41,587 INFO L402 AbstractCegarLoop]: === Iteration 10 === Targeting ULTIMATE.startErr27ASSERT_VIOLATIONMEMORY_FREE === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 40 more)] === [2022-02-20 23:48:41,588 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:41,588 INFO L85 PathProgramCache]: Analyzing trace with hash 1526810556, now seen corresponding path program 1 times [2022-02-20 23:48:41,588 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:41,588 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1035800718] [2022-02-20 23:48:41,588 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:41,589 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:41,621 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:41,659 INFO L290 TraceCheckUtils]: 0: Hoare triple {3412#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(16, 2);~c~0 := 0; {3412#true} is VALID [2022-02-20 23:48:41,659 INFO L290 TraceCheckUtils]: 1: Hoare triple {3412#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post12#1, main_#t~nondet11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~post18#1, main_~next~0#1.base, main_~next~0#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~post22#1, main_~next~1#1.base, main_~next~1#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset, main_~length~0#1;call main_~#list~0#1.base, main_~#list~0#1.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, main_~#list~0#1.base, main_~#list~0#1.offset, 4);main_~length~0#1 := 0; {3412#true} is VALID [2022-02-20 23:48:41,660 INFO L290 TraceCheckUtils]: 2: Hoare triple {3412#true} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := 1 + append_#t~post3#1;havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {3414#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:41,660 INFO L290 TraceCheckUtils]: 3: Hoare triple {3414#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L533 {3414#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:41,661 INFO L290 TraceCheckUtils]: 4: Hoare triple {3414#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L533-1 {3414#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:41,662 INFO L290 TraceCheckUtils]: 5: Hoare triple {3414#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {3414#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:41,662 INFO L290 TraceCheckUtils]: 6: Hoare triple {3414#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L534 {3414#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:41,663 INFO L290 TraceCheckUtils]: 7: Hoare triple {3414#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} assume !(append_#t~mem6#1.base != 0 || append_#t~mem6#1.offset != 0);call append_#t~malloc9#1.base, append_#t~malloc9#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite10#1.base, append_#t~ite10#1.offset := append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {3414#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:41,664 INFO L290 TraceCheckUtils]: 8: Hoare triple {3414#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_#t~ite10#1.base, append_#t~ite10#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L534-3 {3414#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:41,664 INFO L290 TraceCheckUtils]: 9: Hoare triple {3414#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~ite10#1.base, append_#t~ite10#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~mem8#1.base, append_#t~mem8#1.offset;havoc append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {3414#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:41,665 INFO L290 TraceCheckUtils]: 10: Hoare triple {3414#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L537 {3415#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0)} is VALID [2022-02-20 23:48:41,665 INFO L290 TraceCheckUtils]: 11: Hoare triple {3415#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0)} assume { :end_inline_append } true;main_#t~post12#1 := main_~length~0#1;main_~length~0#1 := 1 + main_#t~post12#1;havoc main_#t~post12#1; {3415#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0)} is VALID [2022-02-20 23:48:41,666 INFO L290 TraceCheckUtils]: 12: Hoare triple {3415#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0)} assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647; {3415#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0)} is VALID [2022-02-20 23:48:41,666 INFO L290 TraceCheckUtils]: 13: Hoare triple {3415#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0)} assume !(0 != main_#t~nondet11#1 && ~c~0 < 20);havoc main_#t~nondet11#1; {3415#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0)} is VALID [2022-02-20 23:48:41,666 INFO L290 TraceCheckUtils]: 14: Hoare triple {3415#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0)} assume main_~length~0#1 > 0; {3415#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0)} is VALID [2022-02-20 23:48:41,667 INFO L290 TraceCheckUtils]: 15: Hoare triple {3415#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0)} assume !(main_~length~0#1 < 0); {3415#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0)} is VALID [2022-02-20 23:48:41,667 INFO L290 TraceCheckUtils]: 16: Hoare triple {3415#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0)} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L548-2 {3415#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0)} is VALID [2022-02-20 23:48:41,668 INFO L290 TraceCheckUtils]: 17: Hoare triple {3415#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0)} SUMMARY for call main_#t~mem16#1.base, main_#t~mem16#1.offset := read~$Pointer$(main_#t~mem15#1.base, main_#t~mem15#1.offset, 4); srcloc: L551 {3415#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0)} is VALID [2022-02-20 23:48:41,668 INFO L290 TraceCheckUtils]: 18: Hoare triple {3415#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0)} main_~next~0#1.base, main_~next~0#1.offset := main_#t~mem16#1.base, main_#t~mem16#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset;havoc main_#t~mem16#1.base, main_#t~mem16#1.offset; {3415#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0)} is VALID [2022-02-20 23:48:41,669 INFO L290 TraceCheckUtils]: 19: Hoare triple {3415#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0)} SUMMARY for call main_#t~mem17#1.base, main_#t~mem17#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L552 {3416#(= |ULTIMATE.start_main_#t~mem17#1.offset| 0)} is VALID [2022-02-20 23:48:41,669 INFO L290 TraceCheckUtils]: 20: Hoare triple {3416#(= |ULTIMATE.start_main_#t~mem17#1.offset| 0)} assume !(0 == main_#t~mem17#1.offset); {3413#false} is VALID [2022-02-20 23:48:41,669 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:41,669 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:41,670 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1035800718] [2022-02-20 23:48:41,670 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1035800718] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:41,670 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:41,670 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:48:41,670 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1051191531] [2022-02-20 23:48:41,670 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:41,670 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 5.25) internal successors, (21), 5 states have internal predecessors, (21), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 21 [2022-02-20 23:48:41,671 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:41,671 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 5.25) internal successors, (21), 5 states have internal predecessors, (21), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,687 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 21 edges. 21 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:41,687 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:48:41,687 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:41,688 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:48:41,688 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:48:41,688 INFO L87 Difference]: Start difference. First operand 63 states and 65 transitions. Second operand has 5 states, 4 states have (on average 5.25) internal successors, (21), 5 states have internal predecessors, (21), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,875 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:41,876 INFO L93 Difference]: Finished difference Result 62 states and 64 transitions. [2022-02-20 23:48:41,876 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:48:41,876 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 5.25) internal successors, (21), 5 states have internal predecessors, (21), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 21 [2022-02-20 23:48:41,876 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:41,876 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 5.25) internal successors, (21), 5 states have internal predecessors, (21), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,877 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 60 transitions. [2022-02-20 23:48:41,877 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 5.25) internal successors, (21), 5 states have internal predecessors, (21), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,878 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 60 transitions. [2022-02-20 23:48:41,878 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 60 transitions. [2022-02-20 23:48:41,931 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:41,932 INFO L225 Difference]: With dead ends: 62 [2022-02-20 23:48:41,932 INFO L226 Difference]: Without dead ends: 62 [2022-02-20 23:48:41,932 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=25, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:48:41,933 INFO L933 BasicCegarLoop]: 36 mSDtfsCounter, 60 mSDsluCounter, 55 mSDsCounter, 0 mSdLazyCounter, 63 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 60 SdHoareTripleChecker+Valid, 91 SdHoareTripleChecker+Invalid, 65 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 63 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:41,933 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [60 Valid, 91 Invalid, 65 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 63 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:48:41,933 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 62 states. [2022-02-20 23:48:41,934 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 62 to 62. [2022-02-20 23:48:41,934 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:41,935 INFO L82 GeneralOperation]: Start isEquivalent. First operand 62 states. Second operand has 62 states, 46 states have (on average 1.391304347826087) internal successors, (64), 61 states have internal predecessors, (64), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,935 INFO L74 IsIncluded]: Start isIncluded. First operand 62 states. Second operand has 62 states, 46 states have (on average 1.391304347826087) internal successors, (64), 61 states have internal predecessors, (64), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,935 INFO L87 Difference]: Start difference. First operand 62 states. Second operand has 62 states, 46 states have (on average 1.391304347826087) internal successors, (64), 61 states have internal predecessors, (64), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,936 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:41,936 INFO L93 Difference]: Finished difference Result 62 states and 64 transitions. [2022-02-20 23:48:41,936 INFO L276 IsEmpty]: Start isEmpty. Operand 62 states and 64 transitions. [2022-02-20 23:48:41,936 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:41,936 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:41,936 INFO L74 IsIncluded]: Start isIncluded. First operand has 62 states, 46 states have (on average 1.391304347826087) internal successors, (64), 61 states have internal predecessors, (64), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 62 states. [2022-02-20 23:48:41,937 INFO L87 Difference]: Start difference. First operand has 62 states, 46 states have (on average 1.391304347826087) internal successors, (64), 61 states have internal predecessors, (64), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 62 states. [2022-02-20 23:48:41,937 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:41,937 INFO L93 Difference]: Finished difference Result 62 states and 64 transitions. [2022-02-20 23:48:41,938 INFO L276 IsEmpty]: Start isEmpty. Operand 62 states and 64 transitions. [2022-02-20 23:48:41,938 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:41,938 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:41,938 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:41,938 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:41,938 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 62 states, 46 states have (on average 1.391304347826087) internal successors, (64), 61 states have internal predecessors, (64), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,943 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 62 states to 62 states and 64 transitions. [2022-02-20 23:48:41,943 INFO L78 Accepts]: Start accepts. Automaton has 62 states and 64 transitions. Word has length 21 [2022-02-20 23:48:41,944 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:41,944 INFO L470 AbstractCegarLoop]: Abstraction has 62 states and 64 transitions. [2022-02-20 23:48:41,944 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 5.25) internal successors, (21), 5 states have internal predecessors, (21), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,944 INFO L276 IsEmpty]: Start isEmpty. Operand 62 states and 64 transitions. [2022-02-20 23:48:41,944 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-02-20 23:48:41,944 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:41,944 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:41,945 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable9 [2022-02-20 23:48:41,945 INFO L402 AbstractCegarLoop]: === Iteration 11 === Targeting ULTIMATE.startErr28ASSERT_VIOLATIONMEMORY_FREE === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 40 more)] === [2022-02-20 23:48:41,945 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:41,945 INFO L85 PathProgramCache]: Analyzing trace with hash 86487093, now seen corresponding path program 1 times [2022-02-20 23:48:41,945 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:41,945 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1341115838] [2022-02-20 23:48:41,945 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:41,946 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:41,978 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:42,035 INFO L290 TraceCheckUtils]: 0: Hoare triple {3671#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(16, 2);~c~0 := 0; {3671#true} is VALID [2022-02-20 23:48:42,035 INFO L290 TraceCheckUtils]: 1: Hoare triple {3671#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post12#1, main_#t~nondet11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~post18#1, main_~next~0#1.base, main_~next~0#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~post22#1, main_~next~1#1.base, main_~next~1#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset, main_~length~0#1;call main_~#list~0#1.base, main_~#list~0#1.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, main_~#list~0#1.base, main_~#list~0#1.offset, 4);main_~length~0#1 := 0; {3671#true} is VALID [2022-02-20 23:48:42,036 INFO L290 TraceCheckUtils]: 2: Hoare triple {3671#true} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := 1 + append_#t~post3#1;havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {3673#(and (<= (+ |ULTIMATE.start_append_~item~0#1.base| 1) |#StackHeapBarrier|) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:42,037 INFO L290 TraceCheckUtils]: 3: Hoare triple {3673#(and (<= (+ |ULTIMATE.start_append_~item~0#1.base| 1) |#StackHeapBarrier|) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L533 {3673#(and (<= (+ |ULTIMATE.start_append_~item~0#1.base| 1) |#StackHeapBarrier|) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:42,038 INFO L290 TraceCheckUtils]: 4: Hoare triple {3673#(and (<= (+ |ULTIMATE.start_append_~item~0#1.base| 1) |#StackHeapBarrier|) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L533-1 {3673#(and (<= (+ |ULTIMATE.start_append_~item~0#1.base| 1) |#StackHeapBarrier|) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:42,038 INFO L290 TraceCheckUtils]: 5: Hoare triple {3673#(and (<= (+ |ULTIMATE.start_append_~item~0#1.base| 1) |#StackHeapBarrier|) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {3673#(and (<= (+ |ULTIMATE.start_append_~item~0#1.base| 1) |#StackHeapBarrier|) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:42,039 INFO L290 TraceCheckUtils]: 6: Hoare triple {3673#(and (<= (+ |ULTIMATE.start_append_~item~0#1.base| 1) |#StackHeapBarrier|) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L534 {3673#(and (<= (+ |ULTIMATE.start_append_~item~0#1.base| 1) |#StackHeapBarrier|) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:42,040 INFO L290 TraceCheckUtils]: 7: Hoare triple {3673#(and (<= (+ |ULTIMATE.start_append_~item~0#1.base| 1) |#StackHeapBarrier|) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} assume !(append_#t~mem6#1.base != 0 || append_#t~mem6#1.offset != 0);call append_#t~malloc9#1.base, append_#t~malloc9#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite10#1.base, append_#t~ite10#1.offset := append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {3673#(and (<= (+ |ULTIMATE.start_append_~item~0#1.base| 1) |#StackHeapBarrier|) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:42,041 INFO L290 TraceCheckUtils]: 8: Hoare triple {3673#(and (<= (+ |ULTIMATE.start_append_~item~0#1.base| 1) |#StackHeapBarrier|) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_#t~ite10#1.base, append_#t~ite10#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L534-3 {3673#(and (<= (+ |ULTIMATE.start_append_~item~0#1.base| 1) |#StackHeapBarrier|) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:42,041 INFO L290 TraceCheckUtils]: 9: Hoare triple {3673#(and (<= (+ |ULTIMATE.start_append_~item~0#1.base| 1) |#StackHeapBarrier|) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~ite10#1.base, append_#t~ite10#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~mem8#1.base, append_#t~mem8#1.offset;havoc append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {3673#(and (<= (+ |ULTIMATE.start_append_~item~0#1.base| 1) |#StackHeapBarrier|) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:42,042 INFO L290 TraceCheckUtils]: 10: Hoare triple {3673#(and (<= (+ |ULTIMATE.start_append_~item~0#1.base| 1) |#StackHeapBarrier|) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L537 {3674#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:42,043 INFO L290 TraceCheckUtils]: 11: Hoare triple {3674#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 1) |#StackHeapBarrier|)} assume { :end_inline_append } true;main_#t~post12#1 := main_~length~0#1;main_~length~0#1 := 1 + main_#t~post12#1;havoc main_#t~post12#1; {3674#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:42,043 INFO L290 TraceCheckUtils]: 12: Hoare triple {3674#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 1) |#StackHeapBarrier|)} assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647; {3674#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:42,043 INFO L290 TraceCheckUtils]: 13: Hoare triple {3674#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 1) |#StackHeapBarrier|)} assume !(0 != main_#t~nondet11#1 && ~c~0 < 20);havoc main_#t~nondet11#1; {3674#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:42,044 INFO L290 TraceCheckUtils]: 14: Hoare triple {3674#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 1) |#StackHeapBarrier|)} assume main_~length~0#1 > 0; {3674#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:42,044 INFO L290 TraceCheckUtils]: 15: Hoare triple {3674#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 1) |#StackHeapBarrier|)} assume !(main_~length~0#1 < 0); {3674#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:42,044 INFO L290 TraceCheckUtils]: 16: Hoare triple {3674#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 1) |#StackHeapBarrier|)} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L548-2 {3674#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:42,045 INFO L290 TraceCheckUtils]: 17: Hoare triple {3674#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 1) |#StackHeapBarrier|)} SUMMARY for call main_#t~mem16#1.base, main_#t~mem16#1.offset := read~$Pointer$(main_#t~mem15#1.base, main_#t~mem15#1.offset, 4); srcloc: L551 {3674#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:42,045 INFO L290 TraceCheckUtils]: 18: Hoare triple {3674#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 1) |#StackHeapBarrier|)} main_~next~0#1.base, main_~next~0#1.offset := main_#t~mem16#1.base, main_#t~mem16#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset;havoc main_#t~mem16#1.base, main_#t~mem16#1.offset; {3674#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:42,046 INFO L290 TraceCheckUtils]: 19: Hoare triple {3674#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 1) |#StackHeapBarrier|)} SUMMARY for call main_#t~mem17#1.base, main_#t~mem17#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L552 {3675#(<= (+ |ULTIMATE.start_main_#t~mem17#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:42,046 INFO L290 TraceCheckUtils]: 20: Hoare triple {3675#(<= (+ |ULTIMATE.start_main_#t~mem17#1.base| 1) |#StackHeapBarrier|)} assume 0 == main_#t~mem17#1.offset; {3675#(<= (+ |ULTIMATE.start_main_#t~mem17#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:42,046 INFO L290 TraceCheckUtils]: 21: Hoare triple {3675#(<= (+ |ULTIMATE.start_main_#t~mem17#1.base| 1) |#StackHeapBarrier|)} assume !(main_#t~mem17#1.base < #StackHeapBarrier); {3672#false} is VALID [2022-02-20 23:48:42,047 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:42,047 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:42,047 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1341115838] [2022-02-20 23:48:42,047 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1341115838] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:42,047 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:42,047 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:48:42,047 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1863310156] [2022-02-20 23:48:42,047 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:42,048 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 5.5) internal successors, (22), 5 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 22 [2022-02-20 23:48:42,048 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:42,048 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 5.5) internal successors, (22), 5 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:42,066 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:42,066 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:48:42,066 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:42,067 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:48:42,067 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:48:42,067 INFO L87 Difference]: Start difference. First operand 62 states and 64 transitions. Second operand has 5 states, 4 states have (on average 5.5) internal successors, (22), 5 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:42,294 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:42,294 INFO L93 Difference]: Finished difference Result 61 states and 63 transitions. [2022-02-20 23:48:42,294 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:48:42,294 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 5.5) internal successors, (22), 5 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 22 [2022-02-20 23:48:42,294 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:42,295 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 5.5) internal successors, (22), 5 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:42,295 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 61 transitions. [2022-02-20 23:48:42,295 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 5.5) internal successors, (22), 5 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:42,296 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 61 transitions. [2022-02-20 23:48:42,296 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 61 transitions. [2022-02-20 23:48:42,351 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:42,351 INFO L225 Difference]: With dead ends: 61 [2022-02-20 23:48:42,351 INFO L226 Difference]: Without dead ends: 61 [2022-02-20 23:48:42,352 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=25, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:48:42,352 INFO L933 BasicCegarLoop]: 31 mSDtfsCounter, 53 mSDsluCounter, 46 mSDsCounter, 0 mSdLazyCounter, 84 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 53 SdHoareTripleChecker+Valid, 77 SdHoareTripleChecker+Invalid, 88 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 84 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:42,353 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [53 Valid, 77 Invalid, 88 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 84 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:48:42,353 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 61 states. [2022-02-20 23:48:42,354 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 61 to 61. [2022-02-20 23:48:42,354 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:42,354 INFO L82 GeneralOperation]: Start isEquivalent. First operand 61 states. Second operand has 61 states, 46 states have (on average 1.3695652173913044) internal successors, (63), 60 states have internal predecessors, (63), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:42,355 INFO L74 IsIncluded]: Start isIncluded. First operand 61 states. Second operand has 61 states, 46 states have (on average 1.3695652173913044) internal successors, (63), 60 states have internal predecessors, (63), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:42,355 INFO L87 Difference]: Start difference. First operand 61 states. Second operand has 61 states, 46 states have (on average 1.3695652173913044) internal successors, (63), 60 states have internal predecessors, (63), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:42,356 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:42,356 INFO L93 Difference]: Finished difference Result 61 states and 63 transitions. [2022-02-20 23:48:42,356 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 63 transitions. [2022-02-20 23:48:42,356 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:42,356 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:42,356 INFO L74 IsIncluded]: Start isIncluded. First operand has 61 states, 46 states have (on average 1.3695652173913044) internal successors, (63), 60 states have internal predecessors, (63), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 61 states. [2022-02-20 23:48:42,356 INFO L87 Difference]: Start difference. First operand has 61 states, 46 states have (on average 1.3695652173913044) internal successors, (63), 60 states have internal predecessors, (63), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 61 states. [2022-02-20 23:48:42,357 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:42,357 INFO L93 Difference]: Finished difference Result 61 states and 63 transitions. [2022-02-20 23:48:42,357 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 63 transitions. [2022-02-20 23:48:42,358 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:42,358 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:42,358 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:42,358 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:42,358 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 61 states, 46 states have (on average 1.3695652173913044) internal successors, (63), 60 states have internal predecessors, (63), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:42,359 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 61 states to 61 states and 63 transitions. [2022-02-20 23:48:42,359 INFO L78 Accepts]: Start accepts. Automaton has 61 states and 63 transitions. Word has length 22 [2022-02-20 23:48:42,359 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:42,359 INFO L470 AbstractCegarLoop]: Abstraction has 61 states and 63 transitions. [2022-02-20 23:48:42,359 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 5.5) internal successors, (22), 5 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:42,359 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 63 transitions. [2022-02-20 23:48:42,360 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-02-20 23:48:42,360 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:42,360 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:42,360 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable10 [2022-02-20 23:48:42,360 INFO L402 AbstractCegarLoop]: === Iteration 12 === Targeting ULTIMATE.startErr8REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 40 more)] === [2022-02-20 23:48:42,360 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:42,360 INFO L85 PathProgramCache]: Analyzing trace with hash -428723026, now seen corresponding path program 1 times [2022-02-20 23:48:42,361 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:42,361 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [929626948] [2022-02-20 23:48:42,361 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:42,361 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:42,396 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:42,495 INFO L290 TraceCheckUtils]: 0: Hoare triple {3926#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(16, 2);~c~0 := 0; {3926#true} is VALID [2022-02-20 23:48:42,496 INFO L290 TraceCheckUtils]: 1: Hoare triple {3926#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post12#1, main_#t~nondet11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~post18#1, main_~next~0#1.base, main_~next~0#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~post22#1, main_~next~1#1.base, main_~next~1#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset, main_~length~0#1;call main_~#list~0#1.base, main_~#list~0#1.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, main_~#list~0#1.base, main_~#list~0#1.offset, 4);main_~length~0#1 := 0; {3926#true} is VALID [2022-02-20 23:48:42,496 INFO L290 TraceCheckUtils]: 2: Hoare triple {3926#true} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := 1 + append_#t~post3#1;havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {3928#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:42,497 INFO L290 TraceCheckUtils]: 3: Hoare triple {3928#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L533 {3928#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:42,498 INFO L290 TraceCheckUtils]: 4: Hoare triple {3928#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L533-1 {3928#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:42,498 INFO L290 TraceCheckUtils]: 5: Hoare triple {3928#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {3928#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:42,499 INFO L290 TraceCheckUtils]: 6: Hoare triple {3928#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L534 {3928#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:42,499 INFO L290 TraceCheckUtils]: 7: Hoare triple {3928#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} assume !(append_#t~mem6#1.base != 0 || append_#t~mem6#1.offset != 0);call append_#t~malloc9#1.base, append_#t~malloc9#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite10#1.base, append_#t~ite10#1.offset := append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {3928#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:42,501 INFO L290 TraceCheckUtils]: 8: Hoare triple {3928#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_#t~ite10#1.base, append_#t~ite10#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L534-3 {3929#(and (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) 1) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:42,501 INFO L290 TraceCheckUtils]: 9: Hoare triple {3929#(and (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) 1) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~ite10#1.base, append_#t~ite10#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~mem8#1.base, append_#t~mem8#1.offset;havoc append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {3929#(and (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) 1) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:42,502 INFO L290 TraceCheckUtils]: 10: Hoare triple {3929#(and (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) 1) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L537 {3930#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1)} is VALID [2022-02-20 23:48:42,502 INFO L290 TraceCheckUtils]: 11: Hoare triple {3930#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1)} assume { :end_inline_append } true;main_#t~post12#1 := main_~length~0#1;main_~length~0#1 := 1 + main_#t~post12#1;havoc main_#t~post12#1; {3930#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1)} is VALID [2022-02-20 23:48:42,503 INFO L290 TraceCheckUtils]: 12: Hoare triple {3930#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1)} assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647; {3930#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1)} is VALID [2022-02-20 23:48:42,503 INFO L290 TraceCheckUtils]: 13: Hoare triple {3930#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1)} assume !!(0 != main_#t~nondet11#1 && ~c~0 < 20);havoc main_#t~nondet11#1; {3930#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1)} is VALID [2022-02-20 23:48:42,504 INFO L290 TraceCheckUtils]: 14: Hoare triple {3930#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1)} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := 1 + append_#t~post3#1;havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {3931#(or (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) |ULTIMATE.start_append_~item~0#1.base|) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|)) 1))} is VALID [2022-02-20 23:48:42,505 INFO L290 TraceCheckUtils]: 15: Hoare triple {3931#(or (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) |ULTIMATE.start_append_~item~0#1.base|) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|)) 1))} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L533 {3932#(or (= (select |#valid| |ULTIMATE.start_append_#t~mem5#1.base|) 1) (= |ULTIMATE.start_append_#t~mem5#1.base| |ULTIMATE.start_append_~item~0#1.base|))} is VALID [2022-02-20 23:48:42,505 INFO L290 TraceCheckUtils]: 16: Hoare triple {3932#(or (= (select |#valid| |ULTIMATE.start_append_#t~mem5#1.base|) 1) (= |ULTIMATE.start_append_#t~mem5#1.base| |ULTIMATE.start_append_~item~0#1.base|))} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L533-1 {3933#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) 1)} is VALID [2022-02-20 23:48:42,506 INFO L290 TraceCheckUtils]: 17: Hoare triple {3933#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) 1)} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {3933#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) 1)} is VALID [2022-02-20 23:48:42,506 INFO L290 TraceCheckUtils]: 18: Hoare triple {3933#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) 1)} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L534 {3933#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) 1)} is VALID [2022-02-20 23:48:42,506 INFO L290 TraceCheckUtils]: 19: Hoare triple {3933#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) 1)} assume append_#t~mem6#1.base != 0 || append_#t~mem6#1.offset != 0; {3933#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) 1)} is VALID [2022-02-20 23:48:42,507 INFO L290 TraceCheckUtils]: 20: Hoare triple {3933#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) 1)} SUMMARY for call append_#t~mem7#1.base, append_#t~mem7#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L535 {3934#(= (select |#valid| |ULTIMATE.start_append_#t~mem7#1.base|) 1)} is VALID [2022-02-20 23:48:42,507 INFO L290 TraceCheckUtils]: 21: Hoare triple {3934#(= (select |#valid| |ULTIMATE.start_append_#t~mem7#1.base|) 1)} assume !(1 == #valid[append_#t~mem7#1.base]); {3927#false} is VALID [2022-02-20 23:48:42,508 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 1 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:42,508 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:42,508 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [929626948] [2022-02-20 23:48:42,508 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [929626948] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:48:42,508 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [252165948] [2022-02-20 23:48:42,508 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:42,509 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:48:42,509 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:48:42,511 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 23:48:42,544 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-02-20 23:48:42,617 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:42,637 INFO L263 TraceCheckSpWp]: Trace formula consists of 221 conjuncts, 36 conjunts are in the unsatisfiable core [2022-02-20 23:48:42,650 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:42,670 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:48:42,911 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:48:43,010 INFO L356 Elim1Store]: treesize reduction 30, result has 37.5 percent of original size [2022-02-20 23:48:43,011 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 21 treesize of output 29 [2022-02-20 23:48:43,132 INFO L356 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2022-02-20 23:48:43,132 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 33 treesize of output 24 [2022-02-20 23:48:43,326 INFO L356 Elim1Store]: treesize reduction 11, result has 8.3 percent of original size [2022-02-20 23:48:43,326 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 36 treesize of output 16 [2022-02-20 23:48:43,339 INFO L290 TraceCheckUtils]: 0: Hoare triple {3926#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(16, 2);~c~0 := 0; {3926#true} is VALID [2022-02-20 23:48:43,340 INFO L290 TraceCheckUtils]: 1: Hoare triple {3926#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post12#1, main_#t~nondet11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~post18#1, main_~next~0#1.base, main_~next~0#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~post22#1, main_~next~1#1.base, main_~next~1#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset, main_~length~0#1;call main_~#list~0#1.base, main_~#list~0#1.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, main_~#list~0#1.base, main_~#list~0#1.offset, 4);main_~length~0#1 := 0; {3941#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} is VALID [2022-02-20 23:48:43,341 INFO L290 TraceCheckUtils]: 2: Hoare triple {3941#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := 1 + append_#t~post3#1;havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {3945#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:43,341 INFO L290 TraceCheckUtils]: 3: Hoare triple {3945#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L533 {3945#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:43,342 INFO L290 TraceCheckUtils]: 4: Hoare triple {3945#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L533-1 {3945#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:43,342 INFO L290 TraceCheckUtils]: 5: Hoare triple {3945#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {3945#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:43,343 INFO L290 TraceCheckUtils]: 6: Hoare triple {3945#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L534 {3945#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:43,344 INFO L290 TraceCheckUtils]: 7: Hoare triple {3945#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} assume !(append_#t~mem6#1.base != 0 || append_#t~mem6#1.offset != 0);call append_#t~malloc9#1.base, append_#t~malloc9#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite10#1.base, append_#t~ite10#1.offset := append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {3945#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:43,344 INFO L290 TraceCheckUtils]: 8: Hoare triple {3945#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_#t~ite10#1.base, append_#t~ite10#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L534-3 {3964#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) 1) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:43,345 INFO L290 TraceCheckUtils]: 9: Hoare triple {3964#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) 1) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~ite10#1.base, append_#t~ite10#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~mem8#1.base, append_#t~mem8#1.offset;havoc append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {3964#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) 1) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:43,346 INFO L290 TraceCheckUtils]: 10: Hoare triple {3964#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) 1) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L537 {3971#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1))} is VALID [2022-02-20 23:48:43,346 INFO L290 TraceCheckUtils]: 11: Hoare triple {3971#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1))} assume { :end_inline_append } true;main_#t~post12#1 := main_~length~0#1;main_~length~0#1 := 1 + main_#t~post12#1;havoc main_#t~post12#1; {3971#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1))} is VALID [2022-02-20 23:48:43,347 INFO L290 TraceCheckUtils]: 12: Hoare triple {3971#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1))} assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647; {3971#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1))} is VALID [2022-02-20 23:48:43,347 INFO L290 TraceCheckUtils]: 13: Hoare triple {3971#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1))} assume !!(0 != main_#t~nondet11#1 && ~c~0 < 20);havoc main_#t~nondet11#1; {3971#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1))} is VALID [2022-02-20 23:48:43,349 INFO L290 TraceCheckUtils]: 14: Hoare triple {3971#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1))} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := 1 + append_#t~post3#1;havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {3984#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0)) 1) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~plist#1.offset| 0))} is VALID [2022-02-20 23:48:43,350 INFO L290 TraceCheckUtils]: 15: Hoare triple {3984#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0)) 1) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~plist#1.offset| 0))} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L533 {3988#(exists ((|ULTIMATE.start_append_~plist#1.base| Int)) (and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0)) 1) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) |ULTIMATE.start_append_~item~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) |ULTIMATE.start_append_#t~mem5#1.base|)))} is VALID [2022-02-20 23:48:43,352 INFO L290 TraceCheckUtils]: 16: Hoare triple {3988#(exists ((|ULTIMATE.start_append_~plist#1.base| Int)) (and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0)) 1) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) |ULTIMATE.start_append_~item~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) |ULTIMATE.start_append_#t~mem5#1.base|)))} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L533-1 {3992#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) 1) (exists ((|ULTIMATE.start_append_~plist#1.base| Int)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) |ULTIMATE.start_append_~item~0#1.base|)))} is VALID [2022-02-20 23:48:43,352 INFO L290 TraceCheckUtils]: 17: Hoare triple {3992#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) 1) (exists ((|ULTIMATE.start_append_~plist#1.base| Int)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) |ULTIMATE.start_append_~item~0#1.base|)))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {3992#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) 1) (exists ((|ULTIMATE.start_append_~plist#1.base| Int)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) |ULTIMATE.start_append_~item~0#1.base|)))} is VALID [2022-02-20 23:48:43,353 INFO L290 TraceCheckUtils]: 18: Hoare triple {3992#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) 1) (exists ((|ULTIMATE.start_append_~plist#1.base| Int)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) |ULTIMATE.start_append_~item~0#1.base|)))} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L534 {3992#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) 1) (exists ((|ULTIMATE.start_append_~plist#1.base| Int)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) |ULTIMATE.start_append_~item~0#1.base|)))} is VALID [2022-02-20 23:48:43,354 INFO L290 TraceCheckUtils]: 19: Hoare triple {3992#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) 1) (exists ((|ULTIMATE.start_append_~plist#1.base| Int)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) |ULTIMATE.start_append_~item~0#1.base|)))} assume append_#t~mem6#1.base != 0 || append_#t~mem6#1.offset != 0; {3992#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) 1) (exists ((|ULTIMATE.start_append_~plist#1.base| Int)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) |ULTIMATE.start_append_~item~0#1.base|)))} is VALID [2022-02-20 23:48:43,355 INFO L290 TraceCheckUtils]: 20: Hoare triple {3992#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) 1) (exists ((|ULTIMATE.start_append_~plist#1.base| Int)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) |ULTIMATE.start_append_~item~0#1.base|)))} SUMMARY for call append_#t~mem7#1.base, append_#t~mem7#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L535 {3934#(= (select |#valid| |ULTIMATE.start_append_#t~mem7#1.base|) 1)} is VALID [2022-02-20 23:48:43,355 INFO L290 TraceCheckUtils]: 21: Hoare triple {3934#(= (select |#valid| |ULTIMATE.start_append_#t~mem7#1.base|) 1)} assume !(1 == #valid[append_#t~mem7#1.base]); {3927#false} is VALID [2022-02-20 23:48:43,356 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 1 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:43,356 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:48:43,681 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 38 treesize of output 34 [2022-02-20 23:48:44,587 INFO L356 Elim1Store]: treesize reduction 10, result has 60.0 percent of original size [2022-02-20 23:48:44,587 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 0 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 66 treesize of output 72 [2022-02-20 23:48:44,785 INFO L290 TraceCheckUtils]: 21: Hoare triple {3934#(= (select |#valid| |ULTIMATE.start_append_#t~mem7#1.base|) 1)} assume !(1 == #valid[append_#t~mem7#1.base]); {3927#false} is VALID [2022-02-20 23:48:44,785 INFO L290 TraceCheckUtils]: 20: Hoare triple {3933#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) 1)} SUMMARY for call append_#t~mem7#1.base, append_#t~mem7#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L535 {3934#(= (select |#valid| |ULTIMATE.start_append_#t~mem7#1.base|) 1)} is VALID [2022-02-20 23:48:44,786 INFO L290 TraceCheckUtils]: 19: Hoare triple {3933#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) 1)} assume append_#t~mem6#1.base != 0 || append_#t~mem6#1.offset != 0; {3933#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) 1)} is VALID [2022-02-20 23:48:44,786 INFO L290 TraceCheckUtils]: 18: Hoare triple {3933#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) 1)} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L534 {3933#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) 1)} is VALID [2022-02-20 23:48:44,787 INFO L290 TraceCheckUtils]: 17: Hoare triple {3933#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) 1)} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {3933#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) 1)} is VALID [2022-02-20 23:48:44,787 INFO L290 TraceCheckUtils]: 16: Hoare triple {4023#(= (select |#valid| |ULTIMATE.start_append_#t~mem5#1.base|) 1)} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L533-1 {3933#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) 1)} is VALID [2022-02-20 23:48:44,788 INFO L290 TraceCheckUtils]: 15: Hoare triple {4027#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|)) 1)} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L533 {4023#(= (select |#valid| |ULTIMATE.start_append_#t~mem5#1.base|) 1)} is VALID [2022-02-20 23:48:44,789 INFO L290 TraceCheckUtils]: 14: Hoare triple {4031#(forall ((|v_ULTIMATE.start_append_~item~0#1.base_16| Int) (v_ArrVal_238 Int)) (or (= (select (store |#valid| |v_ULTIMATE.start_append_~item~0#1.base_16| v_ArrVal_238) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1) (not (= (select |#valid| |v_ULTIMATE.start_append_~item~0#1.base_16|) 0))))} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := 1 + append_#t~post3#1;havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {4027#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|)) 1)} is VALID [2022-02-20 23:48:44,790 INFO L290 TraceCheckUtils]: 13: Hoare triple {4031#(forall ((|v_ULTIMATE.start_append_~item~0#1.base_16| Int) (v_ArrVal_238 Int)) (or (= (select (store |#valid| |v_ULTIMATE.start_append_~item~0#1.base_16| v_ArrVal_238) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1) (not (= (select |#valid| |v_ULTIMATE.start_append_~item~0#1.base_16|) 0))))} assume !!(0 != main_#t~nondet11#1 && ~c~0 < 20);havoc main_#t~nondet11#1; {4031#(forall ((|v_ULTIMATE.start_append_~item~0#1.base_16| Int) (v_ArrVal_238 Int)) (or (= (select (store |#valid| |v_ULTIMATE.start_append_~item~0#1.base_16| v_ArrVal_238) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1) (not (= (select |#valid| |v_ULTIMATE.start_append_~item~0#1.base_16|) 0))))} is VALID [2022-02-20 23:48:44,790 INFO L290 TraceCheckUtils]: 12: Hoare triple {4031#(forall ((|v_ULTIMATE.start_append_~item~0#1.base_16| Int) (v_ArrVal_238 Int)) (or (= (select (store |#valid| |v_ULTIMATE.start_append_~item~0#1.base_16| v_ArrVal_238) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1) (not (= (select |#valid| |v_ULTIMATE.start_append_~item~0#1.base_16|) 0))))} assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647; {4031#(forall ((|v_ULTIMATE.start_append_~item~0#1.base_16| Int) (v_ArrVal_238 Int)) (or (= (select (store |#valid| |v_ULTIMATE.start_append_~item~0#1.base_16| v_ArrVal_238) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1) (not (= (select |#valid| |v_ULTIMATE.start_append_~item~0#1.base_16|) 0))))} is VALID [2022-02-20 23:48:44,791 INFO L290 TraceCheckUtils]: 11: Hoare triple {4031#(forall ((|v_ULTIMATE.start_append_~item~0#1.base_16| Int) (v_ArrVal_238 Int)) (or (= (select (store |#valid| |v_ULTIMATE.start_append_~item~0#1.base_16| v_ArrVal_238) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1) (not (= (select |#valid| |v_ULTIMATE.start_append_~item~0#1.base_16|) 0))))} assume { :end_inline_append } true;main_#t~post12#1 := main_~length~0#1;main_~length~0#1 := 1 + main_#t~post12#1;havoc main_#t~post12#1; {4031#(forall ((|v_ULTIMATE.start_append_~item~0#1.base_16| Int) (v_ArrVal_238 Int)) (or (= (select (store |#valid| |v_ULTIMATE.start_append_~item~0#1.base_16| v_ArrVal_238) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1) (not (= (select |#valid| |v_ULTIMATE.start_append_~item~0#1.base_16|) 0))))} is VALID [2022-02-20 23:48:44,792 INFO L290 TraceCheckUtils]: 10: Hoare triple {4044#(forall ((|v_ULTIMATE.start_append_~item~0#1.base_16| Int) (v_ArrVal_238 Int)) (or (and (or (not (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|)) (not (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))) (forall ((v_arrayElimCell_6 Int)) (= (select (store |#valid| |v_ULTIMATE.start_append_~item~0#1.base_16| v_ArrVal_238) v_arrayElimCell_6) 1))) (not (= (select |#valid| |v_ULTIMATE.start_append_~item~0#1.base_16|) 0)) (and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= (select (store |#valid| |v_ULTIMATE.start_append_~item~0#1.base_16| v_ArrVal_238) |ULTIMATE.start_append_~item~0#1.base|) 1) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))))} SUMMARY for call write~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L537 {4031#(forall ((|v_ULTIMATE.start_append_~item~0#1.base_16| Int) (v_ArrVal_238 Int)) (or (= (select (store |#valid| |v_ULTIMATE.start_append_~item~0#1.base_16| v_ArrVal_238) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1) (not (= (select |#valid| |v_ULTIMATE.start_append_~item~0#1.base_16|) 0))))} is VALID [2022-02-20 23:48:44,794 INFO L290 TraceCheckUtils]: 9: Hoare triple {4044#(forall ((|v_ULTIMATE.start_append_~item~0#1.base_16| Int) (v_ArrVal_238 Int)) (or (and (or (not (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|)) (not (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))) (forall ((v_arrayElimCell_6 Int)) (= (select (store |#valid| |v_ULTIMATE.start_append_~item~0#1.base_16| v_ArrVal_238) v_arrayElimCell_6) 1))) (not (= (select |#valid| |v_ULTIMATE.start_append_~item~0#1.base_16|) 0)) (and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= (select (store |#valid| |v_ULTIMATE.start_append_~item~0#1.base_16| v_ArrVal_238) |ULTIMATE.start_append_~item~0#1.base|) 1) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))))} havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~ite10#1.base, append_#t~ite10#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~mem8#1.base, append_#t~mem8#1.offset;havoc append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {4044#(forall ((|v_ULTIMATE.start_append_~item~0#1.base_16| Int) (v_ArrVal_238 Int)) (or (and (or (not (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|)) (not (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))) (forall ((v_arrayElimCell_6 Int)) (= (select (store |#valid| |v_ULTIMATE.start_append_~item~0#1.base_16| v_ArrVal_238) v_arrayElimCell_6) 1))) (not (= (select |#valid| |v_ULTIMATE.start_append_~item~0#1.base_16|) 0)) (and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= (select (store |#valid| |v_ULTIMATE.start_append_~item~0#1.base_16| v_ArrVal_238) |ULTIMATE.start_append_~item~0#1.base|) 1) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))))} is VALID [2022-02-20 23:48:44,795 INFO L290 TraceCheckUtils]: 8: Hoare triple {3928#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_#t~ite10#1.base, append_#t~ite10#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L534-3 {4044#(forall ((|v_ULTIMATE.start_append_~item~0#1.base_16| Int) (v_ArrVal_238 Int)) (or (and (or (not (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|)) (not (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))) (forall ((v_arrayElimCell_6 Int)) (= (select (store |#valid| |v_ULTIMATE.start_append_~item~0#1.base_16| v_ArrVal_238) v_arrayElimCell_6) 1))) (not (= (select |#valid| |v_ULTIMATE.start_append_~item~0#1.base_16|) 0)) (and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= (select (store |#valid| |v_ULTIMATE.start_append_~item~0#1.base_16| v_ArrVal_238) |ULTIMATE.start_append_~item~0#1.base|) 1) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))))} is VALID [2022-02-20 23:48:44,796 INFO L290 TraceCheckUtils]: 7: Hoare triple {3928#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} assume !(append_#t~mem6#1.base != 0 || append_#t~mem6#1.offset != 0);call append_#t~malloc9#1.base, append_#t~malloc9#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite10#1.base, append_#t~ite10#1.offset := append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {3928#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:44,797 INFO L290 TraceCheckUtils]: 6: Hoare triple {3928#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L534 {3928#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:44,797 INFO L290 TraceCheckUtils]: 5: Hoare triple {3928#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {3928#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:44,801 INFO L290 TraceCheckUtils]: 4: Hoare triple {3928#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L533-1 {3928#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:44,801 INFO L290 TraceCheckUtils]: 3: Hoare triple {3928#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L533 {3928#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:44,802 INFO L290 TraceCheckUtils]: 2: Hoare triple {3926#true} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := 1 + append_#t~post3#1;havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {3928#(and (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:44,802 INFO L290 TraceCheckUtils]: 1: Hoare triple {3926#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post12#1, main_#t~nondet11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~post18#1, main_~next~0#1.base, main_~next~0#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~post22#1, main_~next~1#1.base, main_~next~1#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset, main_~length~0#1;call main_~#list~0#1.base, main_~#list~0#1.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, main_~#list~0#1.base, main_~#list~0#1.offset, 4);main_~length~0#1 := 0; {3926#true} is VALID [2022-02-20 23:48:44,803 INFO L290 TraceCheckUtils]: 0: Hoare triple {3926#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(16, 2);~c~0 := 0; {3926#true} is VALID [2022-02-20 23:48:44,803 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 1 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:44,803 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [252165948] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:48:44,803 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:48:44,803 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 9, 8] total 19 [2022-02-20 23:48:44,804 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [752393838] [2022-02-20 23:48:44,804 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:48:44,804 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 19 states have (on average 2.6842105263157894) internal successors, (51), 20 states have internal predecessors, (51), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 22 [2022-02-20 23:48:44,805 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:44,805 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 20 states, 19 states have (on average 2.6842105263157894) internal successors, (51), 20 states have internal predecessors, (51), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:44,852 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:44,853 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 20 states [2022-02-20 23:48:44,853 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:44,853 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2022-02-20 23:48:44,853 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=57, Invalid=323, Unknown=0, NotChecked=0, Total=380 [2022-02-20 23:48:44,854 INFO L87 Difference]: Start difference. First operand 61 states and 63 transitions. Second operand has 20 states, 19 states have (on average 2.6842105263157894) internal successors, (51), 20 states have internal predecessors, (51), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:45,843 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:45,843 INFO L93 Difference]: Finished difference Result 157 states and 165 transitions. [2022-02-20 23:48:45,843 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-02-20 23:48:45,843 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 19 states have (on average 2.6842105263157894) internal successors, (51), 20 states have internal predecessors, (51), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 22 [2022-02-20 23:48:45,843 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:45,844 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 19 states have (on average 2.6842105263157894) internal successors, (51), 20 states have internal predecessors, (51), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:45,845 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 166 transitions. [2022-02-20 23:48:45,845 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 19 states have (on average 2.6842105263157894) internal successors, (51), 20 states have internal predecessors, (51), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:45,847 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 166 transitions. [2022-02-20 23:48:45,847 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 166 transitions. [2022-02-20 23:48:45,992 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 166 edges. 166 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:45,994 INFO L225 Difference]: With dead ends: 157 [2022-02-20 23:48:45,994 INFO L226 Difference]: Without dead ends: 157 [2022-02-20 23:48:45,995 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 58 GetRequests, 32 SyntacticMatches, 0 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 128 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=140, Invalid=616, Unknown=0, NotChecked=0, Total=756 [2022-02-20 23:48:45,995 INFO L933 BasicCegarLoop]: 37 mSDtfsCounter, 334 mSDsluCounter, 344 mSDsCounter, 0 mSdLazyCounter, 285 mSolverCounterSat, 12 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 334 SdHoareTripleChecker+Valid, 381 SdHoareTripleChecker+Invalid, 486 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 12 IncrementalHoareTripleChecker+Valid, 285 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 189 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:45,995 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [334 Valid, 381 Invalid, 486 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [12 Valid, 285 Invalid, 0 Unknown, 189 Unchecked, 0.3s Time] [2022-02-20 23:48:45,996 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 157 states. [2022-02-20 23:48:45,997 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 157 to 75. [2022-02-20 23:48:45,997 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:45,998 INFO L82 GeneralOperation]: Start isEquivalent. First operand 157 states. Second operand has 75 states, 60 states have (on average 1.3333333333333333) internal successors, (80), 74 states have internal predecessors, (80), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:45,998 INFO L74 IsIncluded]: Start isIncluded. First operand 157 states. Second operand has 75 states, 60 states have (on average 1.3333333333333333) internal successors, (80), 74 states have internal predecessors, (80), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:45,998 INFO L87 Difference]: Start difference. First operand 157 states. Second operand has 75 states, 60 states have (on average 1.3333333333333333) internal successors, (80), 74 states have internal predecessors, (80), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:46,000 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:46,000 INFO L93 Difference]: Finished difference Result 157 states and 165 transitions. [2022-02-20 23:48:46,000 INFO L276 IsEmpty]: Start isEmpty. Operand 157 states and 165 transitions. [2022-02-20 23:48:46,001 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:46,001 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:46,001 INFO L74 IsIncluded]: Start isIncluded. First operand has 75 states, 60 states have (on average 1.3333333333333333) internal successors, (80), 74 states have internal predecessors, (80), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 157 states. [2022-02-20 23:48:46,002 INFO L87 Difference]: Start difference. First operand has 75 states, 60 states have (on average 1.3333333333333333) internal successors, (80), 74 states have internal predecessors, (80), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 157 states. [2022-02-20 23:48:46,004 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:46,004 INFO L93 Difference]: Finished difference Result 157 states and 165 transitions. [2022-02-20 23:48:46,004 INFO L276 IsEmpty]: Start isEmpty. Operand 157 states and 165 transitions. [2022-02-20 23:48:46,005 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:46,005 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:46,005 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:46,005 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:46,005 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 75 states, 60 states have (on average 1.3333333333333333) internal successors, (80), 74 states have internal predecessors, (80), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:46,006 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 75 states to 75 states and 80 transitions. [2022-02-20 23:48:46,007 INFO L78 Accepts]: Start accepts. Automaton has 75 states and 80 transitions. Word has length 22 [2022-02-20 23:48:46,007 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:46,007 INFO L470 AbstractCegarLoop]: Abstraction has 75 states and 80 transitions. [2022-02-20 23:48:46,007 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 20 states, 19 states have (on average 2.6842105263157894) internal successors, (51), 20 states have internal predecessors, (51), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:46,007 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 80 transitions. [2022-02-20 23:48:46,008 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-02-20 23:48:46,008 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:46,008 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:46,030 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-02-20 23:48:46,222 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable11 [2022-02-20 23:48:46,222 INFO L402 AbstractCegarLoop]: === Iteration 13 === Targeting ULTIMATE.startErr9REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 40 more)] === [2022-02-20 23:48:46,223 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:46,223 INFO L85 PathProgramCache]: Analyzing trace with hash -428723025, now seen corresponding path program 1 times [2022-02-20 23:48:46,223 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:46,223 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [133194460] [2022-02-20 23:48:46,223 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:46,224 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:46,262 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:46,381 INFO L290 TraceCheckUtils]: 0: Hoare triple {4636#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(16, 2);~c~0 := 0; {4636#true} is VALID [2022-02-20 23:48:46,381 INFO L290 TraceCheckUtils]: 1: Hoare triple {4636#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post12#1, main_#t~nondet11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~post18#1, main_~next~0#1.base, main_~next~0#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~post22#1, main_~next~1#1.base, main_~next~1#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset, main_~length~0#1;call main_~#list~0#1.base, main_~#list~0#1.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, main_~#list~0#1.base, main_~#list~0#1.offset, 4);main_~length~0#1 := 0; {4636#true} is VALID [2022-02-20 23:48:46,382 INFO L290 TraceCheckUtils]: 2: Hoare triple {4636#true} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := 1 + append_#t~post3#1;havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {4638#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:46,383 INFO L290 TraceCheckUtils]: 3: Hoare triple {4638#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L533 {4638#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:46,383 INFO L290 TraceCheckUtils]: 4: Hoare triple {4638#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L533-1 {4638#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:46,384 INFO L290 TraceCheckUtils]: 5: Hoare triple {4638#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {4638#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:46,384 INFO L290 TraceCheckUtils]: 6: Hoare triple {4638#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L534 {4638#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:46,385 INFO L290 TraceCheckUtils]: 7: Hoare triple {4638#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} assume !(append_#t~mem6#1.base != 0 || append_#t~mem6#1.offset != 0);call append_#t~malloc9#1.base, append_#t~malloc9#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite10#1.base, append_#t~ite10#1.offset := append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {4638#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:46,386 INFO L290 TraceCheckUtils]: 8: Hoare triple {4638#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_#t~ite10#1.base, append_#t~ite10#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L534-3 {4639#(and (<= (+ |ULTIMATE.start_append_~item~0#1.offset| 8) (select |#length| |ULTIMATE.start_append_~item~0#1.base|)) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) 1) (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:46,387 INFO L290 TraceCheckUtils]: 9: Hoare triple {4639#(and (<= (+ |ULTIMATE.start_append_~item~0#1.offset| 8) (select |#length| |ULTIMATE.start_append_~item~0#1.base|)) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) 1) (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~ite10#1.base, append_#t~ite10#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~mem8#1.base, append_#t~mem8#1.offset;havoc append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {4639#(and (<= (+ |ULTIMATE.start_append_~item~0#1.offset| 8) (select |#length| |ULTIMATE.start_append_~item~0#1.base|)) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) 1) (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:46,396 INFO L290 TraceCheckUtils]: 10: Hoare triple {4639#(and (<= (+ |ULTIMATE.start_append_~item~0#1.offset| 8) (select |#length| |ULTIMATE.start_append_~item~0#1.base|)) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) 1) (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L537 {4640#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1))} is VALID [2022-02-20 23:48:46,397 INFO L290 TraceCheckUtils]: 11: Hoare triple {4640#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1))} assume { :end_inline_append } true;main_#t~post12#1 := main_~length~0#1;main_~length~0#1 := 1 + main_#t~post12#1;havoc main_#t~post12#1; {4640#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1))} is VALID [2022-02-20 23:48:46,398 INFO L290 TraceCheckUtils]: 12: Hoare triple {4640#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1))} assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647; {4640#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1))} is VALID [2022-02-20 23:48:46,399 INFO L290 TraceCheckUtils]: 13: Hoare triple {4640#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1))} assume !!(0 != main_#t~nondet11#1 && ~c~0 < 20);havoc main_#t~nondet11#1; {4640#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1))} is VALID [2022-02-20 23:48:46,400 INFO L290 TraceCheckUtils]: 14: Hoare triple {4640#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1))} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := 1 + append_#t~post3#1;havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {4641#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) 0) (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|))))} is VALID [2022-02-20 23:48:46,400 INFO L290 TraceCheckUtils]: 15: Hoare triple {4641#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) 0) (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|))))} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L533 {4642#(and (= |ULTIMATE.start_append_#t~mem5#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_append_#t~mem5#1.base|)))} is VALID [2022-02-20 23:48:46,401 INFO L290 TraceCheckUtils]: 16: Hoare triple {4642#(and (= |ULTIMATE.start_append_#t~mem5#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_append_#t~mem5#1.base|)))} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L533-1 {4643#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) 0))} is VALID [2022-02-20 23:48:46,402 INFO L290 TraceCheckUtils]: 17: Hoare triple {4643#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) 0))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {4643#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) 0))} is VALID [2022-02-20 23:48:46,402 INFO L290 TraceCheckUtils]: 18: Hoare triple {4643#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) 0))} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L534 {4643#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) 0))} is VALID [2022-02-20 23:48:46,407 INFO L290 TraceCheckUtils]: 19: Hoare triple {4643#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) 0))} assume append_#t~mem6#1.base != 0 || append_#t~mem6#1.offset != 0; {4643#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) 0))} is VALID [2022-02-20 23:48:46,408 INFO L290 TraceCheckUtils]: 20: Hoare triple {4643#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) 0))} SUMMARY for call append_#t~mem7#1.base, append_#t~mem7#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L535 {4644#(and (<= 8 (select |#length| |ULTIMATE.start_append_#t~mem7#1.base|)) (= |ULTIMATE.start_append_#t~mem7#1.offset| 0))} is VALID [2022-02-20 23:48:46,408 INFO L290 TraceCheckUtils]: 21: Hoare triple {4644#(and (<= 8 (select |#length| |ULTIMATE.start_append_#t~mem7#1.base|)) (= |ULTIMATE.start_append_#t~mem7#1.offset| 0))} assume !(4 + (4 + append_#t~mem7#1.offset) <= #length[append_#t~mem7#1.base] && 0 <= 4 + append_#t~mem7#1.offset); {4637#false} is VALID [2022-02-20 23:48:46,409 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 1 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:46,409 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:46,409 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [133194460] [2022-02-20 23:48:46,409 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [133194460] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:48:46,410 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [880174004] [2022-02-20 23:48:46,410 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:46,410 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:48:46,410 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:48:46,411 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 23:48:46,435 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-02-20 23:48:46,511 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:46,513 INFO L263 TraceCheckSpWp]: Trace formula consists of 221 conjuncts, 53 conjunts are in the unsatisfiable core [2022-02-20 23:48:46,530 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:46,532 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:48:46,722 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:48:46,733 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:48:46,843 INFO L356 Elim1Store]: treesize reduction 4, result has 66.7 percent of original size [2022-02-20 23:48:46,843 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 15 treesize of output 15 [2022-02-20 23:48:46,855 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 18 [2022-02-20 23:48:47,017 INFO L356 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2022-02-20 23:48:47,017 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 33 treesize of output 24 [2022-02-20 23:48:47,038 INFO L356 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2022-02-20 23:48:47,039 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 23 treesize of output 18 [2022-02-20 23:48:47,428 INFO L356 Elim1Store]: treesize reduction 11, result has 8.3 percent of original size [2022-02-20 23:48:47,429 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 36 treesize of output 16 [2022-02-20 23:48:47,473 INFO L356 Elim1Store]: treesize reduction 11, result has 8.3 percent of original size [2022-02-20 23:48:47,474 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 26 treesize of output 10 [2022-02-20 23:48:47,486 INFO L290 TraceCheckUtils]: 0: Hoare triple {4636#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(16, 2);~c~0 := 0; {4636#true} is VALID [2022-02-20 23:48:47,486 INFO L290 TraceCheckUtils]: 1: Hoare triple {4636#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post12#1, main_#t~nondet11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~post18#1, main_~next~0#1.base, main_~next~0#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~post22#1, main_~next~1#1.base, main_~next~1#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset, main_~length~0#1;call main_~#list~0#1.base, main_~#list~0#1.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, main_~#list~0#1.base, main_~#list~0#1.offset, 4);main_~length~0#1 := 0; {4651#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} is VALID [2022-02-20 23:48:47,487 INFO L290 TraceCheckUtils]: 2: Hoare triple {4651#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := 1 + append_#t~post3#1;havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {4655#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:47,488 INFO L290 TraceCheckUtils]: 3: Hoare triple {4655#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L533 {4655#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:47,488 INFO L290 TraceCheckUtils]: 4: Hoare triple {4655#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L533-1 {4655#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:47,489 INFO L290 TraceCheckUtils]: 5: Hoare triple {4655#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {4655#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:47,490 INFO L290 TraceCheckUtils]: 6: Hoare triple {4655#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L534 {4655#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:47,490 INFO L290 TraceCheckUtils]: 7: Hoare triple {4655#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} assume !(append_#t~mem6#1.base != 0 || append_#t~mem6#1.offset != 0);call append_#t~malloc9#1.base, append_#t~malloc9#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite10#1.base, append_#t~ite10#1.offset := append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {4655#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:47,491 INFO L290 TraceCheckUtils]: 8: Hoare triple {4655#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_#t~ite10#1.base, append_#t~ite10#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L534-3 {4674#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (<= (+ |ULTIMATE.start_append_~item~0#1.offset| 8) (select |#length| |ULTIMATE.start_append_~item~0#1.base|)) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) 1) (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:47,492 INFO L290 TraceCheckUtils]: 9: Hoare triple {4674#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (<= (+ |ULTIMATE.start_append_~item~0#1.offset| 8) (select |#length| |ULTIMATE.start_append_~item~0#1.base|)) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) 1) (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~ite10#1.base, append_#t~ite10#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~mem8#1.base, append_#t~mem8#1.offset;havoc append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {4674#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (<= (+ |ULTIMATE.start_append_~item~0#1.offset| 8) (select |#length| |ULTIMATE.start_append_~item~0#1.base|)) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) 1) (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:47,493 INFO L290 TraceCheckUtils]: 10: Hoare triple {4674#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (<= (+ |ULTIMATE.start_append_~item~0#1.offset| 8) (select |#length| |ULTIMATE.start_append_~item~0#1.base|)) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) 1) (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L537 {4681#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1))} is VALID [2022-02-20 23:48:47,494 INFO L290 TraceCheckUtils]: 11: Hoare triple {4681#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1))} assume { :end_inline_append } true;main_#t~post12#1 := main_~length~0#1;main_~length~0#1 := 1 + main_#t~post12#1;havoc main_#t~post12#1; {4681#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1))} is VALID [2022-02-20 23:48:47,494 INFO L290 TraceCheckUtils]: 12: Hoare triple {4681#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1))} assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647; {4681#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1))} is VALID [2022-02-20 23:48:47,495 INFO L290 TraceCheckUtils]: 13: Hoare triple {4681#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1))} assume !!(0 != main_#t~nondet11#1 && ~c~0 < 20);havoc main_#t~nondet11#1; {4681#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1))} is VALID [2022-02-20 23:48:47,496 INFO L290 TraceCheckUtils]: 14: Hoare triple {4681#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1))} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := 1 + append_#t~post3#1;havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {4694#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) 0) 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~plist#1.offset| 0))} is VALID [2022-02-20 23:48:47,510 INFO L290 TraceCheckUtils]: 15: Hoare triple {4694#(and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) 0) 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~plist#1.offset| 0))} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L533 {4698#(exists ((|ULTIMATE.start_append_~plist#1.base| Int)) (and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0))) (= |ULTIMATE.start_append_#t~mem5#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) 0)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) 0) 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) |ULTIMATE.start_append_~item~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) |ULTIMATE.start_append_#t~mem5#1.base|)))} is VALID [2022-02-20 23:48:47,517 INFO L290 TraceCheckUtils]: 16: Hoare triple {4698#(exists ((|ULTIMATE.start_append_~plist#1.base| Int)) (and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0))) (= |ULTIMATE.start_append_#t~mem5#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) 0)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) 0) 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) |ULTIMATE.start_append_~item~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) |ULTIMATE.start_append_#t~mem5#1.base|)))} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L533-1 {4702#(exists ((|ULTIMATE.start_append_~plist#1.base| Int)) (and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0))) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) 0) 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) |ULTIMATE.start_append_~item~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) 0) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))))} is VALID [2022-02-20 23:48:47,519 INFO L290 TraceCheckUtils]: 17: Hoare triple {4702#(exists ((|ULTIMATE.start_append_~plist#1.base| Int)) (and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0))) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) 0) 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) |ULTIMATE.start_append_~item~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) 0) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {4702#(exists ((|ULTIMATE.start_append_~plist#1.base| Int)) (and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0))) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) 0) 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) |ULTIMATE.start_append_~item~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) 0) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))))} is VALID [2022-02-20 23:48:47,520 INFO L290 TraceCheckUtils]: 18: Hoare triple {4702#(exists ((|ULTIMATE.start_append_~plist#1.base| Int)) (and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0))) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) 0) 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) |ULTIMATE.start_append_~item~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) 0) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))))} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L534 {4702#(exists ((|ULTIMATE.start_append_~plist#1.base| Int)) (and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0))) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) 0) 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) |ULTIMATE.start_append_~item~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) 0) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))))} is VALID [2022-02-20 23:48:47,521 INFO L290 TraceCheckUtils]: 19: Hoare triple {4702#(exists ((|ULTIMATE.start_append_~plist#1.base| Int)) (and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0))) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) 0) 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) |ULTIMATE.start_append_~item~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) 0) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))))} assume append_#t~mem6#1.base != 0 || append_#t~mem6#1.offset != 0; {4702#(exists ((|ULTIMATE.start_append_~plist#1.base| Int)) (and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0))) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) 0) 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) |ULTIMATE.start_append_~item~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) 0) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))))} is VALID [2022-02-20 23:48:47,522 INFO L290 TraceCheckUtils]: 20: Hoare triple {4702#(exists ((|ULTIMATE.start_append_~plist#1.base| Int)) (and (<= 8 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0))) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) 0) 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) 0) |ULTIMATE.start_append_~item~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) 0) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))))} SUMMARY for call append_#t~mem7#1.base, append_#t~mem7#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L535 {4644#(and (<= 8 (select |#length| |ULTIMATE.start_append_#t~mem7#1.base|)) (= |ULTIMATE.start_append_#t~mem7#1.offset| 0))} is VALID [2022-02-20 23:48:47,523 INFO L290 TraceCheckUtils]: 21: Hoare triple {4644#(and (<= 8 (select |#length| |ULTIMATE.start_append_#t~mem7#1.base|)) (= |ULTIMATE.start_append_#t~mem7#1.offset| 0))} assume !(4 + (4 + append_#t~mem7#1.offset) <= #length[append_#t~mem7#1.base] && 0 <= 4 + append_#t~mem7#1.offset); {4637#false} is VALID [2022-02-20 23:48:47,523 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 1 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:47,523 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:48:48,027 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 84 treesize of output 80 [2022-02-20 23:48:48,043 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 135 treesize of output 123 [2022-02-20 23:48:48,334 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:48:48,338 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 24 [2022-02-20 23:48:48,434 INFO L290 TraceCheckUtils]: 21: Hoare triple {4718#(and (<= (+ |ULTIMATE.start_append_#t~mem7#1.offset| 8) (select |#length| |ULTIMATE.start_append_#t~mem7#1.base|)) (<= 0 (+ |ULTIMATE.start_append_#t~mem7#1.offset| 4)))} assume !(4 + (4 + append_#t~mem7#1.offset) <= #length[append_#t~mem7#1.base] && 0 <= 4 + append_#t~mem7#1.offset); {4637#false} is VALID [2022-02-20 23:48:48,435 INFO L290 TraceCheckUtils]: 20: Hoare triple {4722#(and (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) 4)) (<= (+ 8 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))))} SUMMARY for call append_#t~mem7#1.base, append_#t~mem7#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L535 {4718#(and (<= (+ |ULTIMATE.start_append_#t~mem7#1.offset| 8) (select |#length| |ULTIMATE.start_append_#t~mem7#1.base|)) (<= 0 (+ |ULTIMATE.start_append_#t~mem7#1.offset| 4)))} is VALID [2022-02-20 23:48:48,438 INFO L290 TraceCheckUtils]: 19: Hoare triple {4722#(and (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) 4)) (<= (+ 8 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))))} assume append_#t~mem6#1.base != 0 || append_#t~mem6#1.offset != 0; {4722#(and (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) 4)) (<= (+ 8 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))))} is VALID [2022-02-20 23:48:48,439 INFO L290 TraceCheckUtils]: 18: Hoare triple {4722#(and (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) 4)) (<= (+ 8 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))))} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L534 {4722#(and (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) 4)) (<= (+ 8 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))))} is VALID [2022-02-20 23:48:48,439 INFO L290 TraceCheckUtils]: 17: Hoare triple {4722#(and (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) 4)) (<= (+ 8 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {4722#(and (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) 4)) (<= (+ 8 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))))} is VALID [2022-02-20 23:48:48,440 INFO L290 TraceCheckUtils]: 16: Hoare triple {4735#(and (<= (+ |ULTIMATE.start_append_#t~mem5#1.offset| 8) (select |#length| |ULTIMATE.start_append_#t~mem5#1.base|)) (<= 0 (+ |ULTIMATE.start_append_#t~mem5#1.offset| 4)))} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L533-1 {4722#(and (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) 4)) (<= (+ 8 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))))} is VALID [2022-02-20 23:48:48,441 INFO L290 TraceCheckUtils]: 15: Hoare triple {4739#(and (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) 8) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|))) (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) 4)))} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L533 {4735#(and (<= (+ |ULTIMATE.start_append_#t~mem5#1.offset| 8) (select |#length| |ULTIMATE.start_append_#t~mem5#1.base|)) (<= 0 (+ |ULTIMATE.start_append_#t~mem5#1.offset| 4)))} is VALID [2022-02-20 23:48:48,442 INFO L290 TraceCheckUtils]: 14: Hoare triple {4743#(forall ((|v_ULTIMATE.start_append_~item~0#1.base_18| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_append_~item~0#1.base_18|) 0)) (and (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 4)) (forall ((v_ArrVal_309 Int)) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 8) (select (store |#length| |v_ULTIMATE.start_append_~item~0#1.base_18| v_ArrVal_309) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))))))} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := 1 + append_#t~post3#1;havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {4739#(and (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) 8) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|))) (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) 4)))} is VALID [2022-02-20 23:48:48,443 INFO L290 TraceCheckUtils]: 13: Hoare triple {4743#(forall ((|v_ULTIMATE.start_append_~item~0#1.base_18| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_append_~item~0#1.base_18|) 0)) (and (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 4)) (forall ((v_ArrVal_309 Int)) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 8) (select (store |#length| |v_ULTIMATE.start_append_~item~0#1.base_18| v_ArrVal_309) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))))))} assume !!(0 != main_#t~nondet11#1 && ~c~0 < 20);havoc main_#t~nondet11#1; {4743#(forall ((|v_ULTIMATE.start_append_~item~0#1.base_18| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_append_~item~0#1.base_18|) 0)) (and (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 4)) (forall ((v_ArrVal_309 Int)) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 8) (select (store |#length| |v_ULTIMATE.start_append_~item~0#1.base_18| v_ArrVal_309) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))))))} is VALID [2022-02-20 23:48:48,444 INFO L290 TraceCheckUtils]: 12: Hoare triple {4743#(forall ((|v_ULTIMATE.start_append_~item~0#1.base_18| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_append_~item~0#1.base_18|) 0)) (and (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 4)) (forall ((v_ArrVal_309 Int)) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 8) (select (store |#length| |v_ULTIMATE.start_append_~item~0#1.base_18| v_ArrVal_309) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))))))} assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647; {4743#(forall ((|v_ULTIMATE.start_append_~item~0#1.base_18| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_append_~item~0#1.base_18|) 0)) (and (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 4)) (forall ((v_ArrVal_309 Int)) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 8) (select (store |#length| |v_ULTIMATE.start_append_~item~0#1.base_18| v_ArrVal_309) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))))))} is VALID [2022-02-20 23:48:48,446 INFO L290 TraceCheckUtils]: 11: Hoare triple {4743#(forall ((|v_ULTIMATE.start_append_~item~0#1.base_18| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_append_~item~0#1.base_18|) 0)) (and (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 4)) (forall ((v_ArrVal_309 Int)) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 8) (select (store |#length| |v_ULTIMATE.start_append_~item~0#1.base_18| v_ArrVal_309) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))))))} assume { :end_inline_append } true;main_#t~post12#1 := main_~length~0#1;main_~length~0#1 := 1 + main_#t~post12#1;havoc main_#t~post12#1; {4743#(forall ((|v_ULTIMATE.start_append_~item~0#1.base_18| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_append_~item~0#1.base_18|) 0)) (and (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 4)) (forall ((v_ArrVal_309 Int)) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 8) (select (store |#length| |v_ULTIMATE.start_append_~item~0#1.base_18| v_ArrVal_309) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))))))} is VALID [2022-02-20 23:48:48,447 INFO L290 TraceCheckUtils]: 10: Hoare triple {4756#(forall ((|v_ULTIMATE.start_append_~item~0#1.base_18| Int)) (or (and (forall ((v_ArrVal_309 Int)) (<= (+ |ULTIMATE.start_append_~item~0#1.offset| 8) (select (store |#length| |v_ULTIMATE.start_append_~item~0#1.base_18| v_ArrVal_309) |ULTIMATE.start_append_~item~0#1.base|))) (<= 0 (+ |ULTIMATE.start_append_~item~0#1.offset| 4)) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|)) (not (= (select |#valid| |v_ULTIMATE.start_append_~item~0#1.base_18|) 0))))} SUMMARY for call write~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L537 {4743#(forall ((|v_ULTIMATE.start_append_~item~0#1.base_18| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_append_~item~0#1.base_18|) 0)) (and (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 4)) (forall ((v_ArrVal_309 Int)) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 8) (select (store |#length| |v_ULTIMATE.start_append_~item~0#1.base_18| v_ArrVal_309) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))))))} is VALID [2022-02-20 23:48:48,448 INFO L290 TraceCheckUtils]: 9: Hoare triple {4756#(forall ((|v_ULTIMATE.start_append_~item~0#1.base_18| Int)) (or (and (forall ((v_ArrVal_309 Int)) (<= (+ |ULTIMATE.start_append_~item~0#1.offset| 8) (select (store |#length| |v_ULTIMATE.start_append_~item~0#1.base_18| v_ArrVal_309) |ULTIMATE.start_append_~item~0#1.base|))) (<= 0 (+ |ULTIMATE.start_append_~item~0#1.offset| 4)) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|)) (not (= (select |#valid| |v_ULTIMATE.start_append_~item~0#1.base_18|) 0))))} havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~ite10#1.base, append_#t~ite10#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~mem8#1.base, append_#t~mem8#1.offset;havoc append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {4756#(forall ((|v_ULTIMATE.start_append_~item~0#1.base_18| Int)) (or (and (forall ((v_ArrVal_309 Int)) (<= (+ |ULTIMATE.start_append_~item~0#1.offset| 8) (select (store |#length| |v_ULTIMATE.start_append_~item~0#1.base_18| v_ArrVal_309) |ULTIMATE.start_append_~item~0#1.base|))) (<= 0 (+ |ULTIMATE.start_append_~item~0#1.offset| 4)) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|)) (not (= (select |#valid| |v_ULTIMATE.start_append_~item~0#1.base_18|) 0))))} is VALID [2022-02-20 23:48:48,449 INFO L290 TraceCheckUtils]: 8: Hoare triple {4763#(and (<= 0 (+ |ULTIMATE.start_append_~item~0#1.offset| 4)) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_#t~ite10#1.base, append_#t~ite10#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L534-3 {4756#(forall ((|v_ULTIMATE.start_append_~item~0#1.base_18| Int)) (or (and (forall ((v_ArrVal_309 Int)) (<= (+ |ULTIMATE.start_append_~item~0#1.offset| 8) (select (store |#length| |v_ULTIMATE.start_append_~item~0#1.base_18| v_ArrVal_309) |ULTIMATE.start_append_~item~0#1.base|))) (<= 0 (+ |ULTIMATE.start_append_~item~0#1.offset| 4)) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|)) (not (= (select |#valid| |v_ULTIMATE.start_append_~item~0#1.base_18|) 0))))} is VALID [2022-02-20 23:48:48,450 INFO L290 TraceCheckUtils]: 7: Hoare triple {4763#(and (<= 0 (+ |ULTIMATE.start_append_~item~0#1.offset| 4)) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} assume !(append_#t~mem6#1.base != 0 || append_#t~mem6#1.offset != 0);call append_#t~malloc9#1.base, append_#t~malloc9#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite10#1.base, append_#t~ite10#1.offset := append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {4763#(and (<= 0 (+ |ULTIMATE.start_append_~item~0#1.offset| 4)) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:48,451 INFO L290 TraceCheckUtils]: 6: Hoare triple {4763#(and (<= 0 (+ |ULTIMATE.start_append_~item~0#1.offset| 4)) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L534 {4763#(and (<= 0 (+ |ULTIMATE.start_append_~item~0#1.offset| 4)) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:48,451 INFO L290 TraceCheckUtils]: 5: Hoare triple {4763#(and (<= 0 (+ |ULTIMATE.start_append_~item~0#1.offset| 4)) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {4763#(and (<= 0 (+ |ULTIMATE.start_append_~item~0#1.offset| 4)) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:48,452 INFO L290 TraceCheckUtils]: 4: Hoare triple {4763#(and (<= 0 (+ |ULTIMATE.start_append_~item~0#1.offset| 4)) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L533-1 {4763#(and (<= 0 (+ |ULTIMATE.start_append_~item~0#1.offset| 4)) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:48,452 INFO L290 TraceCheckUtils]: 3: Hoare triple {4763#(and (<= 0 (+ |ULTIMATE.start_append_~item~0#1.offset| 4)) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L533 {4763#(and (<= 0 (+ |ULTIMATE.start_append_~item~0#1.offset| 4)) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:48,453 INFO L290 TraceCheckUtils]: 2: Hoare triple {4636#true} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := 1 + append_#t~post3#1;havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {4763#(and (<= 0 (+ |ULTIMATE.start_append_~item~0#1.offset| 4)) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:48,453 INFO L290 TraceCheckUtils]: 1: Hoare triple {4636#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post12#1, main_#t~nondet11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~post18#1, main_~next~0#1.base, main_~next~0#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~post22#1, main_~next~1#1.base, main_~next~1#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset, main_~length~0#1;call main_~#list~0#1.base, main_~#list~0#1.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, main_~#list~0#1.base, main_~#list~0#1.offset, 4);main_~length~0#1 := 0; {4636#true} is VALID [2022-02-20 23:48:48,453 INFO L290 TraceCheckUtils]: 0: Hoare triple {4636#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(16, 2);~c~0 := 0; {4636#true} is VALID [2022-02-20 23:48:48,454 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 1 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:48,454 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [880174004] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:48:48,454 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:48:48,454 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 9, 8] total 22 [2022-02-20 23:48:48,455 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1977002380] [2022-02-20 23:48:48,455 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:48:48,455 INFO L78 Accepts]: Start accepts. Automaton has has 23 states, 22 states have (on average 2.8181818181818183) internal successors, (62), 23 states have internal predecessors, (62), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 22 [2022-02-20 23:48:48,456 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:48,456 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 23 states, 22 states have (on average 2.8181818181818183) internal successors, (62), 23 states have internal predecessors, (62), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:48,520 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 62 edges. 62 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:48,520 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 23 states [2022-02-20 23:48:48,520 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:48,521 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2022-02-20 23:48:48,521 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=70, Invalid=436, Unknown=0, NotChecked=0, Total=506 [2022-02-20 23:48:48,521 INFO L87 Difference]: Start difference. First operand 75 states and 80 transitions. Second operand has 23 states, 22 states have (on average 2.8181818181818183) internal successors, (62), 23 states have internal predecessors, (62), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:50,445 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:50,446 INFO L93 Difference]: Finished difference Result 179 states and 188 transitions. [2022-02-20 23:48:50,446 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2022-02-20 23:48:50,446 INFO L78 Accepts]: Start accepts. Automaton has has 23 states, 22 states have (on average 2.8181818181818183) internal successors, (62), 23 states have internal predecessors, (62), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 22 [2022-02-20 23:48:50,446 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:50,446 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 22 states have (on average 2.8181818181818183) internal successors, (62), 23 states have internal predecessors, (62), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:50,448 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 189 transitions. [2022-02-20 23:48:50,448 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 22 states have (on average 2.8181818181818183) internal successors, (62), 23 states have internal predecessors, (62), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:50,449 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 189 transitions. [2022-02-20 23:48:50,449 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 23 states and 189 transitions. [2022-02-20 23:48:50,653 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 189 edges. 189 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:50,655 INFO L225 Difference]: With dead ends: 179 [2022-02-20 23:48:50,655 INFO L226 Difference]: Without dead ends: 179 [2022-02-20 23:48:50,656 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 64 GetRequests, 29 SyntacticMatches, 0 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 244 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=251, Invalid=1081, Unknown=0, NotChecked=0, Total=1332 [2022-02-20 23:48:50,656 INFO L933 BasicCegarLoop]: 46 mSDtfsCounter, 338 mSDsluCounter, 522 mSDsCounter, 0 mSdLazyCounter, 488 mSolverCounterSat, 35 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 338 SdHoareTripleChecker+Valid, 568 SdHoareTripleChecker+Invalid, 748 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 35 IncrementalHoareTripleChecker+Valid, 488 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 225 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:50,656 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [338 Valid, 568 Invalid, 748 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [35 Valid, 488 Invalid, 0 Unknown, 225 Unchecked, 0.5s Time] [2022-02-20 23:48:50,657 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 179 states. [2022-02-20 23:48:50,658 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 179 to 75. [2022-02-20 23:48:50,659 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:50,659 INFO L82 GeneralOperation]: Start isEquivalent. First operand 179 states. Second operand has 75 states, 60 states have (on average 1.3166666666666667) internal successors, (79), 74 states have internal predecessors, (79), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:50,659 INFO L74 IsIncluded]: Start isIncluded. First operand 179 states. Second operand has 75 states, 60 states have (on average 1.3166666666666667) internal successors, (79), 74 states have internal predecessors, (79), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:50,659 INFO L87 Difference]: Start difference. First operand 179 states. Second operand has 75 states, 60 states have (on average 1.3166666666666667) internal successors, (79), 74 states have internal predecessors, (79), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:50,662 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:50,662 INFO L93 Difference]: Finished difference Result 179 states and 188 transitions. [2022-02-20 23:48:50,662 INFO L276 IsEmpty]: Start isEmpty. Operand 179 states and 188 transitions. [2022-02-20 23:48:50,663 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:50,663 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:50,663 INFO L74 IsIncluded]: Start isIncluded. First operand has 75 states, 60 states have (on average 1.3166666666666667) internal successors, (79), 74 states have internal predecessors, (79), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 179 states. [2022-02-20 23:48:50,663 INFO L87 Difference]: Start difference. First operand has 75 states, 60 states have (on average 1.3166666666666667) internal successors, (79), 74 states have internal predecessors, (79), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 179 states. [2022-02-20 23:48:50,666 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:50,666 INFO L93 Difference]: Finished difference Result 179 states and 188 transitions. [2022-02-20 23:48:50,667 INFO L276 IsEmpty]: Start isEmpty. Operand 179 states and 188 transitions. [2022-02-20 23:48:50,667 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:50,667 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:50,667 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:50,667 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:50,668 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 75 states, 60 states have (on average 1.3166666666666667) internal successors, (79), 74 states have internal predecessors, (79), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:50,668 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 75 states to 75 states and 79 transitions. [2022-02-20 23:48:50,669 INFO L78 Accepts]: Start accepts. Automaton has 75 states and 79 transitions. Word has length 22 [2022-02-20 23:48:50,669 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:50,669 INFO L470 AbstractCegarLoop]: Abstraction has 75 states and 79 transitions. [2022-02-20 23:48:50,669 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 23 states, 22 states have (on average 2.8181818181818183) internal successors, (62), 23 states have internal predecessors, (62), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:50,669 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 79 transitions. [2022-02-20 23:48:50,670 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-02-20 23:48:50,670 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:50,670 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:50,687 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2022-02-20 23:48:50,875 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable12 [2022-02-20 23:48:50,876 INFO L402 AbstractCegarLoop]: === Iteration 14 === Targeting ULTIMATE.startErr29ASSERT_VIOLATIONMEMORY_FREE === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 40 more)] === [2022-02-20 23:48:50,876 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:50,876 INFO L85 PathProgramCache]: Analyzing trace with hash -1613867298, now seen corresponding path program 1 times [2022-02-20 23:48:50,876 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:50,876 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2085594546] [2022-02-20 23:48:50,876 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:50,876 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:50,903 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:50,933 INFO L290 TraceCheckUtils]: 0: Hoare triple {5427#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(16, 2);~c~0 := 0; {5427#true} is VALID [2022-02-20 23:48:50,934 INFO L290 TraceCheckUtils]: 1: Hoare triple {5427#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post12#1, main_#t~nondet11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~post18#1, main_~next~0#1.base, main_~next~0#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~post22#1, main_~next~1#1.base, main_~next~1#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset, main_~length~0#1;call main_~#list~0#1.base, main_~#list~0#1.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, main_~#list~0#1.base, main_~#list~0#1.offset, 4);main_~length~0#1 := 0; {5427#true} is VALID [2022-02-20 23:48:50,934 INFO L290 TraceCheckUtils]: 2: Hoare triple {5427#true} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := 1 + append_#t~post3#1;havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {5427#true} is VALID [2022-02-20 23:48:50,934 INFO L290 TraceCheckUtils]: 3: Hoare triple {5427#true} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L533 {5427#true} is VALID [2022-02-20 23:48:50,934 INFO L290 TraceCheckUtils]: 4: Hoare triple {5427#true} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L533-1 {5427#true} is VALID [2022-02-20 23:48:50,935 INFO L290 TraceCheckUtils]: 5: Hoare triple {5427#true} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {5427#true} is VALID [2022-02-20 23:48:50,935 INFO L290 TraceCheckUtils]: 6: Hoare triple {5427#true} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L534 {5427#true} is VALID [2022-02-20 23:48:50,935 INFO L290 TraceCheckUtils]: 7: Hoare triple {5427#true} assume !(append_#t~mem6#1.base != 0 || append_#t~mem6#1.offset != 0);call append_#t~malloc9#1.base, append_#t~malloc9#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite10#1.base, append_#t~ite10#1.offset := append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {5427#true} is VALID [2022-02-20 23:48:50,935 INFO L290 TraceCheckUtils]: 8: Hoare triple {5427#true} SUMMARY for call write~$Pointer$(append_#t~ite10#1.base, append_#t~ite10#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L534-3 {5427#true} is VALID [2022-02-20 23:48:50,935 INFO L290 TraceCheckUtils]: 9: Hoare triple {5427#true} havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~ite10#1.base, append_#t~ite10#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~mem8#1.base, append_#t~mem8#1.offset;havoc append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {5427#true} is VALID [2022-02-20 23:48:50,936 INFO L290 TraceCheckUtils]: 10: Hoare triple {5427#true} SUMMARY for call write~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L537 {5427#true} is VALID [2022-02-20 23:48:50,936 INFO L290 TraceCheckUtils]: 11: Hoare triple {5427#true} assume { :end_inline_append } true;main_#t~post12#1 := main_~length~0#1;main_~length~0#1 := 1 + main_#t~post12#1;havoc main_#t~post12#1; {5427#true} is VALID [2022-02-20 23:48:50,936 INFO L290 TraceCheckUtils]: 12: Hoare triple {5427#true} assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647; {5427#true} is VALID [2022-02-20 23:48:50,936 INFO L290 TraceCheckUtils]: 13: Hoare triple {5427#true} assume !(0 != main_#t~nondet11#1 && ~c~0 < 20);havoc main_#t~nondet11#1; {5427#true} is VALID [2022-02-20 23:48:50,936 INFO L290 TraceCheckUtils]: 14: Hoare triple {5427#true} assume main_~length~0#1 > 0; {5427#true} is VALID [2022-02-20 23:48:50,936 INFO L290 TraceCheckUtils]: 15: Hoare triple {5427#true} assume !(main_~length~0#1 < 0); {5427#true} is VALID [2022-02-20 23:48:50,937 INFO L290 TraceCheckUtils]: 16: Hoare triple {5427#true} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L548-2 {5429#(= |ULTIMATE.start_main_#t~mem15#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))} is VALID [2022-02-20 23:48:50,938 INFO L290 TraceCheckUtils]: 17: Hoare triple {5429#(= |ULTIMATE.start_main_#t~mem15#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))} SUMMARY for call main_#t~mem16#1.base, main_#t~mem16#1.offset := read~$Pointer$(main_#t~mem15#1.base, main_#t~mem15#1.offset, 4); srcloc: L551 {5430#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1)} is VALID [2022-02-20 23:48:50,938 INFO L290 TraceCheckUtils]: 18: Hoare triple {5430#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1)} main_~next~0#1.base, main_~next~0#1.offset := main_#t~mem16#1.base, main_#t~mem16#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset;havoc main_#t~mem16#1.base, main_#t~mem16#1.offset; {5430#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1)} is VALID [2022-02-20 23:48:50,939 INFO L290 TraceCheckUtils]: 19: Hoare triple {5430#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1)} SUMMARY for call main_#t~mem17#1.base, main_#t~mem17#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L552 {5431#(= 1 (select |#valid| |ULTIMATE.start_main_#t~mem17#1.base|))} is VALID [2022-02-20 23:48:50,939 INFO L290 TraceCheckUtils]: 20: Hoare triple {5431#(= 1 (select |#valid| |ULTIMATE.start_main_#t~mem17#1.base|))} assume 0 == main_#t~mem17#1.offset; {5431#(= 1 (select |#valid| |ULTIMATE.start_main_#t~mem17#1.base|))} is VALID [2022-02-20 23:48:50,939 INFO L290 TraceCheckUtils]: 21: Hoare triple {5431#(= 1 (select |#valid| |ULTIMATE.start_main_#t~mem17#1.base|))} assume main_#t~mem17#1.base < #StackHeapBarrier; {5431#(= 1 (select |#valid| |ULTIMATE.start_main_#t~mem17#1.base|))} is VALID [2022-02-20 23:48:50,940 INFO L290 TraceCheckUtils]: 22: Hoare triple {5431#(= 1 (select |#valid| |ULTIMATE.start_main_#t~mem17#1.base|))} assume !(0 == main_#t~mem17#1.base || 1 == #valid[main_#t~mem17#1.base]); {5428#false} is VALID [2022-02-20 23:48:50,940 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:50,940 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:50,941 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2085594546] [2022-02-20 23:48:50,941 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2085594546] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:50,941 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:50,941 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:48:50,941 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [322227949] [2022-02-20 23:48:50,941 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:50,942 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 5.75) internal successors, (23), 5 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 23 [2022-02-20 23:48:50,942 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:50,942 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 5.75) internal successors, (23), 5 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:50,958 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:50,959 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:48:50,959 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:50,959 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:48:50,959 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:48:50,960 INFO L87 Difference]: Start difference. First operand 75 states and 79 transitions. Second operand has 5 states, 4 states have (on average 5.75) internal successors, (23), 5 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:51,138 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:51,138 INFO L93 Difference]: Finished difference Result 74 states and 78 transitions. [2022-02-20 23:48:51,138 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:48:51,139 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 5.75) internal successors, (23), 5 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 23 [2022-02-20 23:48:51,139 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:51,139 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 5.75) internal successors, (23), 5 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:51,139 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 57 transitions. [2022-02-20 23:48:51,139 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 5.75) internal successors, (23), 5 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:51,140 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 57 transitions. [2022-02-20 23:48:51,140 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 57 transitions. [2022-02-20 23:48:51,175 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:51,176 INFO L225 Difference]: With dead ends: 74 [2022-02-20 23:48:51,176 INFO L226 Difference]: Without dead ends: 74 [2022-02-20 23:48:51,177 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=15, Invalid=27, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:48:51,177 INFO L933 BasicCegarLoop]: 52 mSDtfsCounter, 4 mSDsluCounter, 76 mSDsCounter, 0 mSdLazyCounter, 86 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 4 SdHoareTripleChecker+Valid, 128 SdHoareTripleChecker+Invalid, 86 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 86 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:51,178 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [4 Valid, 128 Invalid, 86 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 86 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:48:51,178 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states. [2022-02-20 23:48:51,179 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 74. [2022-02-20 23:48:51,179 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:51,180 INFO L82 GeneralOperation]: Start isEquivalent. First operand 74 states. Second operand has 74 states, 60 states have (on average 1.3) internal successors, (78), 73 states have internal predecessors, (78), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:51,180 INFO L74 IsIncluded]: Start isIncluded. First operand 74 states. Second operand has 74 states, 60 states have (on average 1.3) internal successors, (78), 73 states have internal predecessors, (78), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:51,180 INFO L87 Difference]: Start difference. First operand 74 states. Second operand has 74 states, 60 states have (on average 1.3) internal successors, (78), 73 states have internal predecessors, (78), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:51,181 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:51,181 INFO L93 Difference]: Finished difference Result 74 states and 78 transitions. [2022-02-20 23:48:51,181 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 78 transitions. [2022-02-20 23:48:51,182 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:51,182 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:51,182 INFO L74 IsIncluded]: Start isIncluded. First operand has 74 states, 60 states have (on average 1.3) internal successors, (78), 73 states have internal predecessors, (78), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 74 states. [2022-02-20 23:48:51,182 INFO L87 Difference]: Start difference. First operand has 74 states, 60 states have (on average 1.3) internal successors, (78), 73 states have internal predecessors, (78), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 74 states. [2022-02-20 23:48:51,183 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:51,183 INFO L93 Difference]: Finished difference Result 74 states and 78 transitions. [2022-02-20 23:48:51,184 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 78 transitions. [2022-02-20 23:48:51,184 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:51,184 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:51,184 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:51,184 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:51,184 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 74 states, 60 states have (on average 1.3) internal successors, (78), 73 states have internal predecessors, (78), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:51,185 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 78 transitions. [2022-02-20 23:48:51,185 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 78 transitions. Word has length 23 [2022-02-20 23:48:51,186 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:51,186 INFO L470 AbstractCegarLoop]: Abstraction has 74 states and 78 transitions. [2022-02-20 23:48:51,186 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 5.75) internal successors, (23), 5 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:51,186 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 78 transitions. [2022-02-20 23:48:51,186 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-02-20 23:48:51,186 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:51,187 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:51,187 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable13 [2022-02-20 23:48:51,187 INFO L402 AbstractCegarLoop]: === Iteration 15 === Targeting ULTIMATE.startErr30REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 40 more)] === [2022-02-20 23:48:51,187 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:51,188 INFO L85 PathProgramCache]: Analyzing trace with hash 1509721432, now seen corresponding path program 1 times [2022-02-20 23:48:51,188 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:51,188 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [536520681] [2022-02-20 23:48:51,188 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:51,188 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:51,218 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:51,272 INFO L290 TraceCheckUtils]: 0: Hoare triple {5734#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(16, 2);~c~0 := 0; {5734#true} is VALID [2022-02-20 23:48:51,273 INFO L290 TraceCheckUtils]: 1: Hoare triple {5734#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post12#1, main_#t~nondet11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~post18#1, main_~next~0#1.base, main_~next~0#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~post22#1, main_~next~1#1.base, main_~next~1#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset, main_~length~0#1;call main_~#list~0#1.base, main_~#list~0#1.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, main_~#list~0#1.base, main_~#list~0#1.offset, 4);main_~length~0#1 := 0; {5736#(= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1)} is VALID [2022-02-20 23:48:51,274 INFO L290 TraceCheckUtils]: 2: Hoare triple {5736#(= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1)} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := 1 + append_#t~post3#1;havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {5737#(and (not (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:51,275 INFO L290 TraceCheckUtils]: 3: Hoare triple {5737#(and (not (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L533 {5737#(and (not (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:51,276 INFO L290 TraceCheckUtils]: 4: Hoare triple {5737#(and (not (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L533-1 {5737#(and (not (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:51,276 INFO L290 TraceCheckUtils]: 5: Hoare triple {5737#(and (not (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {5737#(and (not (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:51,277 INFO L290 TraceCheckUtils]: 6: Hoare triple {5737#(and (not (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L534 {5737#(and (not (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:51,278 INFO L290 TraceCheckUtils]: 7: Hoare triple {5737#(and (not (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} assume !(append_#t~mem6#1.base != 0 || append_#t~mem6#1.offset != 0);call append_#t~malloc9#1.base, append_#t~malloc9#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite10#1.base, append_#t~ite10#1.offset := append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {5737#(and (not (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:51,279 INFO L290 TraceCheckUtils]: 8: Hoare triple {5737#(and (not (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_#t~ite10#1.base, append_#t~ite10#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L534-3 {5737#(and (not (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:51,279 INFO L290 TraceCheckUtils]: 9: Hoare triple {5737#(and (not (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~ite10#1.base, append_#t~ite10#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~mem8#1.base, append_#t~mem8#1.offset;havoc append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {5737#(and (not (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:48:51,280 INFO L290 TraceCheckUtils]: 10: Hoare triple {5737#(and (not (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L537 {5738#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (not (= |ULTIMATE.start_main_~#list~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))))} is VALID [2022-02-20 23:48:51,281 INFO L290 TraceCheckUtils]: 11: Hoare triple {5738#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (not (= |ULTIMATE.start_main_~#list~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))))} assume { :end_inline_append } true;main_#t~post12#1 := main_~length~0#1;main_~length~0#1 := 1 + main_#t~post12#1;havoc main_#t~post12#1; {5738#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (not (= |ULTIMATE.start_main_~#list~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))))} is VALID [2022-02-20 23:48:51,282 INFO L290 TraceCheckUtils]: 12: Hoare triple {5738#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (not (= |ULTIMATE.start_main_~#list~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))))} assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647; {5738#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (not (= |ULTIMATE.start_main_~#list~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))))} is VALID [2022-02-20 23:48:51,282 INFO L290 TraceCheckUtils]: 13: Hoare triple {5738#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (not (= |ULTIMATE.start_main_~#list~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))))} assume !(0 != main_#t~nondet11#1 && ~c~0 < 20);havoc main_#t~nondet11#1; {5738#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (not (= |ULTIMATE.start_main_~#list~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))))} is VALID [2022-02-20 23:48:51,283 INFO L290 TraceCheckUtils]: 14: Hoare triple {5738#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (not (= |ULTIMATE.start_main_~#list~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))))} assume main_~length~0#1 > 0; {5738#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (not (= |ULTIMATE.start_main_~#list~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))))} is VALID [2022-02-20 23:48:51,283 INFO L290 TraceCheckUtils]: 15: Hoare triple {5738#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (not (= |ULTIMATE.start_main_~#list~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))))} assume !(main_~length~0#1 < 0); {5738#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (not (= |ULTIMATE.start_main_~#list~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))))} is VALID [2022-02-20 23:48:51,283 INFO L290 TraceCheckUtils]: 16: Hoare triple {5738#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (not (= |ULTIMATE.start_main_~#list~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))))} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L548-2 {5738#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (not (= |ULTIMATE.start_main_~#list~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))))} is VALID [2022-02-20 23:48:51,284 INFO L290 TraceCheckUtils]: 17: Hoare triple {5738#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (not (= |ULTIMATE.start_main_~#list~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))))} SUMMARY for call main_#t~mem16#1.base, main_#t~mem16#1.offset := read~$Pointer$(main_#t~mem15#1.base, main_#t~mem15#1.offset, 4); srcloc: L551 {5738#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (not (= |ULTIMATE.start_main_~#list~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))))} is VALID [2022-02-20 23:48:51,285 INFO L290 TraceCheckUtils]: 18: Hoare triple {5738#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (not (= |ULTIMATE.start_main_~#list~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))))} main_~next~0#1.base, main_~next~0#1.offset := main_#t~mem16#1.base, main_#t~mem16#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset;havoc main_#t~mem16#1.base, main_#t~mem16#1.offset; {5738#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (not (= |ULTIMATE.start_main_~#list~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))))} is VALID [2022-02-20 23:48:51,286 INFO L290 TraceCheckUtils]: 19: Hoare triple {5738#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (not (= |ULTIMATE.start_main_~#list~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))))} SUMMARY for call main_#t~mem17#1.base, main_#t~mem17#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L552 {5739#(and (not (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_main_#t~mem17#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1))} is VALID [2022-02-20 23:48:51,286 INFO L290 TraceCheckUtils]: 20: Hoare triple {5739#(and (not (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_main_#t~mem17#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1))} assume 0 == main_#t~mem17#1.offset; {5739#(and (not (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_main_#t~mem17#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1))} is VALID [2022-02-20 23:48:51,287 INFO L290 TraceCheckUtils]: 21: Hoare triple {5739#(and (not (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_main_#t~mem17#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1))} assume main_#t~mem17#1.base < #StackHeapBarrier; {5739#(and (not (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_main_#t~mem17#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1))} is VALID [2022-02-20 23:48:51,287 INFO L290 TraceCheckUtils]: 22: Hoare triple {5739#(and (not (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_main_#t~mem17#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1))} assume 0 == main_#t~mem17#1.base || 1 == #valid[main_#t~mem17#1.base];call ULTIMATE.dealloc(main_#t~mem17#1.base, main_#t~mem17#1.offset);havoc main_#t~mem17#1.base, main_#t~mem17#1.offset; {5736#(= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1)} is VALID [2022-02-20 23:48:51,288 INFO L290 TraceCheckUtils]: 23: Hoare triple {5736#(= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1)} assume !(1 == #valid[main_~#list~0#1.base]); {5735#false} is VALID [2022-02-20 23:48:51,288 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:51,288 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:51,288 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [536520681] [2022-02-20 23:48:51,288 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [536520681] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:51,288 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:51,289 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:48:51,289 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [577043494] [2022-02-20 23:48:51,289 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:51,289 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 4.8) internal successors, (24), 6 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 24 [2022-02-20 23:48:51,289 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:51,290 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 4.8) internal successors, (24), 6 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:51,309 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:51,310 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:48:51,310 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:51,310 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:48:51,310 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:48:51,310 INFO L87 Difference]: Start difference. First operand 74 states and 78 transitions. Second operand has 6 states, 5 states have (on average 4.8) internal successors, (24), 6 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:51,497 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:51,497 INFO L93 Difference]: Finished difference Result 73 states and 77 transitions. [2022-02-20 23:48:51,497 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:48:51,498 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 4.8) internal successors, (24), 6 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 24 [2022-02-20 23:48:51,498 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:51,498 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 4.8) internal successors, (24), 6 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:51,499 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 57 transitions. [2022-02-20 23:48:51,499 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 4.8) internal successors, (24), 6 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:51,499 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 57 transitions. [2022-02-20 23:48:51,499 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 57 transitions. [2022-02-20 23:48:51,560 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:51,561 INFO L225 Difference]: With dead ends: 73 [2022-02-20 23:48:51,561 INFO L226 Difference]: Without dead ends: 73 [2022-02-20 23:48:51,561 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 9 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=29, Invalid=43, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:48:51,561 INFO L933 BasicCegarLoop]: 26 mSDtfsCounter, 79 mSDsluCounter, 34 mSDsCounter, 0 mSdLazyCounter, 78 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 79 SdHoareTripleChecker+Valid, 60 SdHoareTripleChecker+Invalid, 91 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 78 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:51,562 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [79 Valid, 60 Invalid, 91 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 78 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:48:51,562 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 73 states. [2022-02-20 23:48:51,563 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 73 to 73. [2022-02-20 23:48:51,563 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:51,564 INFO L82 GeneralOperation]: Start isEquivalent. First operand 73 states. Second operand has 73 states, 60 states have (on average 1.2833333333333334) internal successors, (77), 72 states have internal predecessors, (77), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:51,564 INFO L74 IsIncluded]: Start isIncluded. First operand 73 states. Second operand has 73 states, 60 states have (on average 1.2833333333333334) internal successors, (77), 72 states have internal predecessors, (77), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:51,564 INFO L87 Difference]: Start difference. First operand 73 states. Second operand has 73 states, 60 states have (on average 1.2833333333333334) internal successors, (77), 72 states have internal predecessors, (77), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:51,565 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:51,565 INFO L93 Difference]: Finished difference Result 73 states and 77 transitions. [2022-02-20 23:48:51,565 INFO L276 IsEmpty]: Start isEmpty. Operand 73 states and 77 transitions. [2022-02-20 23:48:51,566 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:51,566 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:51,566 INFO L74 IsIncluded]: Start isIncluded. First operand has 73 states, 60 states have (on average 1.2833333333333334) internal successors, (77), 72 states have internal predecessors, (77), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 73 states. [2022-02-20 23:48:51,566 INFO L87 Difference]: Start difference. First operand has 73 states, 60 states have (on average 1.2833333333333334) internal successors, (77), 72 states have internal predecessors, (77), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 73 states. [2022-02-20 23:48:51,567 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:51,567 INFO L93 Difference]: Finished difference Result 73 states and 77 transitions. [2022-02-20 23:48:51,567 INFO L276 IsEmpty]: Start isEmpty. Operand 73 states and 77 transitions. [2022-02-20 23:48:51,568 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:51,568 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:51,568 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:51,568 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:51,568 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 73 states, 60 states have (on average 1.2833333333333334) internal successors, (77), 72 states have internal predecessors, (77), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:51,569 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 73 states to 73 states and 77 transitions. [2022-02-20 23:48:51,569 INFO L78 Accepts]: Start accepts. Automaton has 73 states and 77 transitions. Word has length 24 [2022-02-20 23:48:51,570 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:51,570 INFO L470 AbstractCegarLoop]: Abstraction has 73 states and 77 transitions. [2022-02-20 23:48:51,570 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 4.8) internal successors, (24), 6 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:51,570 INFO L276 IsEmpty]: Start isEmpty. Operand 73 states and 77 transitions. [2022-02-20 23:48:51,570 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-02-20 23:48:51,570 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:51,571 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:51,571 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable14 [2022-02-20 23:48:51,571 INFO L402 AbstractCegarLoop]: === Iteration 16 === Targeting ULTIMATE.startErr31REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 40 more)] === [2022-02-20 23:48:51,571 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:51,571 INFO L85 PathProgramCache]: Analyzing trace with hash 1509721433, now seen corresponding path program 1 times [2022-02-20 23:48:51,572 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:51,572 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [701868227] [2022-02-20 23:48:51,572 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:51,572 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:51,592 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:51,625 INFO L290 TraceCheckUtils]: 0: Hoare triple {6040#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(16, 2);~c~0 := 0; {6040#true} is VALID [2022-02-20 23:48:51,626 INFO L290 TraceCheckUtils]: 1: Hoare triple {6040#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post12#1, main_#t~nondet11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~post18#1, main_~next~0#1.base, main_~next~0#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~post22#1, main_~next~1#1.base, main_~next~1#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset, main_~length~0#1;call main_~#list~0#1.base, main_~#list~0#1.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, main_~#list~0#1.base, main_~#list~0#1.offset, 4);main_~length~0#1 := 0; {6042#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} is VALID [2022-02-20 23:48:51,626 INFO L290 TraceCheckUtils]: 2: Hoare triple {6042#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := 1 + append_#t~post3#1;havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {6042#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} is VALID [2022-02-20 23:48:51,626 INFO L290 TraceCheckUtils]: 3: Hoare triple {6042#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L533 {6042#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} is VALID [2022-02-20 23:48:51,627 INFO L290 TraceCheckUtils]: 4: Hoare triple {6042#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L533-1 {6042#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} is VALID [2022-02-20 23:48:51,627 INFO L290 TraceCheckUtils]: 5: Hoare triple {6042#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {6042#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} is VALID [2022-02-20 23:48:51,627 INFO L290 TraceCheckUtils]: 6: Hoare triple {6042#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L534 {6042#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} is VALID [2022-02-20 23:48:51,628 INFO L290 TraceCheckUtils]: 7: Hoare triple {6042#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} assume !(append_#t~mem6#1.base != 0 || append_#t~mem6#1.offset != 0);call append_#t~malloc9#1.base, append_#t~malloc9#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite10#1.base, append_#t~ite10#1.offset := append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {6042#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} is VALID [2022-02-20 23:48:51,628 INFO L290 TraceCheckUtils]: 8: Hoare triple {6042#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} SUMMARY for call write~$Pointer$(append_#t~ite10#1.base, append_#t~ite10#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L534-3 {6042#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} is VALID [2022-02-20 23:48:51,628 INFO L290 TraceCheckUtils]: 9: Hoare triple {6042#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~ite10#1.base, append_#t~ite10#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~mem8#1.base, append_#t~mem8#1.offset;havoc append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {6042#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} is VALID [2022-02-20 23:48:51,629 INFO L290 TraceCheckUtils]: 10: Hoare triple {6042#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} SUMMARY for call write~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L537 {6042#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} is VALID [2022-02-20 23:48:51,629 INFO L290 TraceCheckUtils]: 11: Hoare triple {6042#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} assume { :end_inline_append } true;main_#t~post12#1 := main_~length~0#1;main_~length~0#1 := 1 + main_#t~post12#1;havoc main_#t~post12#1; {6042#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} is VALID [2022-02-20 23:48:51,630 INFO L290 TraceCheckUtils]: 12: Hoare triple {6042#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647; {6042#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} is VALID [2022-02-20 23:48:51,630 INFO L290 TraceCheckUtils]: 13: Hoare triple {6042#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} assume !(0 != main_#t~nondet11#1 && ~c~0 < 20);havoc main_#t~nondet11#1; {6042#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} is VALID [2022-02-20 23:48:51,630 INFO L290 TraceCheckUtils]: 14: Hoare triple {6042#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} assume main_~length~0#1 > 0; {6042#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} is VALID [2022-02-20 23:48:51,631 INFO L290 TraceCheckUtils]: 15: Hoare triple {6042#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} assume !(main_~length~0#1 < 0); {6042#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} is VALID [2022-02-20 23:48:51,631 INFO L290 TraceCheckUtils]: 16: Hoare triple {6042#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L548-2 {6043#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~#list~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~#list~0#1.base|)))} is VALID [2022-02-20 23:48:51,632 INFO L290 TraceCheckUtils]: 17: Hoare triple {6043#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~#list~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~#list~0#1.base|)))} SUMMARY for call main_#t~mem16#1.base, main_#t~mem16#1.offset := read~$Pointer$(main_#t~mem15#1.base, main_#t~mem15#1.offset, 4); srcloc: L551 {6043#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~#list~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~#list~0#1.base|)))} is VALID [2022-02-20 23:48:51,632 INFO L290 TraceCheckUtils]: 18: Hoare triple {6043#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~#list~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~#list~0#1.base|)))} main_~next~0#1.base, main_~next~0#1.offset := main_#t~mem16#1.base, main_#t~mem16#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset;havoc main_#t~mem16#1.base, main_#t~mem16#1.offset; {6043#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~#list~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~#list~0#1.base|)))} is VALID [2022-02-20 23:48:51,633 INFO L290 TraceCheckUtils]: 19: Hoare triple {6043#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~#list~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~#list~0#1.base|)))} SUMMARY for call main_#t~mem17#1.base, main_#t~mem17#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L552 {6043#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~#list~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~#list~0#1.base|)))} is VALID [2022-02-20 23:48:51,633 INFO L290 TraceCheckUtils]: 20: Hoare triple {6043#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~#list~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~#list~0#1.base|)))} assume 0 == main_#t~mem17#1.offset; {6043#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~#list~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~#list~0#1.base|)))} is VALID [2022-02-20 23:48:51,634 INFO L290 TraceCheckUtils]: 21: Hoare triple {6043#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~#list~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~#list~0#1.base|)))} assume main_#t~mem17#1.base < #StackHeapBarrier; {6043#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~#list~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~#list~0#1.base|)))} is VALID [2022-02-20 23:48:51,634 INFO L290 TraceCheckUtils]: 22: Hoare triple {6043#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~#list~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~#list~0#1.base|)))} assume 0 == main_#t~mem17#1.base || 1 == #valid[main_#t~mem17#1.base];call ULTIMATE.dealloc(main_#t~mem17#1.base, main_#t~mem17#1.offset);havoc main_#t~mem17#1.base, main_#t~mem17#1.offset; {6043#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~#list~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~#list~0#1.base|)))} is VALID [2022-02-20 23:48:51,635 INFO L290 TraceCheckUtils]: 23: Hoare triple {6043#(and (= |ULTIMATE.start_main_~#list~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~#list~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~#list~0#1.base|)))} assume !(4 + main_~#list~0#1.offset <= #length[main_~#list~0#1.base] && 0 <= main_~#list~0#1.offset); {6041#false} is VALID [2022-02-20 23:48:51,635 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:51,635 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:51,635 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [701868227] [2022-02-20 23:48:51,636 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [701868227] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:51,636 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:51,636 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:48:51,636 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1629562921] [2022-02-20 23:48:51,636 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:51,637 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 8.0) internal successors, (24), 4 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 24 [2022-02-20 23:48:51,637 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:51,637 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 8.0) internal successors, (24), 4 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:51,655 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:51,655 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:48:51,656 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:51,656 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:48:51,656 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:48:51,656 INFO L87 Difference]: Start difference. First operand 73 states and 77 transitions. Second operand has 4 states, 3 states have (on average 8.0) internal successors, (24), 4 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:51,725 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:51,725 INFO L93 Difference]: Finished difference Result 69 states and 73 transitions. [2022-02-20 23:48:51,725 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:48:51,725 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 8.0) internal successors, (24), 4 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 24 [2022-02-20 23:48:51,726 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:51,726 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 8.0) internal successors, (24), 4 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:51,726 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 55 transitions. [2022-02-20 23:48:51,726 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 8.0) internal successors, (24), 4 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:51,726 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 55 transitions. [2022-02-20 23:48:51,726 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 55 transitions. [2022-02-20 23:48:51,767 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:51,767 INFO L225 Difference]: With dead ends: 69 [2022-02-20 23:48:51,767 INFO L226 Difference]: Without dead ends: 69 [2022-02-20 23:48:51,768 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:48:51,768 INFO L933 BasicCegarLoop]: 30 mSDtfsCounter, 45 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 24 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 45 SdHoareTripleChecker+Valid, 33 SdHoareTripleChecker+Invalid, 30 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 24 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:51,768 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [45 Valid, 33 Invalid, 30 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 24 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:48:51,769 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 69 states. [2022-02-20 23:48:51,770 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 69 to 69. [2022-02-20 23:48:51,770 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:51,770 INFO L82 GeneralOperation]: Start isEquivalent. First operand 69 states. Second operand has 69 states, 60 states have (on average 1.2166666666666666) internal successors, (73), 68 states have internal predecessors, (73), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:51,770 INFO L74 IsIncluded]: Start isIncluded. First operand 69 states. Second operand has 69 states, 60 states have (on average 1.2166666666666666) internal successors, (73), 68 states have internal predecessors, (73), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:51,770 INFO L87 Difference]: Start difference. First operand 69 states. Second operand has 69 states, 60 states have (on average 1.2166666666666666) internal successors, (73), 68 states have internal predecessors, (73), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:51,771 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:51,772 INFO L93 Difference]: Finished difference Result 69 states and 73 transitions. [2022-02-20 23:48:51,772 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 73 transitions. [2022-02-20 23:48:51,772 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:51,772 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:51,772 INFO L74 IsIncluded]: Start isIncluded. First operand has 69 states, 60 states have (on average 1.2166666666666666) internal successors, (73), 68 states have internal predecessors, (73), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 69 states. [2022-02-20 23:48:51,773 INFO L87 Difference]: Start difference. First operand has 69 states, 60 states have (on average 1.2166666666666666) internal successors, (73), 68 states have internal predecessors, (73), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 69 states. [2022-02-20 23:48:51,773 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:51,774 INFO L93 Difference]: Finished difference Result 69 states and 73 transitions. [2022-02-20 23:48:51,774 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 73 transitions. [2022-02-20 23:48:51,774 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:51,774 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:51,774 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:51,774 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:51,775 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 69 states, 60 states have (on average 1.2166666666666666) internal successors, (73), 68 states have internal predecessors, (73), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:51,775 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 69 states to 69 states and 73 transitions. [2022-02-20 23:48:51,776 INFO L78 Accepts]: Start accepts. Automaton has 69 states and 73 transitions. Word has length 24 [2022-02-20 23:48:51,776 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:51,776 INFO L470 AbstractCegarLoop]: Abstraction has 69 states and 73 transitions. [2022-02-20 23:48:51,776 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 8.0) internal successors, (24), 4 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:51,776 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 73 transitions. [2022-02-20 23:48:51,777 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-02-20 23:48:51,777 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:51,777 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:51,777 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable15 [2022-02-20 23:48:51,777 INFO L402 AbstractCegarLoop]: === Iteration 17 === Targeting ULTIMATE.startErr43ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 40 more)] === [2022-02-20 23:48:51,778 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:51,778 INFO L85 PathProgramCache]: Analyzing trace with hash 1394996802, now seen corresponding path program 1 times [2022-02-20 23:48:51,778 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:51,778 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1880283199] [2022-02-20 23:48:51,778 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:51,778 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:51,822 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-02-20 23:48:51,823 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-02-20 23:48:51,849 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-02-20 23:48:51,870 INFO L138 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-02-20 23:48:51,871 INFO L628 BasicCegarLoop]: Counterexample is feasible [2022-02-20 23:48:51,872 INFO L764 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr43ASSERT_VIOLATIONMEMORY_LEAK (43 of 44 remaining) [2022-02-20 23:48:51,873 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0REQUIRES_VIOLATION (42 of 44 remaining) [2022-02-20 23:48:51,874 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1REQUIRES_VIOLATION (41 of 44 remaining) [2022-02-20 23:48:51,874 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr2REQUIRES_VIOLATION (40 of 44 remaining) [2022-02-20 23:48:51,874 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr3REQUIRES_VIOLATION (39 of 44 remaining) [2022-02-20 23:48:51,874 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr4REQUIRES_VIOLATION (38 of 44 remaining) [2022-02-20 23:48:51,874 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr5REQUIRES_VIOLATION (37 of 44 remaining) [2022-02-20 23:48:51,874 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr6REQUIRES_VIOLATION (36 of 44 remaining) [2022-02-20 23:48:51,875 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr7REQUIRES_VIOLATION (35 of 44 remaining) [2022-02-20 23:48:51,875 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr8REQUIRES_VIOLATION (34 of 44 remaining) [2022-02-20 23:48:51,875 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr9REQUIRES_VIOLATION (33 of 44 remaining) [2022-02-20 23:48:51,875 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr10REQUIRES_VIOLATION (32 of 44 remaining) [2022-02-20 23:48:51,875 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr11REQUIRES_VIOLATION (31 of 44 remaining) [2022-02-20 23:48:51,875 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr12REQUIRES_VIOLATION (30 of 44 remaining) [2022-02-20 23:48:51,875 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr13REQUIRES_VIOLATION (29 of 44 remaining) [2022-02-20 23:48:51,876 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr14REQUIRES_VIOLATION (28 of 44 remaining) [2022-02-20 23:48:51,876 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr15REQUIRES_VIOLATION (27 of 44 remaining) [2022-02-20 23:48:51,876 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr16REQUIRES_VIOLATION (26 of 44 remaining) [2022-02-20 23:48:51,876 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr17REQUIRES_VIOLATION (25 of 44 remaining) [2022-02-20 23:48:51,876 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr18ASSERT_VIOLATIONMEMORY_FREE (24 of 44 remaining) [2022-02-20 23:48:51,876 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr19ASSERT_VIOLATIONMEMORY_FREE (23 of 44 remaining) [2022-02-20 23:48:51,877 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr20ASSERT_VIOLATIONMEMORY_FREE (22 of 44 remaining) [2022-02-20 23:48:51,877 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr21REQUIRES_VIOLATION (21 of 44 remaining) [2022-02-20 23:48:51,877 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr22REQUIRES_VIOLATION (20 of 44 remaining) [2022-02-20 23:48:51,877 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr23REQUIRES_VIOLATION (19 of 44 remaining) [2022-02-20 23:48:51,877 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr24REQUIRES_VIOLATION (18 of 44 remaining) [2022-02-20 23:48:51,877 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr25REQUIRES_VIOLATION (17 of 44 remaining) [2022-02-20 23:48:51,878 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr26REQUIRES_VIOLATION (16 of 44 remaining) [2022-02-20 23:48:51,878 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr27ASSERT_VIOLATIONMEMORY_FREE (15 of 44 remaining) [2022-02-20 23:48:51,878 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr28ASSERT_VIOLATIONMEMORY_FREE (14 of 44 remaining) [2022-02-20 23:48:51,878 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr29ASSERT_VIOLATIONMEMORY_FREE (13 of 44 remaining) [2022-02-20 23:48:51,878 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr30REQUIRES_VIOLATION (12 of 44 remaining) [2022-02-20 23:48:51,878 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr31REQUIRES_VIOLATION (11 of 44 remaining) [2022-02-20 23:48:51,879 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr32REQUIRES_VIOLATION (10 of 44 remaining) [2022-02-20 23:48:51,879 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr33REQUIRES_VIOLATION (9 of 44 remaining) [2022-02-20 23:48:51,879 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr34REQUIRES_VIOLATION (8 of 44 remaining) [2022-02-20 23:48:51,879 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr35REQUIRES_VIOLATION (7 of 44 remaining) [2022-02-20 23:48:51,879 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr36REQUIRES_VIOLATION (6 of 44 remaining) [2022-02-20 23:48:51,879 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr37REQUIRES_VIOLATION (5 of 44 remaining) [2022-02-20 23:48:51,880 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr38ASSERT_VIOLATIONMEMORY_FREE (4 of 44 remaining) [2022-02-20 23:48:51,880 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr39ASSERT_VIOLATIONMEMORY_FREE (3 of 44 remaining) [2022-02-20 23:48:51,880 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr40ASSERT_VIOLATIONMEMORY_FREE (2 of 44 remaining) [2022-02-20 23:48:51,880 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr41REQUIRES_VIOLATION (1 of 44 remaining) [2022-02-20 23:48:51,880 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr42REQUIRES_VIOLATION (0 of 44 remaining) [2022-02-20 23:48:51,881 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable16 [2022-02-20 23:48:51,883 INFO L732 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:51,886 INFO L180 ceAbstractionStarter]: Computing trace abstraction results [2022-02-20 23:48:51,922 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 20.02 11:48:51 BoogieIcfgContainer [2022-02-20 23:48:51,922 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-02-20 23:48:51,922 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2022-02-20 23:48:51,922 INFO L271 PluginConnector]: Initializing Witness Printer... [2022-02-20 23:48:51,922 INFO L275 PluginConnector]: Witness Printer initialized [2022-02-20 23:48:51,923 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:48:36" (3/4) ... [2022-02-20 23:48:51,925 INFO L140 WitnessPrinter]: No result that supports witness generation found [2022-02-20 23:48:51,925 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2022-02-20 23:48:51,926 INFO L158 Benchmark]: Toolchain (without parser) took 16200.94ms. Allocated memory was 94.4MB in the beginning and 186.6MB in the end (delta: 92.3MB). Free memory was 71.0MB in the beginning and 116.5MB in the end (delta: -45.6MB). Peak memory consumption was 47.8MB. Max. memory is 16.1GB. [2022-02-20 23:48:51,926 INFO L158 Benchmark]: CDTParser took 0.18ms. Allocated memory is still 75.5MB. Free memory is still 47.3MB. There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 23:48:51,926 INFO L158 Benchmark]: CACSL2BoogieTranslator took 419.34ms. Allocated memory is still 94.4MB. Free memory was 70.9MB in the beginning and 53.2MB in the end (delta: 17.7MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2022-02-20 23:48:51,927 INFO L158 Benchmark]: Boogie Procedure Inliner took 50.26ms. Allocated memory is still 94.4MB. Free memory was 53.2MB in the beginning and 50.8MB in the end (delta: 2.4MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2022-02-20 23:48:51,927 INFO L158 Benchmark]: Boogie Preprocessor took 71.93ms. Allocated memory is still 94.4MB. Free memory was 50.8MB in the beginning and 72.3MB in the end (delta: -21.4MB). Peak memory consumption was 7.8MB. Max. memory is 16.1GB. [2022-02-20 23:48:51,929 INFO L158 Benchmark]: RCFGBuilder took 665.02ms. Allocated memory is still 94.4MB. Free memory was 72.3MB in the beginning and 49.2MB in the end (delta: 23.1MB). Peak memory consumption was 23.1MB. Max. memory is 16.1GB. [2022-02-20 23:48:51,930 INFO L158 Benchmark]: TraceAbstraction took 14984.84ms. Allocated memory was 94.4MB in the beginning and 186.6MB in the end (delta: 92.3MB). Free memory was 48.8MB in the beginning and 117.6MB in the end (delta: -68.8MB). Peak memory consumption was 23.2MB. Max. memory is 16.1GB. [2022-02-20 23:48:51,930 INFO L158 Benchmark]: Witness Printer took 2.99ms. Allocated memory is still 186.6MB. Free memory was 117.6MB in the beginning and 116.5MB in the end (delta: 1.0MB). There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 23:48:51,933 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.18ms. Allocated memory is still 75.5MB. Free memory is still 47.3MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 419.34ms. Allocated memory is still 94.4MB. Free memory was 70.9MB in the beginning and 53.2MB in the end (delta: 17.7MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 50.26ms. Allocated memory is still 94.4MB. Free memory was 53.2MB in the beginning and 50.8MB in the end (delta: 2.4MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * Boogie Preprocessor took 71.93ms. Allocated memory is still 94.4MB. Free memory was 50.8MB in the beginning and 72.3MB in the end (delta: -21.4MB). Peak memory consumption was 7.8MB. Max. memory is 16.1GB. * RCFGBuilder took 665.02ms. Allocated memory is still 94.4MB. Free memory was 72.3MB in the beginning and 49.2MB in the end (delta: 23.1MB). Peak memory consumption was 23.1MB. Max. memory is 16.1GB. * TraceAbstraction took 14984.84ms. Allocated memory was 94.4MB in the beginning and 186.6MB in the end (delta: 92.3MB). Free memory was 48.8MB in the beginning and 117.6MB in the end (delta: -68.8MB). Peak memory consumption was 23.2MB. Max. memory is 16.1GB. * Witness Printer took 2.99ms. Allocated memory is still 186.6MB. Free memory was 117.6MB in the beginning and 116.5MB in the end (delta: 1.0MB). There was no memory consumed. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - UnprovableResult [Line: 539]: Unable to prove that all allocated memory was freed Unable to prove that all allocated memory was freed Reason: overapproximation of memtrack at line 539. Possible FailurePath: [L524] int c = 0; VAL [c=0] [L541] struct item *list = ((void *)0); [L542] int length = 0; VAL [c=0, length=0, list={6:0}] [L544] CALL append(&list) [L531] c++ [L532] struct item *item = malloc(sizeof *item); [L533] EXPR \read(**plist) VAL [\read(**plist)={0:0}, c=1, item={3:0}, plist={6:0}, plist={6:0}] [L533] item->next = *plist VAL [\read(**plist)={0:0}, c=1, item={3:0}, plist={6:0}, plist={6:0}] [L534] EXPR item->next VAL [c=1, item={3:0}, item->next={0:0}, plist={6:0}, plist={6:0}] [L534-L536] EXPR (item->next) ? item->next->data : malloc(sizeof *item) [L534-L536] EXPR (item->next) ? item->next->data : malloc(sizeof *item) VAL [(item->next) ? item->next->data : malloc(sizeof *item)={-1:0}, c=1, item={3:0}, item->next={0:0}, malloc(sizeof *item)={-1:0}, plist={6:0}, plist={6:0}] [L534-L536] item->data = (item->next) ? item->next->data : malloc(sizeof *item) VAL [(item->next) ? item->next->data : malloc(sizeof *item)={-1:0}, c=1, item={3:0}, item->next={0:0}, malloc(sizeof *item)={-1:0}, plist={6:0}, plist={6:0}] [L537] *plist = item VAL [c=1, item={3:0}, plist={6:0}, plist={6:0}] [L544] RET append(&list) [L545] length++ VAL [c=1, length=1, list={6:0}] [L546] COND FALSE !(__VERIFIER_nondet_int() && c < 20) [L547] COND TRUE length > 0 VAL [c=1, length=1, list={6:0}] [L548] COND FALSE !(length < 0) VAL [c=1, length=1, list={6:0}] [L551] EXPR \read(*list) VAL [\read(*list)={3:0}, c=1, length=1, list={6:0}] [L551] EXPR list->next VAL [\read(*list)={3:0}, c=1, length=1, list={6:0}, list->next={0:0}] [L551] struct item *next = list->next; [L552] EXPR \read(*list) VAL [\read(*list)={3:0}, c=1, length=1, list={6:0}, next={0:0}] [L552] free(list) VAL [\read(*list)={3:0}, c=1, length=1, list={6:0}, next={0:0}] [L552] free(list) VAL [\read(*list)={3:0}, c=1, length=1, list={6:0}, next={0:0}] [L552] free(list) [L553] list = next VAL [c=1, length=1, list={6:0}, next={0:0}] [L554] length-- VAL [c=1, length=0, list={6:0}, next={0:0}] [L556] COND FALSE !(length > 0) VAL [c=1, length=0, list={6:0}, next={0:0}] [L562] return 0; [L541] struct item *list = ((void *)0); [L562] return 0; VAL [\result=0, c=1, length=0, next={0:0}] - UnprovableResult [Line: 533]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 533]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 533]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 533]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 534]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 534]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 535]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 535]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 535]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 535]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 534]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 534]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 537]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 537]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 549]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 549]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 549]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 549]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 549]: Unable to prove that free always succeeds Unable to prove that free always succeeds Reason: Not analyzed. - UnprovableResult [Line: 549]: Unable to prove that free always succeeds Unable to prove that free always succeeds Reason: Not analyzed. - UnprovableResult [Line: 549]: Unable to prove that free always succeeds Unable to prove that free always succeeds Reason: Not analyzed. - UnprovableResult [Line: 551]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 551]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 551]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 551]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 552]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 552]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 552]: Unable to prove that free always succeeds Unable to prove that free always succeeds Reason: Not analyzed. - UnprovableResult [Line: 552]: Unable to prove that free always succeeds Unable to prove that free always succeeds Reason: Not analyzed. - UnprovableResult [Line: 552]: Unable to prove that free always succeeds Unable to prove that free always succeeds Reason: Not analyzed. - UnprovableResult [Line: 553]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 553]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 557]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 557]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 557]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 557]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 558]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 558]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 558]: Unable to prove that free always succeeds Unable to prove that free always succeeds Reason: Not analyzed. - UnprovableResult [Line: 558]: Unable to prove that free always succeeds Unable to prove that free always succeeds Reason: Not analyzed. - UnprovableResult [Line: 558]: Unable to prove that free always succeeds Unable to prove that free always succeeds Reason: Not analyzed. - UnprovableResult [Line: 559]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 559]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - StatisticsResult: Ultimate Automizer benchmark data CFG has 1 procedures, 91 locations, 44 error locations. Started 1 CEGAR loops. OverallTime: 14.9s, OverallIterations: 17, TraceHistogramMax: 2, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 7.7s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 1774 SdHoareTripleChecker+Valid, 1.7s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 1774 mSDsluCounter, 2360 SdHoareTripleChecker+Invalid, 1.6s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 414 IncrementalHoareTripleChecker+Unchecked, 1649 mSDsCounter, 129 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 1717 IncrementalHoareTripleChecker+Invalid, 2260 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 129 mSolverCounterUnsat, 711 mSDtfsCounter, 1717 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 199 GetRequests, 79 SyntacticMatches, 0 SemanticMatches, 120 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 391 ImplicationChecksByTransitivity, 1.5s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=91occurred in iteration=0, InterpolantAutomatonStates: 112, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.2s AutomataMinimizationTime, 16 MinimizatonAttempts, 290 StatesRemovedByMinimization, 10 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.1s SsaConstructionTime, 0.3s SatisfiabilityAnalysisTime, 5.3s InterpolantComputationTime, 330 NumberOfCodeBlocks, 330 NumberOfCodeBlocksAsserted, 19 NumberOfCheckSat, 326 ConstructedInterpolants, 22 QuantifiedInterpolants, 3332 SizeOfPredicates, 42 NumberOfNonLiveVariables, 442 ConjunctsInSsa, 89 ConjunctsInUnsatCore, 20 InterpolantComputations, 14 PerfectInterpolantSequences, 6/36 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 could not prove your program: unable to determine feasibility of some traces [2022-02-20 23:48:51,987 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Using bit-precise analysis Retrying with bit-precise analysis ### Bit-precise run ### Calling Ultimate with: /usr/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -ea -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerMemDerefMemtrack.xml -i ../sv-benchmarks/c/list-ext-properties/test-0232_1-1.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-DerefFreeMemtrack-32bit-Automizer_Bitvector.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G valid-free) ) CHECK( init(main()), LTL(G valid-deref) ) CHECK( init(main()), LTL(G valid-memtrack) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash b36390e4ace21fb538f0c1df6f562bcf2825b5901fb45d9987e6242615034592 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:48:53,939 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:48:53,941 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:48:53,972 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:48:53,973 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:48:53,976 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:48:53,978 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:48:53,983 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:48:53,985 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:48:53,990 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:48:53,991 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:48:53,995 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:48:53,995 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:48:53,998 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:48:53,999 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:48:54,002 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:48:54,003 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:48:54,004 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:48:54,006 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:48:54,011 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:48:54,013 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:48:54,014 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:48:54,015 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:48:54,017 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:48:54,023 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:48:54,024 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:48:54,024 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:48:54,026 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:48:54,036 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:48:54,037 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:48:54,037 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:48:54,038 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:48:54,039 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:48:54,040 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:48:54,041 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:48:54,041 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:48:54,042 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:48:54,042 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:48:54,042 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:48:54,044 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:48:54,045 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:48:54,045 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-DerefFreeMemtrack-32bit-Automizer_Bitvector.epf [2022-02-20 23:48:54,083 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:48:54,083 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:48:54,084 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:48:54,084 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:48:54,085 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:48:54,086 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:48:54,087 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:48:54,087 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:48:54,087 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:48:54,088 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:48:54,088 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:48:54,089 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:48:54,089 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:48:54,089 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:48:54,089 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:48:54,089 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:48:54,090 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:48:54,090 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2022-02-20 23:48:54,090 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:48:54,090 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:48:54,090 INFO L138 SettingsManager]: * Use bitvectors instead of ints=true [2022-02-20 23:48:54,091 INFO L138 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2022-02-20 23:48:54,091 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:48:54,091 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:48:54,091 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:48:54,091 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:48:54,092 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:48:54,092 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:48:54,092 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:48:54,092 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:48:54,092 INFO L138 SettingsManager]: * Trace refinement strategy=WOLF [2022-02-20 23:48:54,093 INFO L138 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2022-02-20 23:48:54,093 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-02-20 23:48:54,093 INFO L138 SettingsManager]: * Logic for external solver=AUFBV WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.graphml Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G valid-free) ) CHECK( init(main()), LTL(G valid-deref) ) CHECK( init(main()), LTL(G valid-memtrack) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> b36390e4ace21fb538f0c1df6f562bcf2825b5901fb45d9987e6242615034592 [2022-02-20 23:48:54,441 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:48:54,461 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:48:54,463 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:48:54,464 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:48:54,465 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:48:54,466 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/list-ext-properties/test-0232_1-1.i [2022-02-20 23:48:54,533 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/ca090504a/618e6c6748464abd92d08241b70591ea/FLAG4c4455df7 [2022-02-20 23:48:54,977 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:48:54,977 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/list-ext-properties/test-0232_1-1.i [2022-02-20 23:48:54,989 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/ca090504a/618e6c6748464abd92d08241b70591ea/FLAG4c4455df7 [2022-02-20 23:48:55,008 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/ca090504a/618e6c6748464abd92d08241b70591ea [2022-02-20 23:48:55,010 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:48:55,012 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:48:55,014 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:48:55,014 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:48:55,019 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:48:55,021 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:48:55" (1/1) ... [2022-02-20 23:48:55,022 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@17c36c31 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:55, skipping insertion in model container [2022-02-20 23:48:55,022 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:48:55" (1/1) ... [2022-02-20 23:48:55,028 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:48:55,075 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:48:55,379 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:48:55,401 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 23:48:55,457 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:48:55,495 INFO L208 MainTranslator]: Completed translation [2022-02-20 23:48:55,496 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:55 WrapperNode [2022-02-20 23:48:55,497 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:48:55,499 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 23:48:55,499 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 23:48:55,500 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 23:48:55,506 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:55" (1/1) ... [2022-02-20 23:48:55,521 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:55" (1/1) ... [2022-02-20 23:48:55,547 INFO L137 Inliner]: procedures = 127, calls = 33, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 98 [2022-02-20 23:48:55,548 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 23:48:55,549 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 23:48:55,549 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 23:48:55,549 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 23:48:55,556 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:55" (1/1) ... [2022-02-20 23:48:55,558 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:55" (1/1) ... [2022-02-20 23:48:55,562 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:55" (1/1) ... [2022-02-20 23:48:55,574 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:55" (1/1) ... [2022-02-20 23:48:55,585 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:55" (1/1) ... [2022-02-20 23:48:55,596 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:55" (1/1) ... [2022-02-20 23:48:55,598 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:55" (1/1) ... [2022-02-20 23:48:55,606 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 23:48:55,609 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 23:48:55,609 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 23:48:55,609 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 23:48:55,610 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:55" (1/1) ... [2022-02-20 23:48:55,615 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:48:55,626 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:48:55,641 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-02-20 23:48:55,652 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-02-20 23:48:55,681 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2022-02-20 23:48:55,682 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 23:48:55,682 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-02-20 23:48:55,682 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2022-02-20 23:48:55,682 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2022-02-20 23:48:55,682 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 23:48:55,682 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~$Pointer$ [2022-02-20 23:48:55,682 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1 [2022-02-20 23:48:55,683 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 23:48:55,683 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 23:48:55,778 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 23:48:55,788 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 23:48:56,351 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 23:48:56,358 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 23:48:56,358 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-02-20 23:48:56,360 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:48:56 BoogieIcfgContainer [2022-02-20 23:48:56,360 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 23:48:56,362 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 23:48:56,362 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 23:48:56,364 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 23:48:56,365 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 11:48:55" (1/3) ... [2022-02-20 23:48:56,365 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7a5fbbb8 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:48:56, skipping insertion in model container [2022-02-20 23:48:56,365 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:55" (2/3) ... [2022-02-20 23:48:56,366 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7a5fbbb8 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:48:56, skipping insertion in model container [2022-02-20 23:48:56,366 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:48:56" (3/3) ... [2022-02-20 23:48:56,367 INFO L111 eAbstractionObserver]: Analyzing ICFG test-0232_1-1.i [2022-02-20 23:48:56,371 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 23:48:56,372 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 44 error locations. [2022-02-20 23:48:56,405 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 23:48:56,417 INFO L339 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=false, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mLoopAccelerationTechnique=FAST_UPR [2022-02-20 23:48:56,417 INFO L340 AbstractCegarLoop]: Starting to check reachability of 44 error locations. [2022-02-20 23:48:56,437 INFO L276 IsEmpty]: Start isEmpty. Operand has 90 states, 45 states have (on average 2.1333333333333333) internal successors, (96), 89 states have internal predecessors, (96), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:56,441 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2022-02-20 23:48:56,442 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:56,442 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2022-02-20 23:48:56,443 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 40 more)] === [2022-02-20 23:48:56,452 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:56,453 INFO L85 PathProgramCache]: Analyzing trace with hash 925637, now seen corresponding path program 1 times [2022-02-20 23:48:56,464 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:48:56,465 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [66911424] [2022-02-20 23:48:56,466 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:56,466 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:48:56,467 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:48:56,469 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:48:56,470 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (2)] Waiting until timeout for monitored process [2022-02-20 23:48:56,551 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:56,554 INFO L263 TraceCheckSpWp]: Trace formula consists of 40 conjuncts, 7 conjunts are in the unsatisfiable core [2022-02-20 23:48:56,569 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:56,573 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:48:56,646 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:48:56,717 INFO L356 Elim1Store]: treesize reduction 12, result has 40.0 percent of original size [2022-02-20 23:48:56,718 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 12 treesize of output 17 [2022-02-20 23:48:56,771 INFO L290 TraceCheckUtils]: 0: Hoare triple {93#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~c~0 := 0bv32; {93#true} is VALID [2022-02-20 23:48:56,776 INFO L290 TraceCheckUtils]: 1: Hoare triple {93#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post12#1, main_#t~nondet11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~post18#1, main_~next~0#1.base, main_~next~0#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~post22#1, main_~next~1#1.base, main_~next~1#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset, main_~length~0#1;call main_~#list~0#1.base, main_~#list~0#1.offset := #Ultimate.allocOnStack(4bv32);call write~init~$Pointer$(0bv32, 0bv32, main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32);main_~length~0#1 := 0bv32; {101#(= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:48:56,779 INFO L290 TraceCheckUtils]: 2: Hoare triple {101#(= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) (_ bv1 1))} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := ~bvadd32(1bv32, append_#t~post3#1);havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {105#(= (_ bv0 1) (bvadd (bvneg (select |#valid| |ULTIMATE.start_append_~plist#1.base|)) (_ bv1 1)))} is VALID [2022-02-20 23:48:56,780 INFO L290 TraceCheckUtils]: 3: Hoare triple {105#(= (_ bv0 1) (bvadd (bvneg (select |#valid| |ULTIMATE.start_append_~plist#1.base|)) (_ bv1 1)))} assume !(1bv1 == #valid[append_~plist#1.base]); {94#false} is VALID [2022-02-20 23:48:56,781 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:56,781 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:48:56,782 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:48:56,782 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [66911424] [2022-02-20 23:48:56,783 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [66911424] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:56,784 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:56,784 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:48:56,786 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1015070996] [2022-02-20 23:48:56,787 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:56,791 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 4 states have internal predecessors, (4), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 4 [2022-02-20 23:48:56,792 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:56,795 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 4 states have internal predecessors, (4), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:56,808 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 4 edges. 4 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:56,808 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:48:56,808 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:48:56,835 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:48:56,836 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:48:56,839 INFO L87 Difference]: Start difference. First operand has 90 states, 45 states have (on average 2.1333333333333333) internal successors, (96), 89 states have internal predecessors, (96), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand has 4 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 4 states have internal predecessors, (4), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:57,454 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:57,454 INFO L93 Difference]: Finished difference Result 115 states and 120 transitions. [2022-02-20 23:48:57,455 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:48:57,455 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 4 states have internal predecessors, (4), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 4 [2022-02-20 23:48:57,455 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:57,456 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 4 states have internal predecessors, (4), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:57,464 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 134 transitions. [2022-02-20 23:48:57,465 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 4 states have internal predecessors, (4), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:57,470 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 134 transitions. [2022-02-20 23:48:57,471 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 134 transitions. [2022-02-20 23:48:57,694 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 134 edges. 134 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:57,711 INFO L225 Difference]: With dead ends: 115 [2022-02-20 23:48:57,727 INFO L226 Difference]: Without dead ends: 113 [2022-02-20 23:48:57,728 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:48:57,731 INFO L933 BasicCegarLoop]: 49 mSDtfsCounter, 164 mSDsluCounter, 21 mSDsCounter, 0 mSdLazyCounter, 79 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 164 SdHoareTripleChecker+Valid, 70 SdHoareTripleChecker+Invalid, 94 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 79 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:57,732 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [164 Valid, 70 Invalid, 94 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 79 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:48:57,746 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 113 states. [2022-02-20 23:48:57,777 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 113 to 83. [2022-02-20 23:48:57,778 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:57,779 INFO L82 GeneralOperation]: Start isEquivalent. First operand 113 states. Second operand has 83 states, 45 states have (on average 1.9555555555555555) internal successors, (88), 82 states have internal predecessors, (88), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:57,796 INFO L74 IsIncluded]: Start isIncluded. First operand 113 states. Second operand has 83 states, 45 states have (on average 1.9555555555555555) internal successors, (88), 82 states have internal predecessors, (88), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:57,797 INFO L87 Difference]: Start difference. First operand 113 states. Second operand has 83 states, 45 states have (on average 1.9555555555555555) internal successors, (88), 82 states have internal predecessors, (88), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:57,807 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:57,807 INFO L93 Difference]: Finished difference Result 113 states and 118 transitions. [2022-02-20 23:48:57,807 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 118 transitions. [2022-02-20 23:48:57,808 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:57,808 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:57,809 INFO L74 IsIncluded]: Start isIncluded. First operand has 83 states, 45 states have (on average 1.9555555555555555) internal successors, (88), 82 states have internal predecessors, (88), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 113 states. [2022-02-20 23:48:57,810 INFO L87 Difference]: Start difference. First operand has 83 states, 45 states have (on average 1.9555555555555555) internal successors, (88), 82 states have internal predecessors, (88), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 113 states. [2022-02-20 23:48:57,820 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:57,820 INFO L93 Difference]: Finished difference Result 113 states and 118 transitions. [2022-02-20 23:48:57,820 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 118 transitions. [2022-02-20 23:48:57,821 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:57,821 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:57,822 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:57,822 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:57,823 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 83 states, 45 states have (on average 1.9555555555555555) internal successors, (88), 82 states have internal predecessors, (88), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:57,827 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 83 states to 83 states and 88 transitions. [2022-02-20 23:48:57,829 INFO L78 Accepts]: Start accepts. Automaton has 83 states and 88 transitions. Word has length 4 [2022-02-20 23:48:57,829 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:57,829 INFO L470 AbstractCegarLoop]: Abstraction has 83 states and 88 transitions. [2022-02-20 23:48:57,829 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 4 states have internal predecessors, (4), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:57,830 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 88 transitions. [2022-02-20 23:48:57,830 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2022-02-20 23:48:57,830 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:57,836 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2022-02-20 23:48:57,857 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (2)] Forceful destruction successful, exit code 0 [2022-02-20 23:48:58,044 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:48:58,045 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 40 more)] === [2022-02-20 23:48:58,045 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:58,045 INFO L85 PathProgramCache]: Analyzing trace with hash 925638, now seen corresponding path program 1 times [2022-02-20 23:48:58,046 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:48:58,046 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [2137257662] [2022-02-20 23:48:58,046 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:58,046 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:48:58,047 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:48:58,048 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:48:58,050 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (3)] Waiting until timeout for monitored process [2022-02-20 23:48:58,101 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:58,103 INFO L263 TraceCheckSpWp]: Trace formula consists of 40 conjuncts, 12 conjunts are in the unsatisfiable core [2022-02-20 23:48:58,126 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:58,127 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:48:58,146 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:48:58,151 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:48:58,210 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:48:58,212 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 14 [2022-02-20 23:48:58,230 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:48:58,231 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 11 [2022-02-20 23:48:58,252 INFO L290 TraceCheckUtils]: 0: Hoare triple {534#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~c~0 := 0bv32; {534#true} is VALID [2022-02-20 23:48:58,254 INFO L290 TraceCheckUtils]: 1: Hoare triple {534#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post12#1, main_#t~nondet11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~post18#1, main_~next~0#1.base, main_~next~0#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~post22#1, main_~next~1#1.base, main_~next~1#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset, main_~length~0#1;call main_~#list~0#1.base, main_~#list~0#1.offset := #Ultimate.allocOnStack(4bv32);call write~init~$Pointer$(0bv32, 0bv32, main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32);main_~length~0#1 := 0bv32; {542#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_main_~#list~0#1.offset| (_ bv0 32)) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#list~0#1.base|)))} is VALID [2022-02-20 23:48:58,256 INFO L290 TraceCheckUtils]: 2: Hoare triple {542#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_main_~#list~0#1.offset| (_ bv0 32)) (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~#list~0#1.base|)))} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := ~bvadd32(1bv32, append_#t~post3#1);havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {546#(and (= |ULTIMATE.start_append_~plist#1.offset| (_ bv0 32)) (= (_ bv4 32) (select |#length| |ULTIMATE.start_append_~plist#1.base|)))} is VALID [2022-02-20 23:48:58,257 INFO L290 TraceCheckUtils]: 3: Hoare triple {546#(and (= |ULTIMATE.start_append_~plist#1.offset| (_ bv0 32)) (= (_ bv4 32) (select |#length| |ULTIMATE.start_append_~plist#1.base|)))} assume !((~bvule32(~bvadd32(4bv32, append_~plist#1.offset), #length[append_~plist#1.base]) && ~bvule32(append_~plist#1.offset, ~bvadd32(4bv32, append_~plist#1.offset))) && ~bvule32(0bv32, append_~plist#1.offset)); {535#false} is VALID [2022-02-20 23:48:58,257 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:58,258 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:48:58,258 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:48:58,258 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [2137257662] [2022-02-20 23:48:58,259 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [2137257662] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:58,259 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:58,259 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:48:58,259 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1707968951] [2022-02-20 23:48:58,260 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:58,262 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 4 states have internal predecessors, (4), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 4 [2022-02-20 23:48:58,263 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:58,263 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 4 states have internal predecessors, (4), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:58,270 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 4 edges. 4 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:58,271 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:48:58,271 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:48:58,271 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:48:58,272 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:48:58,273 INFO L87 Difference]: Start difference. First operand 83 states and 88 transitions. Second operand has 4 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 4 states have internal predecessors, (4), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:59,406 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:59,406 INFO L93 Difference]: Finished difference Result 193 states and 202 transitions. [2022-02-20 23:48:59,406 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:48:59,407 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 4 states have internal predecessors, (4), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 4 [2022-02-20 23:48:59,407 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:59,407 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 4 states have internal predecessors, (4), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:59,411 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 214 transitions. [2022-02-20 23:48:59,411 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 4 states have internal predecessors, (4), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:59,415 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 214 transitions. [2022-02-20 23:48:59,415 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 214 transitions. [2022-02-20 23:48:59,690 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 214 edges. 214 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:59,696 INFO L225 Difference]: With dead ends: 193 [2022-02-20 23:48:59,696 INFO L226 Difference]: Without dead ends: 193 [2022-02-20 23:48:59,697 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:48:59,698 INFO L933 BasicCegarLoop]: 73 mSDtfsCounter, 164 mSDsluCounter, 58 mSDsCounter, 0 mSdLazyCounter, 169 mSolverCounterSat, 12 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 164 SdHoareTripleChecker+Valid, 131 SdHoareTripleChecker+Invalid, 181 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 12 IncrementalHoareTripleChecker+Valid, 169 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:59,698 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [164 Valid, 131 Invalid, 181 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [12 Valid, 169 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-02-20 23:48:59,699 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 193 states. [2022-02-20 23:48:59,705 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 193 to 92. [2022-02-20 23:48:59,705 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:59,706 INFO L82 GeneralOperation]: Start isEquivalent. First operand 193 states. Second operand has 92 states, 56 states have (on average 1.8392857142857142) internal successors, (103), 91 states have internal predecessors, (103), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:59,706 INFO L74 IsIncluded]: Start isIncluded. First operand 193 states. Second operand has 92 states, 56 states have (on average 1.8392857142857142) internal successors, (103), 91 states have internal predecessors, (103), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:59,707 INFO L87 Difference]: Start difference. First operand 193 states. Second operand has 92 states, 56 states have (on average 1.8392857142857142) internal successors, (103), 91 states have internal predecessors, (103), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:59,714 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:59,714 INFO L93 Difference]: Finished difference Result 193 states and 202 transitions. [2022-02-20 23:48:59,714 INFO L276 IsEmpty]: Start isEmpty. Operand 193 states and 202 transitions. [2022-02-20 23:48:59,715 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:59,716 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:59,716 INFO L74 IsIncluded]: Start isIncluded. First operand has 92 states, 56 states have (on average 1.8392857142857142) internal successors, (103), 91 states have internal predecessors, (103), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 193 states. [2022-02-20 23:48:59,717 INFO L87 Difference]: Start difference. First operand has 92 states, 56 states have (on average 1.8392857142857142) internal successors, (103), 91 states have internal predecessors, (103), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 193 states. [2022-02-20 23:48:59,724 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:59,724 INFO L93 Difference]: Finished difference Result 193 states and 202 transitions. [2022-02-20 23:48:59,724 INFO L276 IsEmpty]: Start isEmpty. Operand 193 states and 202 transitions. [2022-02-20 23:48:59,726 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:59,726 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:59,726 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:59,726 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:59,727 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 92 states, 56 states have (on average 1.8392857142857142) internal successors, (103), 91 states have internal predecessors, (103), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:59,729 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 92 states to 92 states and 103 transitions. [2022-02-20 23:48:59,730 INFO L78 Accepts]: Start accepts. Automaton has 92 states and 103 transitions. Word has length 4 [2022-02-20 23:48:59,730 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:59,730 INFO L470 AbstractCegarLoop]: Abstraction has 92 states and 103 transitions. [2022-02-20 23:48:59,730 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 4 states have internal predecessors, (4), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:59,730 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 103 transitions. [2022-02-20 23:48:59,731 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 6 [2022-02-20 23:48:59,731 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:59,731 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1] [2022-02-20 23:48:59,742 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (3)] Forceful destruction successful, exit code 0 [2022-02-20 23:48:59,939 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:48:59,940 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr2REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 40 more)] === [2022-02-20 23:48:59,941 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:59,941 INFO L85 PathProgramCache]: Analyzing trace with hash 28694727, now seen corresponding path program 1 times [2022-02-20 23:48:59,941 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:48:59,941 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [993168444] [2022-02-20 23:48:59,942 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:59,942 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:48:59,942 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:48:59,943 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:48:59,944 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (4)] Waiting until timeout for monitored process [2022-02-20 23:48:59,987 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:59,988 INFO L263 TraceCheckSpWp]: Trace formula consists of 46 conjuncts, 3 conjunts are in the unsatisfiable core [2022-02-20 23:49:00,000 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:00,001 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:00,016 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:49:00,026 INFO L290 TraceCheckUtils]: 0: Hoare triple {1222#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~c~0 := 0bv32; {1222#true} is VALID [2022-02-20 23:49:00,026 INFO L290 TraceCheckUtils]: 1: Hoare triple {1222#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post12#1, main_#t~nondet11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~post18#1, main_~next~0#1.base, main_~next~0#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~post22#1, main_~next~1#1.base, main_~next~1#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset, main_~length~0#1;call main_~#list~0#1.base, main_~#list~0#1.offset := #Ultimate.allocOnStack(4bv32);call write~init~$Pointer$(0bv32, 0bv32, main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32);main_~length~0#1 := 0bv32; {1222#true} is VALID [2022-02-20 23:49:00,029 INFO L290 TraceCheckUtils]: 2: Hoare triple {1222#true} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := ~bvadd32(1bv32, append_#t~post3#1);havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {1233#(= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:49:00,030 INFO L290 TraceCheckUtils]: 3: Hoare triple {1233#(= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1))} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L533 {1233#(= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:49:00,030 INFO L290 TraceCheckUtils]: 4: Hoare triple {1233#(= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[append_~item~0#1.base]); {1223#false} is VALID [2022-02-20 23:49:00,030 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:49:00,031 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:49:00,031 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:49:00,031 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [993168444] [2022-02-20 23:49:00,031 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [993168444] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:49:00,031 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:49:00,032 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:49:00,032 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [589035606] [2022-02-20 23:49:00,032 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:49:00,032 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 5 [2022-02-20 23:49:00,033 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:00,033 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:00,039 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 5 edges. 5 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:00,040 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:49:00,040 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:49:00,041 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:49:00,041 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:49:00,041 INFO L87 Difference]: Start difference. First operand 92 states and 103 transitions. Second operand has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:00,378 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:00,379 INFO L93 Difference]: Finished difference Result 106 states and 112 transitions. [2022-02-20 23:49:00,379 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:49:00,379 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 5 [2022-02-20 23:49:00,379 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:00,379 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:00,381 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 112 transitions. [2022-02-20 23:49:00,381 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:00,382 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 112 transitions. [2022-02-20 23:49:00,383 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 112 transitions. [2022-02-20 23:49:00,497 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 112 edges. 112 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:00,500 INFO L225 Difference]: With dead ends: 106 [2022-02-20 23:49:00,500 INFO L226 Difference]: Without dead ends: 106 [2022-02-20 23:49:00,502 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:49:00,505 INFO L933 BasicCegarLoop]: 49 mSDtfsCounter, 57 mSDsluCounter, 22 mSDsCounter, 0 mSdLazyCounter, 54 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 57 SdHoareTripleChecker+Valid, 71 SdHoareTripleChecker+Invalid, 58 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 54 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:00,508 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [57 Valid, 71 Invalid, 58 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 54 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:49:00,511 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 106 states. [2022-02-20 23:49:00,514 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 106 to 88. [2022-02-20 23:49:00,515 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:00,515 INFO L82 GeneralOperation]: Start isEquivalent. First operand 106 states. Second operand has 88 states, 56 states have (on average 1.75) internal successors, (98), 87 states have internal predecessors, (98), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:00,515 INFO L74 IsIncluded]: Start isIncluded. First operand 106 states. Second operand has 88 states, 56 states have (on average 1.75) internal successors, (98), 87 states have internal predecessors, (98), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:00,516 INFO L87 Difference]: Start difference. First operand 106 states. Second operand has 88 states, 56 states have (on average 1.75) internal successors, (98), 87 states have internal predecessors, (98), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:00,518 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:00,519 INFO L93 Difference]: Finished difference Result 106 states and 112 transitions. [2022-02-20 23:49:00,519 INFO L276 IsEmpty]: Start isEmpty. Operand 106 states and 112 transitions. [2022-02-20 23:49:00,519 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:00,520 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:00,520 INFO L74 IsIncluded]: Start isIncluded. First operand has 88 states, 56 states have (on average 1.75) internal successors, (98), 87 states have internal predecessors, (98), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 106 states. [2022-02-20 23:49:00,520 INFO L87 Difference]: Start difference. First operand has 88 states, 56 states have (on average 1.75) internal successors, (98), 87 states have internal predecessors, (98), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 106 states. [2022-02-20 23:49:00,523 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:00,523 INFO L93 Difference]: Finished difference Result 106 states and 112 transitions. [2022-02-20 23:49:00,523 INFO L276 IsEmpty]: Start isEmpty. Operand 106 states and 112 transitions. [2022-02-20 23:49:00,524 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:00,524 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:00,524 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:00,524 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:00,525 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 88 states, 56 states have (on average 1.75) internal successors, (98), 87 states have internal predecessors, (98), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:00,527 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 88 states to 88 states and 98 transitions. [2022-02-20 23:49:00,527 INFO L78 Accepts]: Start accepts. Automaton has 88 states and 98 transitions. Word has length 5 [2022-02-20 23:49:00,527 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:00,527 INFO L470 AbstractCegarLoop]: Abstraction has 88 states and 98 transitions. [2022-02-20 23:49:00,528 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:00,528 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 98 transitions. [2022-02-20 23:49:00,528 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 6 [2022-02-20 23:49:00,528 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:00,528 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1] [2022-02-20 23:49:00,539 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (4)] Forceful destruction successful, exit code 0 [2022-02-20 23:49:00,737 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:49:00,737 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr3REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 40 more)] === [2022-02-20 23:49:00,738 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:00,738 INFO L85 PathProgramCache]: Analyzing trace with hash 28694728, now seen corresponding path program 1 times [2022-02-20 23:49:00,738 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:49:00,738 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1945563189] [2022-02-20 23:49:00,738 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:00,739 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:49:00,739 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:49:00,740 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:49:00,742 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (5)] Waiting until timeout for monitored process [2022-02-20 23:49:00,785 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:00,787 INFO L263 TraceCheckSpWp]: Trace formula consists of 46 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 23:49:00,795 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:00,795 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:00,830 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:49:00,845 INFO L290 TraceCheckUtils]: 0: Hoare triple {1645#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~c~0 := 0bv32; {1645#true} is VALID [2022-02-20 23:49:00,846 INFO L290 TraceCheckUtils]: 1: Hoare triple {1645#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post12#1, main_#t~nondet11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~post18#1, main_~next~0#1.base, main_~next~0#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~post22#1, main_~next~1#1.base, main_~next~1#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset, main_~length~0#1;call main_~#list~0#1.base, main_~#list~0#1.offset := #Ultimate.allocOnStack(4bv32);call write~init~$Pointer$(0bv32, 0bv32, main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32);main_~length~0#1 := 0bv32; {1645#true} is VALID [2022-02-20 23:49:00,848 INFO L290 TraceCheckUtils]: 2: Hoare triple {1645#true} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := ~bvadd32(1bv32, append_#t~post3#1);havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {1656#(and (= (_ bv8 32) (select |#length| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:49:00,848 INFO L290 TraceCheckUtils]: 3: Hoare triple {1656#(and (= (_ bv8 32) (select |#length| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)))} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L533 {1656#(and (= (_ bv8 32) (select |#length| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:49:00,849 INFO L290 TraceCheckUtils]: 4: Hoare triple {1656#(and (= (_ bv8 32) (select |#length| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)))} assume !((~bvule32(~bvadd32(4bv32, append_~item~0#1.offset), #length[append_~item~0#1.base]) && ~bvule32(append_~item~0#1.offset, ~bvadd32(4bv32, append_~item~0#1.offset))) && ~bvule32(0bv32, append_~item~0#1.offset)); {1646#false} is VALID [2022-02-20 23:49:00,849 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:49:00,849 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:49:00,850 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:49:00,850 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1945563189] [2022-02-20 23:49:00,850 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1945563189] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:49:00,850 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:49:00,850 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:49:00,851 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [424801439] [2022-02-20 23:49:00,851 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:49:00,851 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 5 [2022-02-20 23:49:00,851 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:00,852 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:00,859 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 5 edges. 5 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:00,859 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:49:00,860 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:49:00,860 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:49:00,860 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:49:00,860 INFO L87 Difference]: Start difference. First operand 88 states and 98 transitions. Second operand has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:01,124 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:01,124 INFO L93 Difference]: Finished difference Result 85 states and 94 transitions. [2022-02-20 23:49:01,124 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:49:01,124 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 5 [2022-02-20 23:49:01,124 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:01,125 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:01,126 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 81 transitions. [2022-02-20 23:49:01,126 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:01,127 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 81 transitions. [2022-02-20 23:49:01,127 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 81 transitions. [2022-02-20 23:49:01,214 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 81 edges. 81 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:01,215 INFO L225 Difference]: With dead ends: 85 [2022-02-20 23:49:01,215 INFO L226 Difference]: Without dead ends: 85 [2022-02-20 23:49:01,215 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:49:01,216 INFO L933 BasicCegarLoop]: 47 mSDtfsCounter, 71 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 32 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 71 SdHoareTripleChecker+Valid, 47 SdHoareTripleChecker+Invalid, 36 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 32 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:01,216 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [71 Valid, 47 Invalid, 36 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 32 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:49:01,217 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 85 states. [2022-02-20 23:49:01,220 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 85 to 84. [2022-02-20 23:49:01,220 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:01,221 INFO L82 GeneralOperation]: Start isEquivalent. First operand 85 states. Second operand has 84 states, 56 states have (on average 1.6607142857142858) internal successors, (93), 83 states have internal predecessors, (93), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:01,221 INFO L74 IsIncluded]: Start isIncluded. First operand 85 states. Second operand has 84 states, 56 states have (on average 1.6607142857142858) internal successors, (93), 83 states have internal predecessors, (93), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:01,221 INFO L87 Difference]: Start difference. First operand 85 states. Second operand has 84 states, 56 states have (on average 1.6607142857142858) internal successors, (93), 83 states have internal predecessors, (93), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:01,223 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:01,223 INFO L93 Difference]: Finished difference Result 85 states and 94 transitions. [2022-02-20 23:49:01,223 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 94 transitions. [2022-02-20 23:49:01,224 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:01,224 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:01,224 INFO L74 IsIncluded]: Start isIncluded. First operand has 84 states, 56 states have (on average 1.6607142857142858) internal successors, (93), 83 states have internal predecessors, (93), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 85 states. [2022-02-20 23:49:01,225 INFO L87 Difference]: Start difference. First operand has 84 states, 56 states have (on average 1.6607142857142858) internal successors, (93), 83 states have internal predecessors, (93), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 85 states. [2022-02-20 23:49:01,227 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:01,227 INFO L93 Difference]: Finished difference Result 85 states and 94 transitions. [2022-02-20 23:49:01,227 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 94 transitions. [2022-02-20 23:49:01,227 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:01,228 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:01,228 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:01,228 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:01,228 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 84 states, 56 states have (on average 1.6607142857142858) internal successors, (93), 83 states have internal predecessors, (93), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:01,230 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 84 states to 84 states and 93 transitions. [2022-02-20 23:49:01,230 INFO L78 Accepts]: Start accepts. Automaton has 84 states and 93 transitions. Word has length 5 [2022-02-20 23:49:01,230 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:01,231 INFO L470 AbstractCegarLoop]: Abstraction has 84 states and 93 transitions. [2022-02-20 23:49:01,231 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:01,231 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 93 transitions. [2022-02-20 23:49:01,231 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 11 [2022-02-20 23:49:01,231 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:01,232 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:49:01,247 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (5)] Ended with exit code 0 [2022-02-20 23:49:01,443 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:49:01,445 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr8REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 40 more)] === [2022-02-20 23:49:01,445 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:01,446 INFO L85 PathProgramCache]: Analyzing trace with hash -1328641136, now seen corresponding path program 1 times [2022-02-20 23:49:01,446 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:49:01,446 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1457614836] [2022-02-20 23:49:01,446 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:01,446 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:49:01,447 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:49:01,448 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:49:01,449 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (6)] Waiting until timeout for monitored process [2022-02-20 23:49:01,511 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:01,514 INFO L263 TraceCheckSpWp]: Trace formula consists of 73 conjuncts, 17 conjunts are in the unsatisfiable core [2022-02-20 23:49:01,525 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:01,526 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:01,715 INFO L356 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2022-02-20 23:49:01,715 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 23 treesize of output 18 [2022-02-20 23:49:01,737 INFO L356 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2022-02-20 23:49:01,737 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 23 treesize of output 18 [2022-02-20 23:49:01,869 INFO L356 Elim1Store]: treesize reduction 11, result has 8.3 percent of original size [2022-02-20 23:49:01,869 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 26 treesize of output 10 [2022-02-20 23:49:01,875 INFO L356 Elim1Store]: treesize reduction 11, result has 8.3 percent of original size [2022-02-20 23:49:01,876 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 26 treesize of output 10 [2022-02-20 23:49:01,900 INFO L290 TraceCheckUtils]: 0: Hoare triple {2001#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~c~0 := 0bv32; {2001#true} is VALID [2022-02-20 23:49:01,901 INFO L290 TraceCheckUtils]: 1: Hoare triple {2001#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post12#1, main_#t~nondet11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~post18#1, main_~next~0#1.base, main_~next~0#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~post22#1, main_~next~1#1.base, main_~next~1#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset, main_~length~0#1;call main_~#list~0#1.base, main_~#list~0#1.offset := #Ultimate.allocOnStack(4bv32);call write~init~$Pointer$(0bv32, 0bv32, main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32);main_~length~0#1 := 0bv32; {2009#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (_ bv0 32)))} is VALID [2022-02-20 23:49:01,902 INFO L290 TraceCheckUtils]: 2: Hoare triple {2009#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (_ bv0 32)))} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := ~bvadd32(1bv32, append_#t~post3#1);havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {2013#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) (_ bv0 32)))} is VALID [2022-02-20 23:49:01,904 INFO L290 TraceCheckUtils]: 3: Hoare triple {2013#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) (_ bv0 32)))} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L533 {2017#(exists ((|ULTIMATE.start_append_~plist#1.base| (_ BitVec 32)) (|ULTIMATE.start_append_~plist#1.offset| (_ BitVec 32))) (and (= |ULTIMATE.start_append_#t~mem5#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) |ULTIMATE.start_append_#t~mem5#1.base|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) (_ bv0 32))))} is VALID [2022-02-20 23:49:01,907 INFO L290 TraceCheckUtils]: 4: Hoare triple {2017#(exists ((|ULTIMATE.start_append_~plist#1.base| (_ BitVec 32)) (|ULTIMATE.start_append_~plist#1.offset| (_ BitVec 32))) (and (= |ULTIMATE.start_append_#t~mem5#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) |ULTIMATE.start_append_#t~mem5#1.base|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) (_ bv0 32))))} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L533-1 {2021#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv0 32)) (exists ((|ULTIMATE.start_append_~plist#1.base| (_ BitVec 32)) (|ULTIMATE.start_append_~plist#1.offset| (_ BitVec 32))) (and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) (_ bv0 32)))))} is VALID [2022-02-20 23:49:01,909 INFO L290 TraceCheckUtils]: 5: Hoare triple {2021#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv0 32)) (exists ((|ULTIMATE.start_append_~plist#1.base| (_ BitVec 32)) (|ULTIMATE.start_append_~plist#1.offset| (_ BitVec 32))) (and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) (_ bv0 32)))))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {2021#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv0 32)) (exists ((|ULTIMATE.start_append_~plist#1.base| (_ BitVec 32)) (|ULTIMATE.start_append_~plist#1.offset| (_ BitVec 32))) (and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) (_ bv0 32)))))} is VALID [2022-02-20 23:49:01,911 INFO L290 TraceCheckUtils]: 6: Hoare triple {2021#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv0 32)) (exists ((|ULTIMATE.start_append_~plist#1.base| (_ BitVec 32)) (|ULTIMATE.start_append_~plist#1.offset| (_ BitVec 32))) (and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) (_ bv0 32)))))} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L534 {2028#(and (= |ULTIMATE.start_append_#t~mem6#1.offset| (_ bv0 32)) (= |ULTIMATE.start_append_#t~mem6#1.base| (_ bv0 32)))} is VALID [2022-02-20 23:49:01,912 INFO L290 TraceCheckUtils]: 7: Hoare triple {2028#(and (= |ULTIMATE.start_append_#t~mem6#1.offset| (_ bv0 32)) (= |ULTIMATE.start_append_#t~mem6#1.base| (_ bv0 32)))} assume append_#t~mem6#1.base != 0bv32 || append_#t~mem6#1.offset != 0bv32; {2002#false} is VALID [2022-02-20 23:49:01,912 INFO L290 TraceCheckUtils]: 8: Hoare triple {2002#false} SUMMARY for call append_#t~mem7#1.base, append_#t~mem7#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L535 {2002#false} is VALID [2022-02-20 23:49:01,912 INFO L290 TraceCheckUtils]: 9: Hoare triple {2002#false} assume !(1bv1 == #valid[append_#t~mem7#1.base]); {2002#false} is VALID [2022-02-20 23:49:01,913 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:49:01,913 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:49:01,913 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:49:01,913 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1457614836] [2022-02-20 23:49:01,913 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1457614836] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:49:01,913 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:49:01,914 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-20 23:49:01,914 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [791809317] [2022-02-20 23:49:01,914 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:49:01,914 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 1.4285714285714286) internal successors, (10), 7 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 10 [2022-02-20 23:49:01,915 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:01,915 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 1.4285714285714286) internal successors, (10), 7 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:01,933 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 10 edges. 10 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:01,934 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 23:49:01,934 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:49:01,934 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 23:49:01,934 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:49:01,935 INFO L87 Difference]: Start difference. First operand 84 states and 93 transitions. Second operand has 7 states, 7 states have (on average 1.4285714285714286) internal successors, (10), 7 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:02,780 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:02,781 INFO L93 Difference]: Finished difference Result 90 states and 99 transitions. [2022-02-20 23:49:02,781 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:49:02,781 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 1.4285714285714286) internal successors, (10), 7 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 10 [2022-02-20 23:49:02,781 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:02,782 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 1.4285714285714286) internal successors, (10), 7 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:02,783 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 85 transitions. [2022-02-20 23:49:02,783 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 1.4285714285714286) internal successors, (10), 7 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:02,784 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 85 transitions. [2022-02-20 23:49:02,784 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 85 transitions. [2022-02-20 23:49:02,887 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 85 edges. 85 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:02,888 INFO L225 Difference]: With dead ends: 90 [2022-02-20 23:49:02,888 INFO L226 Difference]: Without dead ends: 90 [2022-02-20 23:49:02,888 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 11 GetRequests, 4 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=21, Invalid=51, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:49:02,889 INFO L933 BasicCegarLoop]: 71 mSDtfsCounter, 5 mSDsluCounter, 281 mSDsCounter, 0 mSdLazyCounter, 53 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 5 SdHoareTripleChecker+Valid, 352 SdHoareTripleChecker+Invalid, 93 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 53 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 39 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:02,889 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [5 Valid, 352 Invalid, 93 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 53 Invalid, 0 Unknown, 39 Unchecked, 0.1s Time] [2022-02-20 23:49:02,890 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 90 states. [2022-02-20 23:49:02,893 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 90 to 90. [2022-02-20 23:49:02,893 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:02,893 INFO L82 GeneralOperation]: Start isEquivalent. First operand 90 states. Second operand has 90 states, 62 states have (on average 1.596774193548387) internal successors, (99), 89 states have internal predecessors, (99), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:02,893 INFO L74 IsIncluded]: Start isIncluded. First operand 90 states. Second operand has 90 states, 62 states have (on average 1.596774193548387) internal successors, (99), 89 states have internal predecessors, (99), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:02,894 INFO L87 Difference]: Start difference. First operand 90 states. Second operand has 90 states, 62 states have (on average 1.596774193548387) internal successors, (99), 89 states have internal predecessors, (99), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:02,898 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:02,898 INFO L93 Difference]: Finished difference Result 90 states and 99 transitions. [2022-02-20 23:49:02,899 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 99 transitions. [2022-02-20 23:49:02,899 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:02,899 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:02,899 INFO L74 IsIncluded]: Start isIncluded. First operand has 90 states, 62 states have (on average 1.596774193548387) internal successors, (99), 89 states have internal predecessors, (99), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 90 states. [2022-02-20 23:49:02,900 INFO L87 Difference]: Start difference. First operand has 90 states, 62 states have (on average 1.596774193548387) internal successors, (99), 89 states have internal predecessors, (99), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 90 states. [2022-02-20 23:49:02,902 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:02,903 INFO L93 Difference]: Finished difference Result 90 states and 99 transitions. [2022-02-20 23:49:02,903 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 99 transitions. [2022-02-20 23:49:02,903 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:02,903 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:02,903 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:02,903 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:02,904 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 90 states, 62 states have (on average 1.596774193548387) internal successors, (99), 89 states have internal predecessors, (99), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:02,905 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 90 states to 90 states and 99 transitions. [2022-02-20 23:49:02,906 INFO L78 Accepts]: Start accepts. Automaton has 90 states and 99 transitions. Word has length 10 [2022-02-20 23:49:02,906 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:02,906 INFO L470 AbstractCegarLoop]: Abstraction has 90 states and 99 transitions. [2022-02-20 23:49:02,906 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 1.4285714285714286) internal successors, (10), 7 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:02,906 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 99 transitions. [2022-02-20 23:49:02,907 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2022-02-20 23:49:02,907 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:02,907 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:49:02,918 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (6)] Forceful destruction successful, exit code 0 [2022-02-20 23:49:03,116 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:49:03,116 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr13REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 40 more)] === [2022-02-20 23:49:03,117 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:03,117 INFO L85 PathProgramCache]: Analyzing trace with hash 1762075788, now seen corresponding path program 1 times [2022-02-20 23:49:03,117 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:49:03,117 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1322385425] [2022-02-20 23:49:03,117 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:03,117 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:49:03,117 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:49:03,118 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:49:03,119 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (7)] Waiting until timeout for monitored process [2022-02-20 23:49:03,182 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:03,184 INFO L263 TraceCheckSpWp]: Trace formula consists of 92 conjuncts, 8 conjunts are in the unsatisfiable core [2022-02-20 23:49:03,193 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:03,194 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:03,323 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:49:03,324 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 16 [2022-02-20 23:49:03,333 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:49:03,333 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 11 [2022-02-20 23:49:03,372 INFO L290 TraceCheckUtils]: 0: Hoare triple {2401#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~c~0 := 0bv32; {2401#true} is VALID [2022-02-20 23:49:03,373 INFO L290 TraceCheckUtils]: 1: Hoare triple {2401#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post12#1, main_#t~nondet11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~post18#1, main_~next~0#1.base, main_~next~0#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~post22#1, main_~next~1#1.base, main_~next~1#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset, main_~length~0#1;call main_~#list~0#1.base, main_~#list~0#1.offset := #Ultimate.allocOnStack(4bv32);call write~init~$Pointer$(0bv32, 0bv32, main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32);main_~length~0#1 := 0bv32; {2409#(= |ULTIMATE.start_main_~#list~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:49:03,374 INFO L290 TraceCheckUtils]: 2: Hoare triple {2409#(= |ULTIMATE.start_main_~#list~0#1.offset| (_ bv0 32))} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := ~bvadd32(1bv32, append_#t~post3#1);havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {2413#(= |ULTIMATE.start_append_~plist#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:49:03,376 INFO L290 TraceCheckUtils]: 3: Hoare triple {2413#(= |ULTIMATE.start_append_~plist#1.offset| (_ bv0 32))} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L533 {2417#(and (= |ULTIMATE.start_append_~plist#1.offset| (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_append_~plist#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_append_~plist#1.offset|) (select |#length| |ULTIMATE.start_append_~plist#1.base|)))} is VALID [2022-02-20 23:49:03,376 INFO L290 TraceCheckUtils]: 4: Hoare triple {2417#(and (= |ULTIMATE.start_append_~plist#1.offset| (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_append_~plist#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_append_~plist#1.offset|) (select |#length| |ULTIMATE.start_append_~plist#1.base|)))} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L533-1 {2417#(and (= |ULTIMATE.start_append_~plist#1.offset| (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_append_~plist#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_append_~plist#1.offset|) (select |#length| |ULTIMATE.start_append_~plist#1.base|)))} is VALID [2022-02-20 23:49:03,377 INFO L290 TraceCheckUtils]: 5: Hoare triple {2417#(and (= |ULTIMATE.start_append_~plist#1.offset| (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_append_~plist#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_append_~plist#1.offset|) (select |#length| |ULTIMATE.start_append_~plist#1.base|)))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {2417#(and (= |ULTIMATE.start_append_~plist#1.offset| (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_append_~plist#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_append_~plist#1.offset|) (select |#length| |ULTIMATE.start_append_~plist#1.base|)))} is VALID [2022-02-20 23:49:03,378 INFO L290 TraceCheckUtils]: 6: Hoare triple {2417#(and (= |ULTIMATE.start_append_~plist#1.offset| (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_append_~plist#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_append_~plist#1.offset|) (select |#length| |ULTIMATE.start_append_~plist#1.base|)))} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L534 {2417#(and (= |ULTIMATE.start_append_~plist#1.offset| (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_append_~plist#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_append_~plist#1.offset|) (select |#length| |ULTIMATE.start_append_~plist#1.base|)))} is VALID [2022-02-20 23:49:03,380 INFO L290 TraceCheckUtils]: 7: Hoare triple {2417#(and (= |ULTIMATE.start_append_~plist#1.offset| (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_append_~plist#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_append_~plist#1.offset|) (select |#length| |ULTIMATE.start_append_~plist#1.base|)))} assume !(append_#t~mem6#1.base != 0bv32 || append_#t~mem6#1.offset != 0bv32);call append_#t~malloc9#1.base, append_#t~malloc9#1.offset := #Ultimate.allocOnHeap(8bv32);append_#t~ite10#1.base, append_#t~ite10#1.offset := append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {2430#(and (= |ULTIMATE.start_append_~plist#1.offset| (_ bv0 32)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_append_~plist#1.offset|) (select |#length| |ULTIMATE.start_append_~plist#1.base|)))} is VALID [2022-02-20 23:49:03,381 INFO L290 TraceCheckUtils]: 8: Hoare triple {2430#(and (= |ULTIMATE.start_append_~plist#1.offset| (_ bv0 32)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_append_~plist#1.offset|) (select |#length| |ULTIMATE.start_append_~plist#1.base|)))} SUMMARY for call write~$Pointer$(append_#t~ite10#1.base, append_#t~ite10#1.offset, append_~item~0#1.base, ~bvadd32(4bv32, append_~item~0#1.offset), 4bv32); srcloc: L534-3 {2430#(and (= |ULTIMATE.start_append_~plist#1.offset| (_ bv0 32)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_append_~plist#1.offset|) (select |#length| |ULTIMATE.start_append_~plist#1.base|)))} is VALID [2022-02-20 23:49:03,381 INFO L290 TraceCheckUtils]: 9: Hoare triple {2430#(and (= |ULTIMATE.start_append_~plist#1.offset| (_ bv0 32)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_append_~plist#1.offset|) (select |#length| |ULTIMATE.start_append_~plist#1.base|)))} havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~ite10#1.base, append_#t~ite10#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~mem8#1.base, append_#t~mem8#1.offset;havoc append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {2430#(and (= |ULTIMATE.start_append_~plist#1.offset| (_ bv0 32)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_append_~plist#1.offset|) (select |#length| |ULTIMATE.start_append_~plist#1.base|)))} is VALID [2022-02-20 23:49:03,382 INFO L290 TraceCheckUtils]: 10: Hoare triple {2430#(and (= |ULTIMATE.start_append_~plist#1.offset| (_ bv0 32)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_append_~plist#1.offset|) (select |#length| |ULTIMATE.start_append_~plist#1.base|)))} assume !((~bvule32(~bvadd32(4bv32, append_~plist#1.offset), #length[append_~plist#1.base]) && ~bvule32(append_~plist#1.offset, ~bvadd32(4bv32, append_~plist#1.offset))) && ~bvule32(0bv32, append_~plist#1.offset)); {2402#false} is VALID [2022-02-20 23:49:03,382 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:49:03,382 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:49:03,382 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:49:03,382 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1322385425] [2022-02-20 23:49:03,383 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1322385425] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:49:03,383 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:49:03,383 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:49:03,383 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [5271801] [2022-02-20 23:49:03,383 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:49:03,385 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.2) internal successors, (11), 6 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 11 [2022-02-20 23:49:03,385 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:03,385 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 2.2) internal successors, (11), 6 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:03,407 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 11 edges. 11 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:03,407 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:49:03,407 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:49:03,408 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:49:03,408 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:49:03,408 INFO L87 Difference]: Start difference. First operand 90 states and 99 transitions. Second operand has 6 states, 5 states have (on average 2.2) internal successors, (11), 6 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:03,879 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:03,879 INFO L93 Difference]: Finished difference Result 106 states and 111 transitions. [2022-02-20 23:49:03,879 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:49:03,879 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.2) internal successors, (11), 6 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 11 [2022-02-20 23:49:03,879 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:03,879 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.2) internal successors, (11), 6 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:03,881 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 104 transitions. [2022-02-20 23:49:03,881 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.2) internal successors, (11), 6 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:03,882 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 104 transitions. [2022-02-20 23:49:03,882 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 104 transitions. [2022-02-20 23:49:04,040 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 104 edges. 104 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:04,041 INFO L225 Difference]: With dead ends: 106 [2022-02-20 23:49:04,041 INFO L226 Difference]: Without dead ends: 106 [2022-02-20 23:49:04,041 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 13 GetRequests, 6 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=30, Invalid=42, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:49:04,042 INFO L933 BasicCegarLoop]: 35 mSDtfsCounter, 327 mSDsluCounter, 18 mSDsCounter, 0 mSdLazyCounter, 72 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 327 SdHoareTripleChecker+Valid, 53 SdHoareTripleChecker+Invalid, 87 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 72 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:04,042 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [327 Valid, 53 Invalid, 87 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 72 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:49:04,043 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 106 states. [2022-02-20 23:49:04,046 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 106 to 86. [2022-02-20 23:49:04,046 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:04,046 INFO L82 GeneralOperation]: Start isEquivalent. First operand 106 states. Second operand has 86 states, 59 states have (on average 1.6101694915254237) internal successors, (95), 85 states have internal predecessors, (95), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:04,047 INFO L74 IsIncluded]: Start isIncluded. First operand 106 states. Second operand has 86 states, 59 states have (on average 1.6101694915254237) internal successors, (95), 85 states have internal predecessors, (95), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:04,047 INFO L87 Difference]: Start difference. First operand 106 states. Second operand has 86 states, 59 states have (on average 1.6101694915254237) internal successors, (95), 85 states have internal predecessors, (95), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:04,049 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:04,049 INFO L93 Difference]: Finished difference Result 106 states and 111 transitions. [2022-02-20 23:49:04,049 INFO L276 IsEmpty]: Start isEmpty. Operand 106 states and 111 transitions. [2022-02-20 23:49:04,050 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:04,050 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:04,050 INFO L74 IsIncluded]: Start isIncluded. First operand has 86 states, 59 states have (on average 1.6101694915254237) internal successors, (95), 85 states have internal predecessors, (95), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 106 states. [2022-02-20 23:49:04,050 INFO L87 Difference]: Start difference. First operand has 86 states, 59 states have (on average 1.6101694915254237) internal successors, (95), 85 states have internal predecessors, (95), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 106 states. [2022-02-20 23:49:04,052 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:04,053 INFO L93 Difference]: Finished difference Result 106 states and 111 transitions. [2022-02-20 23:49:04,053 INFO L276 IsEmpty]: Start isEmpty. Operand 106 states and 111 transitions. [2022-02-20 23:49:04,053 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:04,053 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:04,053 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:04,054 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:04,054 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 86 states, 59 states have (on average 1.6101694915254237) internal successors, (95), 85 states have internal predecessors, (95), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:04,055 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 86 states to 86 states and 95 transitions. [2022-02-20 23:49:04,056 INFO L78 Accepts]: Start accepts. Automaton has 86 states and 95 transitions. Word has length 11 [2022-02-20 23:49:04,056 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:04,056 INFO L470 AbstractCegarLoop]: Abstraction has 86 states and 95 transitions. [2022-02-20 23:49:04,056 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 2.2) internal successors, (11), 6 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:04,056 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 95 transitions. [2022-02-20 23:49:04,057 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-02-20 23:49:04,057 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:04,057 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:49:04,068 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (7)] Forceful destruction successful, exit code 0 [2022-02-20 23:49:04,266 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:49:04,266 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr23REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 40 more)] === [2022-02-20 23:49:04,266 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:04,267 INFO L85 PathProgramCache]: Analyzing trace with hash 1870124675, now seen corresponding path program 1 times [2022-02-20 23:49:04,267 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:49:04,267 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [2115893580] [2022-02-20 23:49:04,267 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:04,267 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:49:04,268 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:49:04,269 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:49:04,269 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (8)] Waiting until timeout for monitored process [2022-02-20 23:49:04,340 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:04,343 INFO L263 TraceCheckSpWp]: Trace formula consists of 115 conjuncts, 10 conjunts are in the unsatisfiable core [2022-02-20 23:49:04,354 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:04,355 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:04,473 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:49:04,520 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 9 [2022-02-20 23:49:04,529 INFO L290 TraceCheckUtils]: 0: Hoare triple {2849#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~c~0 := 0bv32; {2849#true} is VALID [2022-02-20 23:49:04,529 INFO L290 TraceCheckUtils]: 1: Hoare triple {2849#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post12#1, main_#t~nondet11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~post18#1, main_~next~0#1.base, main_~next~0#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~post22#1, main_~next~1#1.base, main_~next~1#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset, main_~length~0#1;call main_~#list~0#1.base, main_~#list~0#1.offset := #Ultimate.allocOnStack(4bv32);call write~init~$Pointer$(0bv32, 0bv32, main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32);main_~length~0#1 := 0bv32; {2849#true} is VALID [2022-02-20 23:49:04,530 INFO L290 TraceCheckUtils]: 2: Hoare triple {2849#true} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := ~bvadd32(1bv32, append_#t~post3#1);havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {2860#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:04,531 INFO L290 TraceCheckUtils]: 3: Hoare triple {2860#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L533 {2860#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:04,531 INFO L290 TraceCheckUtils]: 4: Hoare triple {2860#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L533-1 {2860#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:04,532 INFO L290 TraceCheckUtils]: 5: Hoare triple {2860#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {2860#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:04,533 INFO L290 TraceCheckUtils]: 6: Hoare triple {2860#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L534 {2860#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:04,534 INFO L290 TraceCheckUtils]: 7: Hoare triple {2860#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} assume !(append_#t~mem6#1.base != 0bv32 || append_#t~mem6#1.offset != 0bv32);call append_#t~malloc9#1.base, append_#t~malloc9#1.offset := #Ultimate.allocOnHeap(8bv32);append_#t~ite10#1.base, append_#t~ite10#1.offset := append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {2860#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:04,535 INFO L290 TraceCheckUtils]: 8: Hoare triple {2860#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} SUMMARY for call write~$Pointer$(append_#t~ite10#1.base, append_#t~ite10#1.offset, append_~item~0#1.base, ~bvadd32(4bv32, append_~item~0#1.offset), 4bv32); srcloc: L534-3 {2879#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:49:04,535 INFO L290 TraceCheckUtils]: 9: Hoare triple {2879#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1)))} havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~ite10#1.base, append_#t~ite10#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~mem8#1.base, append_#t~mem8#1.offset;havoc append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {2879#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:49:04,541 INFO L290 TraceCheckUtils]: 10: Hoare triple {2879#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1)))} SUMMARY for call write~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L537 {2886#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (_ bv1 1))} is VALID [2022-02-20 23:49:04,542 INFO L290 TraceCheckUtils]: 11: Hoare triple {2886#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (_ bv1 1))} assume { :end_inline_append } true;main_#t~post12#1 := main_~length~0#1;main_~length~0#1 := ~bvadd32(1bv32, main_#t~post12#1);havoc main_#t~post12#1; {2886#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (_ bv1 1))} is VALID [2022-02-20 23:49:04,542 INFO L290 TraceCheckUtils]: 12: Hoare triple {2886#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (_ bv1 1))} assume !(0bv32 != main_#t~nondet11#1 && ~bvslt32(~c~0, 20bv32));havoc main_#t~nondet11#1; {2886#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (_ bv1 1))} is VALID [2022-02-20 23:49:04,542 INFO L290 TraceCheckUtils]: 13: Hoare triple {2886#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (_ bv1 1))} assume ~bvsgt32(main_~length~0#1, 0bv32); {2886#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (_ bv1 1))} is VALID [2022-02-20 23:49:04,543 INFO L290 TraceCheckUtils]: 14: Hoare triple {2886#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (_ bv1 1))} assume !~bvslt32(main_~length~0#1, 0bv32); {2886#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (_ bv1 1))} is VALID [2022-02-20 23:49:04,544 INFO L290 TraceCheckUtils]: 15: Hoare triple {2886#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (_ bv1 1))} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32); srcloc: L548-2 {2902#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_#t~mem15#1.base|))} is VALID [2022-02-20 23:49:04,544 INFO L290 TraceCheckUtils]: 16: Hoare triple {2902#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_#t~mem15#1.base|))} assume !(1bv1 == #valid[main_#t~mem15#1.base]); {2850#false} is VALID [2022-02-20 23:49:04,544 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:49:04,545 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:49:04,545 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:49:04,545 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [2115893580] [2022-02-20 23:49:04,545 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [2115893580] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:49:04,545 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:49:04,545 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:49:04,546 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [516327122] [2022-02-20 23:49:04,546 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:49:04,546 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 3.4) internal successors, (17), 6 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 17 [2022-02-20 23:49:04,546 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:04,547 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 3.4) internal successors, (17), 6 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:04,569 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:04,570 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:49:04,570 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:49:04,570 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:49:04,570 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:49:04,571 INFO L87 Difference]: Start difference. First operand 86 states and 95 transitions. Second operand has 6 states, 5 states have (on average 3.4) internal successors, (17), 6 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:05,368 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:05,368 INFO L93 Difference]: Finished difference Result 102 states and 107 transitions. [2022-02-20 23:49:05,368 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:49:05,369 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 3.4) internal successors, (17), 6 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 17 [2022-02-20 23:49:05,369 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:05,369 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 3.4) internal successors, (17), 6 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:05,370 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 105 transitions. [2022-02-20 23:49:05,370 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 3.4) internal successors, (17), 6 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:05,372 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 105 transitions. [2022-02-20 23:49:05,372 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 105 transitions. [2022-02-20 23:49:05,490 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 105 edges. 105 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:05,491 INFO L225 Difference]: With dead ends: 102 [2022-02-20 23:49:05,491 INFO L226 Difference]: Without dead ends: 102 [2022-02-20 23:49:05,492 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 19 GetRequests, 12 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=27, Invalid=45, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:49:05,492 INFO L933 BasicCegarLoop]: 37 mSDtfsCounter, 129 mSDsluCounter, 70 mSDsCounter, 0 mSdLazyCounter, 155 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 129 SdHoareTripleChecker+Valid, 107 SdHoareTripleChecker+Invalid, 162 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 155 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:05,493 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [129 Valid, 107 Invalid, 162 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 155 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-02-20 23:49:05,493 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 102 states. [2022-02-20 23:49:05,495 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 102 to 86. [2022-02-20 23:49:05,496 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:05,496 INFO L82 GeneralOperation]: Start isEquivalent. First operand 102 states. Second operand has 86 states, 59 states have (on average 1.5932203389830508) internal successors, (94), 85 states have internal predecessors, (94), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:05,496 INFO L74 IsIncluded]: Start isIncluded. First operand 102 states. Second operand has 86 states, 59 states have (on average 1.5932203389830508) internal successors, (94), 85 states have internal predecessors, (94), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:05,497 INFO L87 Difference]: Start difference. First operand 102 states. Second operand has 86 states, 59 states have (on average 1.5932203389830508) internal successors, (94), 85 states have internal predecessors, (94), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:05,498 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:05,499 INFO L93 Difference]: Finished difference Result 102 states and 107 transitions. [2022-02-20 23:49:05,499 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 107 transitions. [2022-02-20 23:49:05,499 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:05,499 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:05,500 INFO L74 IsIncluded]: Start isIncluded. First operand has 86 states, 59 states have (on average 1.5932203389830508) internal successors, (94), 85 states have internal predecessors, (94), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 102 states. [2022-02-20 23:49:05,500 INFO L87 Difference]: Start difference. First operand has 86 states, 59 states have (on average 1.5932203389830508) internal successors, (94), 85 states have internal predecessors, (94), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 102 states. [2022-02-20 23:49:05,502 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:05,502 INFO L93 Difference]: Finished difference Result 102 states and 107 transitions. [2022-02-20 23:49:05,502 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 107 transitions. [2022-02-20 23:49:05,502 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:05,502 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:05,503 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:05,503 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:05,503 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 86 states, 59 states have (on average 1.5932203389830508) internal successors, (94), 85 states have internal predecessors, (94), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:05,504 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 86 states to 86 states and 94 transitions. [2022-02-20 23:49:05,505 INFO L78 Accepts]: Start accepts. Automaton has 86 states and 94 transitions. Word has length 17 [2022-02-20 23:49:05,505 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:05,505 INFO L470 AbstractCegarLoop]: Abstraction has 86 states and 94 transitions. [2022-02-20 23:49:05,505 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 3.4) internal successors, (17), 6 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:05,505 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 94 transitions. [2022-02-20 23:49:05,506 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-02-20 23:49:05,506 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:05,506 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:49:05,517 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (8)] Forceful destruction successful, exit code 0 [2022-02-20 23:49:05,717 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:49:05,717 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr24REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 40 more)] === [2022-02-20 23:49:05,718 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:05,718 INFO L85 PathProgramCache]: Analyzing trace with hash 1870124676, now seen corresponding path program 1 times [2022-02-20 23:49:05,718 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:49:05,718 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1574529156] [2022-02-20 23:49:05,718 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:05,718 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:49:05,719 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:49:05,719 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:49:05,720 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (9)] Waiting until timeout for monitored process [2022-02-20 23:49:05,788 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:05,791 INFO L263 TraceCheckSpWp]: Trace formula consists of 115 conjuncts, 15 conjunts are in the unsatisfiable core [2022-02-20 23:49:05,802 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:05,803 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:06,016 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:49:06,023 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:49:06,096 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 9 [2022-02-20 23:49:06,101 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2022-02-20 23:49:06,118 INFO L290 TraceCheckUtils]: 0: Hoare triple {3303#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~c~0 := 0bv32; {3303#true} is VALID [2022-02-20 23:49:06,118 INFO L290 TraceCheckUtils]: 1: Hoare triple {3303#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post12#1, main_#t~nondet11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~post18#1, main_~next~0#1.base, main_~next~0#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~post22#1, main_~next~1#1.base, main_~next~1#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset, main_~length~0#1;call main_~#list~0#1.base, main_~#list~0#1.offset := #Ultimate.allocOnStack(4bv32);call write~init~$Pointer$(0bv32, 0bv32, main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32);main_~length~0#1 := 0bv32; {3303#true} is VALID [2022-02-20 23:49:06,119 INFO L290 TraceCheckUtils]: 2: Hoare triple {3303#true} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := ~bvadd32(1bv32, append_#t~post3#1);havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {3314#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:06,119 INFO L290 TraceCheckUtils]: 3: Hoare triple {3314#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L533 {3314#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:06,120 INFO L290 TraceCheckUtils]: 4: Hoare triple {3314#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L533-1 {3314#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:06,120 INFO L290 TraceCheckUtils]: 5: Hoare triple {3314#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {3314#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:06,121 INFO L290 TraceCheckUtils]: 6: Hoare triple {3314#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L534 {3314#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:06,122 INFO L290 TraceCheckUtils]: 7: Hoare triple {3314#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} assume !(append_#t~mem6#1.base != 0bv32 || append_#t~mem6#1.offset != 0bv32);call append_#t~malloc9#1.base, append_#t~malloc9#1.offset := #Ultimate.allocOnHeap(8bv32);append_#t~ite10#1.base, append_#t~ite10#1.offset := append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {3314#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:06,122 INFO L290 TraceCheckUtils]: 8: Hoare triple {3314#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} SUMMARY for call write~$Pointer$(append_#t~ite10#1.base, append_#t~ite10#1.offset, append_~item~0#1.base, ~bvadd32(4bv32, append_~item~0#1.offset), 4bv32); srcloc: L534-3 {3333#(and (bvule (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:06,123 INFO L290 TraceCheckUtils]: 9: Hoare triple {3333#(and (bvule (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~ite10#1.base, append_#t~ite10#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~mem8#1.base, append_#t~mem8#1.offset;havoc append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {3333#(and (bvule (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:06,125 INFO L290 TraceCheckUtils]: 10: Hoare triple {3333#(and (bvule (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} SUMMARY for call write~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L537 {3340#(and (bvule (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))} is VALID [2022-02-20 23:49:06,126 INFO L290 TraceCheckUtils]: 11: Hoare triple {3340#(and (bvule (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))} assume { :end_inline_append } true;main_#t~post12#1 := main_~length~0#1;main_~length~0#1 := ~bvadd32(1bv32, main_#t~post12#1);havoc main_#t~post12#1; {3340#(and (bvule (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))} is VALID [2022-02-20 23:49:06,126 INFO L290 TraceCheckUtils]: 12: Hoare triple {3340#(and (bvule (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))} assume !(0bv32 != main_#t~nondet11#1 && ~bvslt32(~c~0, 20bv32));havoc main_#t~nondet11#1; {3340#(and (bvule (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))} is VALID [2022-02-20 23:49:06,127 INFO L290 TraceCheckUtils]: 13: Hoare triple {3340#(and (bvule (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))} assume ~bvsgt32(main_~length~0#1, 0bv32); {3340#(and (bvule (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))} is VALID [2022-02-20 23:49:06,127 INFO L290 TraceCheckUtils]: 14: Hoare triple {3340#(and (bvule (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))} assume !~bvslt32(main_~length~0#1, 0bv32); {3340#(and (bvule (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))} is VALID [2022-02-20 23:49:06,128 INFO L290 TraceCheckUtils]: 15: Hoare triple {3340#(and (bvule (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32); srcloc: L548-2 {3356#(and (= |ULTIMATE.start_main_#t~mem15#1.offset| (_ bv0 32)) (bvule (_ bv8 32) (select |#length| |ULTIMATE.start_main_#t~mem15#1.base|)))} is VALID [2022-02-20 23:49:06,129 INFO L290 TraceCheckUtils]: 16: Hoare triple {3356#(and (= |ULTIMATE.start_main_#t~mem15#1.offset| (_ bv0 32)) (bvule (_ bv8 32) (select |#length| |ULTIMATE.start_main_#t~mem15#1.base|)))} assume !((~bvule32(~bvadd32(4bv32, main_#t~mem15#1.offset), #length[main_#t~mem15#1.base]) && ~bvule32(main_#t~mem15#1.offset, ~bvadd32(4bv32, main_#t~mem15#1.offset))) && ~bvule32(0bv32, main_#t~mem15#1.offset)); {3304#false} is VALID [2022-02-20 23:49:06,129 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:49:06,130 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:49:06,130 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:49:06,130 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1574529156] [2022-02-20 23:49:06,130 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1574529156] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:49:06,130 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:49:06,130 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:49:06,130 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [256902808] [2022-02-20 23:49:06,130 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:49:06,131 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 3.4) internal successors, (17), 6 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 17 [2022-02-20 23:49:06,131 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:06,131 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 3.4) internal successors, (17), 6 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:06,158 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:06,158 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:49:06,158 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:49:06,158 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:49:06,159 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:49:06,159 INFO L87 Difference]: Start difference. First operand 86 states and 94 transitions. Second operand has 6 states, 5 states have (on average 3.4) internal successors, (17), 6 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:06,878 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:06,879 INFO L93 Difference]: Finished difference Result 97 states and 102 transitions. [2022-02-20 23:49:06,879 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:49:06,879 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 3.4) internal successors, (17), 6 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 17 [2022-02-20 23:49:06,879 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:06,879 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 3.4) internal successors, (17), 6 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:06,880 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 96 transitions. [2022-02-20 23:49:06,880 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 3.4) internal successors, (17), 6 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:06,881 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 96 transitions. [2022-02-20 23:49:06,881 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 96 transitions. [2022-02-20 23:49:07,011 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 96 edges. 96 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:07,012 INFO L225 Difference]: With dead ends: 97 [2022-02-20 23:49:07,012 INFO L226 Difference]: Without dead ends: 97 [2022-02-20 23:49:07,013 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 12 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=22, Invalid=34, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:49:07,013 INFO L933 BasicCegarLoop]: 42 mSDtfsCounter, 131 mSDsluCounter, 59 mSDsCounter, 0 mSdLazyCounter, 99 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 131 SdHoareTripleChecker+Valid, 101 SdHoareTripleChecker+Invalid, 104 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 99 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:07,013 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [131 Valid, 101 Invalid, 104 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 99 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:49:07,014 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 97 states. [2022-02-20 23:49:07,016 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 97 to 85. [2022-02-20 23:49:07,016 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:07,016 INFO L82 GeneralOperation]: Start isEquivalent. First operand 97 states. Second operand has 85 states, 59 states have (on average 1.5593220338983051) internal successors, (92), 84 states have internal predecessors, (92), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:07,017 INFO L74 IsIncluded]: Start isIncluded. First operand 97 states. Second operand has 85 states, 59 states have (on average 1.5593220338983051) internal successors, (92), 84 states have internal predecessors, (92), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:07,017 INFO L87 Difference]: Start difference. First operand 97 states. Second operand has 85 states, 59 states have (on average 1.5593220338983051) internal successors, (92), 84 states have internal predecessors, (92), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:07,019 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:07,019 INFO L93 Difference]: Finished difference Result 97 states and 102 transitions. [2022-02-20 23:49:07,019 INFO L276 IsEmpty]: Start isEmpty. Operand 97 states and 102 transitions. [2022-02-20 23:49:07,019 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:07,020 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:07,020 INFO L74 IsIncluded]: Start isIncluded. First operand has 85 states, 59 states have (on average 1.5593220338983051) internal successors, (92), 84 states have internal predecessors, (92), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 97 states. [2022-02-20 23:49:07,020 INFO L87 Difference]: Start difference. First operand has 85 states, 59 states have (on average 1.5593220338983051) internal successors, (92), 84 states have internal predecessors, (92), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 97 states. [2022-02-20 23:49:07,022 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:07,022 INFO L93 Difference]: Finished difference Result 97 states and 102 transitions. [2022-02-20 23:49:07,022 INFO L276 IsEmpty]: Start isEmpty. Operand 97 states and 102 transitions. [2022-02-20 23:49:07,023 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:07,023 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:07,023 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:07,023 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:07,023 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 85 states, 59 states have (on average 1.5593220338983051) internal successors, (92), 84 states have internal predecessors, (92), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:07,025 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 85 states to 85 states and 92 transitions. [2022-02-20 23:49:07,025 INFO L78 Accepts]: Start accepts. Automaton has 85 states and 92 transitions. Word has length 17 [2022-02-20 23:49:07,025 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:07,025 INFO L470 AbstractCegarLoop]: Abstraction has 85 states and 92 transitions. [2022-02-20 23:49:07,025 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 3.4) internal successors, (17), 6 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:07,026 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 92 transitions. [2022-02-20 23:49:07,026 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-02-20 23:49:07,026 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:07,026 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:49:07,039 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (9)] Ended with exit code 0 [2022-02-20 23:49:07,235 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:49:07,236 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting ULTIMATE.startErr16REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 40 more)] === [2022-02-20 23:49:07,236 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:07,236 INFO L85 PathProgramCache]: Analyzing trace with hash 1870110741, now seen corresponding path program 1 times [2022-02-20 23:49:07,236 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:49:07,236 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1402379472] [2022-02-20 23:49:07,236 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:07,236 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:49:07,237 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:49:07,237 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:49:07,239 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (10)] Waiting until timeout for monitored process [2022-02-20 23:49:07,323 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:07,327 INFO L263 TraceCheckSpWp]: Trace formula consists of 115 conjuncts, 3 conjunts are in the unsatisfiable core [2022-02-20 23:49:07,337 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:07,338 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:07,400 INFO L290 TraceCheckUtils]: 0: Hoare triple {3739#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~c~0 := 0bv32; {3739#true} is VALID [2022-02-20 23:49:07,400 INFO L290 TraceCheckUtils]: 1: Hoare triple {3739#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post12#1, main_#t~nondet11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~post18#1, main_~next~0#1.base, main_~next~0#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~post22#1, main_~next~1#1.base, main_~next~1#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset, main_~length~0#1;call main_~#list~0#1.base, main_~#list~0#1.offset := #Ultimate.allocOnStack(4bv32);call write~init~$Pointer$(0bv32, 0bv32, main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32);main_~length~0#1 := 0bv32; {3747#(= (_ bv0 32) |ULTIMATE.start_main_~length~0#1|)} is VALID [2022-02-20 23:49:07,401 INFO L290 TraceCheckUtils]: 2: Hoare triple {3747#(= (_ bv0 32) |ULTIMATE.start_main_~length~0#1|)} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := ~bvadd32(1bv32, append_#t~post3#1);havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {3747#(= (_ bv0 32) |ULTIMATE.start_main_~length~0#1|)} is VALID [2022-02-20 23:49:07,402 INFO L290 TraceCheckUtils]: 3: Hoare triple {3747#(= (_ bv0 32) |ULTIMATE.start_main_~length~0#1|)} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L533 {3747#(= (_ bv0 32) |ULTIMATE.start_main_~length~0#1|)} is VALID [2022-02-20 23:49:07,402 INFO L290 TraceCheckUtils]: 4: Hoare triple {3747#(= (_ bv0 32) |ULTIMATE.start_main_~length~0#1|)} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L533-1 {3747#(= (_ bv0 32) |ULTIMATE.start_main_~length~0#1|)} is VALID [2022-02-20 23:49:07,403 INFO L290 TraceCheckUtils]: 5: Hoare triple {3747#(= (_ bv0 32) |ULTIMATE.start_main_~length~0#1|)} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {3747#(= (_ bv0 32) |ULTIMATE.start_main_~length~0#1|)} is VALID [2022-02-20 23:49:07,403 INFO L290 TraceCheckUtils]: 6: Hoare triple {3747#(= (_ bv0 32) |ULTIMATE.start_main_~length~0#1|)} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L534 {3747#(= (_ bv0 32) |ULTIMATE.start_main_~length~0#1|)} is VALID [2022-02-20 23:49:07,404 INFO L290 TraceCheckUtils]: 7: Hoare triple {3747#(= (_ bv0 32) |ULTIMATE.start_main_~length~0#1|)} assume !(append_#t~mem6#1.base != 0bv32 || append_#t~mem6#1.offset != 0bv32);call append_#t~malloc9#1.base, append_#t~malloc9#1.offset := #Ultimate.allocOnHeap(8bv32);append_#t~ite10#1.base, append_#t~ite10#1.offset := append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {3747#(= (_ bv0 32) |ULTIMATE.start_main_~length~0#1|)} is VALID [2022-02-20 23:49:07,405 INFO L290 TraceCheckUtils]: 8: Hoare triple {3747#(= (_ bv0 32) |ULTIMATE.start_main_~length~0#1|)} SUMMARY for call write~$Pointer$(append_#t~ite10#1.base, append_#t~ite10#1.offset, append_~item~0#1.base, ~bvadd32(4bv32, append_~item~0#1.offset), 4bv32); srcloc: L534-3 {3747#(= (_ bv0 32) |ULTIMATE.start_main_~length~0#1|)} is VALID [2022-02-20 23:49:07,405 INFO L290 TraceCheckUtils]: 9: Hoare triple {3747#(= (_ bv0 32) |ULTIMATE.start_main_~length~0#1|)} havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~ite10#1.base, append_#t~ite10#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~mem8#1.base, append_#t~mem8#1.offset;havoc append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {3747#(= (_ bv0 32) |ULTIMATE.start_main_~length~0#1|)} is VALID [2022-02-20 23:49:07,406 INFO L290 TraceCheckUtils]: 10: Hoare triple {3747#(= (_ bv0 32) |ULTIMATE.start_main_~length~0#1|)} SUMMARY for call write~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L537 {3747#(= (_ bv0 32) |ULTIMATE.start_main_~length~0#1|)} is VALID [2022-02-20 23:49:07,407 INFO L290 TraceCheckUtils]: 11: Hoare triple {3747#(= (_ bv0 32) |ULTIMATE.start_main_~length~0#1|)} assume { :end_inline_append } true;main_#t~post12#1 := main_~length~0#1;main_~length~0#1 := ~bvadd32(1bv32, main_#t~post12#1);havoc main_#t~post12#1; {3778#(= (_ bv1 32) |ULTIMATE.start_main_~length~0#1|)} is VALID [2022-02-20 23:49:07,407 INFO L290 TraceCheckUtils]: 12: Hoare triple {3778#(= (_ bv1 32) |ULTIMATE.start_main_~length~0#1|)} assume !(0bv32 != main_#t~nondet11#1 && ~bvslt32(~c~0, 20bv32));havoc main_#t~nondet11#1; {3778#(= (_ bv1 32) |ULTIMATE.start_main_~length~0#1|)} is VALID [2022-02-20 23:49:07,408 INFO L290 TraceCheckUtils]: 13: Hoare triple {3778#(= (_ bv1 32) |ULTIMATE.start_main_~length~0#1|)} assume ~bvsgt32(main_~length~0#1, 0bv32); {3778#(= (_ bv1 32) |ULTIMATE.start_main_~length~0#1|)} is VALID [2022-02-20 23:49:07,408 INFO L290 TraceCheckUtils]: 14: Hoare triple {3778#(= (_ bv1 32) |ULTIMATE.start_main_~length~0#1|)} assume ~bvslt32(main_~length~0#1, 0bv32); {3740#false} is VALID [2022-02-20 23:49:07,408 INFO L290 TraceCheckUtils]: 15: Hoare triple {3740#false} SUMMARY for call main_#t~mem13#1.base, main_#t~mem13#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32); srcloc: L549 {3740#false} is VALID [2022-02-20 23:49:07,409 INFO L290 TraceCheckUtils]: 16: Hoare triple {3740#false} assume !(1bv1 == #valid[main_#t~mem13#1.base]); {3740#false} is VALID [2022-02-20 23:49:07,409 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:49:07,409 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:49:07,409 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:49:07,409 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1402379472] [2022-02-20 23:49:07,410 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1402379472] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:49:07,410 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:49:07,410 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:49:07,410 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2100510454] [2022-02-20 23:49:07,410 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:49:07,411 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 4.25) internal successors, (17), 4 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 17 [2022-02-20 23:49:07,411 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:07,412 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 4.25) internal successors, (17), 4 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:07,432 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:07,432 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:49:07,433 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:49:07,433 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:49:07,433 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:49:07,433 INFO L87 Difference]: Start difference. First operand 85 states and 92 transitions. Second operand has 4 states, 4 states have (on average 4.25) internal successors, (17), 4 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:07,710 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:07,710 INFO L93 Difference]: Finished difference Result 125 states and 133 transitions. [2022-02-20 23:49:07,710 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:49:07,711 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 4.25) internal successors, (17), 4 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 17 [2022-02-20 23:49:07,711 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:07,711 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 4.25) internal successors, (17), 4 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:07,712 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 124 transitions. [2022-02-20 23:49:07,712 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 4.25) internal successors, (17), 4 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:07,713 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 124 transitions. [2022-02-20 23:49:07,713 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 124 transitions. [2022-02-20 23:49:07,861 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 124 edges. 124 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:07,863 INFO L225 Difference]: With dead ends: 125 [2022-02-20 23:49:07,863 INFO L226 Difference]: Without dead ends: 125 [2022-02-20 23:49:07,863 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 16 GetRequests, 14 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:49:07,864 INFO L933 BasicCegarLoop]: 78 mSDtfsCounter, 33 mSDsluCounter, 128 mSDsCounter, 0 mSdLazyCounter, 26 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 33 SdHoareTripleChecker+Valid, 206 SdHoareTripleChecker+Invalid, 29 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 26 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:07,864 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [33 Valid, 206 Invalid, 29 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 26 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:49:07,864 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 125 states. [2022-02-20 23:49:07,867 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 125 to 102. [2022-02-20 23:49:07,867 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:07,867 INFO L82 GeneralOperation]: Start isEquivalent. First operand 125 states. Second operand has 102 states, 76 states have (on average 1.513157894736842) internal successors, (115), 101 states have internal predecessors, (115), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:07,868 INFO L74 IsIncluded]: Start isIncluded. First operand 125 states. Second operand has 102 states, 76 states have (on average 1.513157894736842) internal successors, (115), 101 states have internal predecessors, (115), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:07,868 INFO L87 Difference]: Start difference. First operand 125 states. Second operand has 102 states, 76 states have (on average 1.513157894736842) internal successors, (115), 101 states have internal predecessors, (115), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:07,870 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:07,870 INFO L93 Difference]: Finished difference Result 125 states and 133 transitions. [2022-02-20 23:49:07,870 INFO L276 IsEmpty]: Start isEmpty. Operand 125 states and 133 transitions. [2022-02-20 23:49:07,870 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:07,870 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:07,871 INFO L74 IsIncluded]: Start isIncluded. First operand has 102 states, 76 states have (on average 1.513157894736842) internal successors, (115), 101 states have internal predecessors, (115), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 125 states. [2022-02-20 23:49:07,871 INFO L87 Difference]: Start difference. First operand has 102 states, 76 states have (on average 1.513157894736842) internal successors, (115), 101 states have internal predecessors, (115), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 125 states. [2022-02-20 23:49:07,873 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:07,873 INFO L93 Difference]: Finished difference Result 125 states and 133 transitions. [2022-02-20 23:49:07,873 INFO L276 IsEmpty]: Start isEmpty. Operand 125 states and 133 transitions. [2022-02-20 23:49:07,873 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:07,873 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:07,873 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:07,873 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:07,874 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 102 states, 76 states have (on average 1.513157894736842) internal successors, (115), 101 states have internal predecessors, (115), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:07,878 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 102 states to 102 states and 115 transitions. [2022-02-20 23:49:07,879 INFO L78 Accepts]: Start accepts. Automaton has 102 states and 115 transitions. Word has length 17 [2022-02-20 23:49:07,879 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:07,881 INFO L470 AbstractCegarLoop]: Abstraction has 102 states and 115 transitions. [2022-02-20 23:49:07,882 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 4.25) internal successors, (17), 4 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:07,882 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 115 transitions. [2022-02-20 23:49:07,882 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 21 [2022-02-20 23:49:07,883 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:07,883 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:49:07,895 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (10)] Forceful destruction successful, exit code 0 [2022-02-20 23:49:08,092 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:49:08,092 INFO L402 AbstractCegarLoop]: === Iteration 10 === Targeting ULTIMATE.startErr27ASSERT_VIOLATIONMEMORY_FREE === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 40 more)] === [2022-02-20 23:49:08,093 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:08,093 INFO L85 PathProgramCache]: Analyzing trace with hash -1431526068, now seen corresponding path program 1 times [2022-02-20 23:49:08,093 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:49:08,093 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [257014770] [2022-02-20 23:49:08,093 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:08,094 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:49:08,094 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:49:08,095 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:49:08,096 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (11)] Waiting until timeout for monitored process [2022-02-20 23:49:08,175 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:08,180 INFO L263 TraceCheckSpWp]: Trace formula consists of 129 conjuncts, 10 conjunts are in the unsatisfiable core [2022-02-20 23:49:08,192 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:08,193 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:08,325 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:49:08,369 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2022-02-20 23:49:08,376 INFO L290 TraceCheckUtils]: 0: Hoare triple {4270#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~c~0 := 0bv32; {4270#true} is VALID [2022-02-20 23:49:08,376 INFO L290 TraceCheckUtils]: 1: Hoare triple {4270#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post12#1, main_#t~nondet11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~post18#1, main_~next~0#1.base, main_~next~0#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~post22#1, main_~next~1#1.base, main_~next~1#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset, main_~length~0#1;call main_~#list~0#1.base, main_~#list~0#1.offset := #Ultimate.allocOnStack(4bv32);call write~init~$Pointer$(0bv32, 0bv32, main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32);main_~length~0#1 := 0bv32; {4270#true} is VALID [2022-02-20 23:49:08,378 INFO L290 TraceCheckUtils]: 2: Hoare triple {4270#true} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := ~bvadd32(1bv32, append_#t~post3#1);havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {4281#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:08,378 INFO L290 TraceCheckUtils]: 3: Hoare triple {4281#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L533 {4281#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:08,379 INFO L290 TraceCheckUtils]: 4: Hoare triple {4281#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L533-1 {4281#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:08,380 INFO L290 TraceCheckUtils]: 5: Hoare triple {4281#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {4281#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:08,380 INFO L290 TraceCheckUtils]: 6: Hoare triple {4281#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L534 {4281#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:08,381 INFO L290 TraceCheckUtils]: 7: Hoare triple {4281#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} assume !(append_#t~mem6#1.base != 0bv32 || append_#t~mem6#1.offset != 0bv32);call append_#t~malloc9#1.base, append_#t~malloc9#1.offset := #Ultimate.allocOnHeap(8bv32);append_#t~ite10#1.base, append_#t~ite10#1.offset := append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {4281#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:08,382 INFO L290 TraceCheckUtils]: 8: Hoare triple {4281#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} SUMMARY for call write~$Pointer$(append_#t~ite10#1.base, append_#t~ite10#1.offset, append_~item~0#1.base, ~bvadd32(4bv32, append_~item~0#1.offset), 4bv32); srcloc: L534-3 {4281#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:08,382 INFO L290 TraceCheckUtils]: 9: Hoare triple {4281#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~ite10#1.base, append_#t~ite10#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~mem8#1.base, append_#t~mem8#1.offset;havoc append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {4281#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:08,384 INFO L290 TraceCheckUtils]: 10: Hoare triple {4281#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} SUMMARY for call write~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L537 {4306#(= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))} is VALID [2022-02-20 23:49:08,385 INFO L290 TraceCheckUtils]: 11: Hoare triple {4306#(= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))} assume { :end_inline_append } true;main_#t~post12#1 := main_~length~0#1;main_~length~0#1 := ~bvadd32(1bv32, main_#t~post12#1);havoc main_#t~post12#1; {4306#(= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))} is VALID [2022-02-20 23:49:08,385 INFO L290 TraceCheckUtils]: 12: Hoare triple {4306#(= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))} assume !(0bv32 != main_#t~nondet11#1 && ~bvslt32(~c~0, 20bv32));havoc main_#t~nondet11#1; {4306#(= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))} is VALID [2022-02-20 23:49:08,386 INFO L290 TraceCheckUtils]: 13: Hoare triple {4306#(= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))} assume ~bvsgt32(main_~length~0#1, 0bv32); {4306#(= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))} is VALID [2022-02-20 23:49:08,386 INFO L290 TraceCheckUtils]: 14: Hoare triple {4306#(= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))} assume !~bvslt32(main_~length~0#1, 0bv32); {4306#(= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))} is VALID [2022-02-20 23:49:08,387 INFO L290 TraceCheckUtils]: 15: Hoare triple {4306#(= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32); srcloc: L548-2 {4306#(= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))} is VALID [2022-02-20 23:49:08,390 INFO L290 TraceCheckUtils]: 16: Hoare triple {4306#(= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))} SUMMARY for call main_#t~mem16#1.base, main_#t~mem16#1.offset := read~$Pointer$(main_#t~mem15#1.base, main_#t~mem15#1.offset, 4bv32); srcloc: L551 {4306#(= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))} is VALID [2022-02-20 23:49:08,390 INFO L290 TraceCheckUtils]: 17: Hoare triple {4306#(= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))} main_~next~0#1.base, main_~next~0#1.offset := main_#t~mem16#1.base, main_#t~mem16#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset;havoc main_#t~mem16#1.base, main_#t~mem16#1.offset; {4306#(= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))} is VALID [2022-02-20 23:49:08,391 INFO L290 TraceCheckUtils]: 18: Hoare triple {4306#(= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))} SUMMARY for call main_#t~mem17#1.base, main_#t~mem17#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32); srcloc: L552 {4331#(= |ULTIMATE.start_main_#t~mem17#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:49:08,392 INFO L290 TraceCheckUtils]: 19: Hoare triple {4331#(= |ULTIMATE.start_main_#t~mem17#1.offset| (_ bv0 32))} assume !(0bv32 == main_#t~mem17#1.offset); {4271#false} is VALID [2022-02-20 23:49:08,392 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:49:08,392 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:49:08,392 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:49:08,392 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [257014770] [2022-02-20 23:49:08,392 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [257014770] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:49:08,392 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:49:08,392 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:49:08,392 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [30231655] [2022-02-20 23:49:08,393 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:49:08,393 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 5.0) internal successors, (20), 5 states have internal predecessors, (20), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 20 [2022-02-20 23:49:08,393 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:08,393 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 5.0) internal successors, (20), 5 states have internal predecessors, (20), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:08,421 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:08,422 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:49:08,422 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:49:08,422 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:49:08,422 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:49:08,422 INFO L87 Difference]: Start difference. First operand 102 states and 115 transitions. Second operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 5 states have internal predecessors, (20), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:08,884 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:08,884 INFO L93 Difference]: Finished difference Result 113 states and 123 transitions. [2022-02-20 23:49:08,884 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:49:08,885 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 5.0) internal successors, (20), 5 states have internal predecessors, (20), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 20 [2022-02-20 23:49:08,885 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:08,885 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 5 states have internal predecessors, (20), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:08,886 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 93 transitions. [2022-02-20 23:49:08,886 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 5 states have internal predecessors, (20), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:08,887 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 93 transitions. [2022-02-20 23:49:08,887 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 93 transitions. [2022-02-20 23:49:08,980 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 93 edges. 93 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:08,981 INFO L225 Difference]: With dead ends: 113 [2022-02-20 23:49:08,981 INFO L226 Difference]: Without dead ends: 113 [2022-02-20 23:49:08,981 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 21 GetRequests, 16 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=25, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:49:08,982 INFO L933 BasicCegarLoop]: 46 mSDtfsCounter, 122 mSDsluCounter, 65 mSDsCounter, 0 mSdLazyCounter, 79 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 122 SdHoareTripleChecker+Valid, 111 SdHoareTripleChecker+Invalid, 82 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 79 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:08,982 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [122 Valid, 111 Invalid, 82 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 79 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:49:08,982 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 113 states. [2022-02-20 23:49:08,984 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 113 to 101. [2022-02-20 23:49:08,985 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:08,985 INFO L82 GeneralOperation]: Start isEquivalent. First operand 113 states. Second operand has 101 states, 76 states have (on average 1.486842105263158) internal successors, (113), 100 states have internal predecessors, (113), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:08,985 INFO L74 IsIncluded]: Start isIncluded. First operand 113 states. Second operand has 101 states, 76 states have (on average 1.486842105263158) internal successors, (113), 100 states have internal predecessors, (113), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:08,985 INFO L87 Difference]: Start difference. First operand 113 states. Second operand has 101 states, 76 states have (on average 1.486842105263158) internal successors, (113), 100 states have internal predecessors, (113), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:08,987 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:08,987 INFO L93 Difference]: Finished difference Result 113 states and 123 transitions. [2022-02-20 23:49:08,987 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 123 transitions. [2022-02-20 23:49:08,987 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:08,988 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:08,988 INFO L74 IsIncluded]: Start isIncluded. First operand has 101 states, 76 states have (on average 1.486842105263158) internal successors, (113), 100 states have internal predecessors, (113), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 113 states. [2022-02-20 23:49:08,988 INFO L87 Difference]: Start difference. First operand has 101 states, 76 states have (on average 1.486842105263158) internal successors, (113), 100 states have internal predecessors, (113), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 113 states. [2022-02-20 23:49:08,990 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:08,990 INFO L93 Difference]: Finished difference Result 113 states and 123 transitions. [2022-02-20 23:49:08,990 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 123 transitions. [2022-02-20 23:49:08,990 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:08,990 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:08,991 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:08,991 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:08,991 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 101 states, 76 states have (on average 1.486842105263158) internal successors, (113), 100 states have internal predecessors, (113), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:08,992 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 101 states to 101 states and 113 transitions. [2022-02-20 23:49:08,992 INFO L78 Accepts]: Start accepts. Automaton has 101 states and 113 transitions. Word has length 20 [2022-02-20 23:49:08,993 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:08,993 INFO L470 AbstractCegarLoop]: Abstraction has 101 states and 113 transitions. [2022-02-20 23:49:08,993 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 5.0) internal successors, (20), 5 states have internal predecessors, (20), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:08,993 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 113 transitions. [2022-02-20 23:49:08,993 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2022-02-20 23:49:08,994 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:08,994 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:49:09,003 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (11)] Forceful destruction successful, exit code 0 [2022-02-20 23:49:09,202 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:49:09,202 INFO L402 AbstractCegarLoop]: === Iteration 11 === Targeting ULTIMATE.startErr28ASSERT_VIOLATIONMEMORY_FREE === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 40 more)] === [2022-02-20 23:49:09,202 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:09,203 INFO L85 PathProgramCache]: Analyzing trace with hash -1427635036, now seen corresponding path program 1 times [2022-02-20 23:49:09,203 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:49:09,203 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1829479166] [2022-02-20 23:49:09,203 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:09,203 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:49:09,203 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:49:09,204 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:49:09,205 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (12)] Waiting until timeout for monitored process [2022-02-20 23:49:09,288 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:09,293 INFO L263 TraceCheckSpWp]: Trace formula consists of 130 conjuncts, 12 conjunts are in the unsatisfiable core [2022-02-20 23:49:09,313 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:09,315 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:09,538 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:49:09,633 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 11 [2022-02-20 23:49:09,658 INFO L290 TraceCheckUtils]: 0: Hoare triple {4778#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~c~0 := 0bv32; {4783#(bvult (_ bv0 32) |#StackHeapBarrier|)} is VALID [2022-02-20 23:49:09,659 INFO L290 TraceCheckUtils]: 1: Hoare triple {4783#(bvult (_ bv0 32) |#StackHeapBarrier|)} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post12#1, main_#t~nondet11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~post18#1, main_~next~0#1.base, main_~next~0#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~post22#1, main_~next~1#1.base, main_~next~1#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset, main_~length~0#1;call main_~#list~0#1.base, main_~#list~0#1.offset := #Ultimate.allocOnStack(4bv32);call write~init~$Pointer$(0bv32, 0bv32, main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32);main_~length~0#1 := 0bv32; {4783#(bvult (_ bv0 32) |#StackHeapBarrier|)} is VALID [2022-02-20 23:49:09,661 INFO L290 TraceCheckUtils]: 2: Hoare triple {4783#(bvult (_ bv0 32) |#StackHeapBarrier|)} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := ~bvadd32(1bv32, append_#t~post3#1);havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {4790#(and (bvult |ULTIMATE.start_append_~item~0#1.base| |#StackHeapBarrier|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (not (= |ULTIMATE.start_append_~item~0#1.base| (_ bv0 32))))} is VALID [2022-02-20 23:49:09,661 INFO L290 TraceCheckUtils]: 3: Hoare triple {4790#(and (bvult |ULTIMATE.start_append_~item~0#1.base| |#StackHeapBarrier|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (not (= |ULTIMATE.start_append_~item~0#1.base| (_ bv0 32))))} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L533 {4790#(and (bvult |ULTIMATE.start_append_~item~0#1.base| |#StackHeapBarrier|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (not (= |ULTIMATE.start_append_~item~0#1.base| (_ bv0 32))))} is VALID [2022-02-20 23:49:09,662 INFO L290 TraceCheckUtils]: 4: Hoare triple {4790#(and (bvult |ULTIMATE.start_append_~item~0#1.base| |#StackHeapBarrier|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (not (= |ULTIMATE.start_append_~item~0#1.base| (_ bv0 32))))} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L533-1 {4790#(and (bvult |ULTIMATE.start_append_~item~0#1.base| |#StackHeapBarrier|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (not (= |ULTIMATE.start_append_~item~0#1.base| (_ bv0 32))))} is VALID [2022-02-20 23:49:09,664 INFO L290 TraceCheckUtils]: 5: Hoare triple {4790#(and (bvult |ULTIMATE.start_append_~item~0#1.base| |#StackHeapBarrier|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (not (= |ULTIMATE.start_append_~item~0#1.base| (_ bv0 32))))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {4790#(and (bvult |ULTIMATE.start_append_~item~0#1.base| |#StackHeapBarrier|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (not (= |ULTIMATE.start_append_~item~0#1.base| (_ bv0 32))))} is VALID [2022-02-20 23:49:09,665 INFO L290 TraceCheckUtils]: 6: Hoare triple {4790#(and (bvult |ULTIMATE.start_append_~item~0#1.base| |#StackHeapBarrier|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (not (= |ULTIMATE.start_append_~item~0#1.base| (_ bv0 32))))} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L534 {4790#(and (bvult |ULTIMATE.start_append_~item~0#1.base| |#StackHeapBarrier|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (not (= |ULTIMATE.start_append_~item~0#1.base| (_ bv0 32))))} is VALID [2022-02-20 23:49:09,672 INFO L290 TraceCheckUtils]: 7: Hoare triple {4790#(and (bvult |ULTIMATE.start_append_~item~0#1.base| |#StackHeapBarrier|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (not (= |ULTIMATE.start_append_~item~0#1.base| (_ bv0 32))))} assume !(append_#t~mem6#1.base != 0bv32 || append_#t~mem6#1.offset != 0bv32);call append_#t~malloc9#1.base, append_#t~malloc9#1.offset := #Ultimate.allocOnHeap(8bv32);append_#t~ite10#1.base, append_#t~ite10#1.offset := append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {4790#(and (bvult |ULTIMATE.start_append_~item~0#1.base| |#StackHeapBarrier|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (not (= |ULTIMATE.start_append_~item~0#1.base| (_ bv0 32))))} is VALID [2022-02-20 23:49:09,673 INFO L290 TraceCheckUtils]: 8: Hoare triple {4790#(and (bvult |ULTIMATE.start_append_~item~0#1.base| |#StackHeapBarrier|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (not (= |ULTIMATE.start_append_~item~0#1.base| (_ bv0 32))))} SUMMARY for call write~$Pointer$(append_#t~ite10#1.base, append_#t~ite10#1.offset, append_~item~0#1.base, ~bvadd32(4bv32, append_~item~0#1.offset), 4bv32); srcloc: L534-3 {4790#(and (bvult |ULTIMATE.start_append_~item~0#1.base| |#StackHeapBarrier|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (not (= |ULTIMATE.start_append_~item~0#1.base| (_ bv0 32))))} is VALID [2022-02-20 23:49:09,673 INFO L290 TraceCheckUtils]: 9: Hoare triple {4790#(and (bvult |ULTIMATE.start_append_~item~0#1.base| |#StackHeapBarrier|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (not (= |ULTIMATE.start_append_~item~0#1.base| (_ bv0 32))))} havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~ite10#1.base, append_#t~ite10#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~mem8#1.base, append_#t~mem8#1.offset;havoc append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {4790#(and (bvult |ULTIMATE.start_append_~item~0#1.base| |#StackHeapBarrier|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (not (= |ULTIMATE.start_append_~item~0#1.base| (_ bv0 32))))} is VALID [2022-02-20 23:49:09,682 INFO L290 TraceCheckUtils]: 10: Hoare triple {4790#(and (bvult |ULTIMATE.start_append_~item~0#1.base| |#StackHeapBarrier|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (not (= |ULTIMATE.start_append_~item~0#1.base| (_ bv0 32))))} SUMMARY for call write~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L537 {4815#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (_ bv0 32))) (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) |#StackHeapBarrier|))} is VALID [2022-02-20 23:49:09,683 INFO L290 TraceCheckUtils]: 11: Hoare triple {4815#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (_ bv0 32))) (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) |#StackHeapBarrier|))} assume { :end_inline_append } true;main_#t~post12#1 := main_~length~0#1;main_~length~0#1 := ~bvadd32(1bv32, main_#t~post12#1);havoc main_#t~post12#1; {4815#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (_ bv0 32))) (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) |#StackHeapBarrier|))} is VALID [2022-02-20 23:49:09,683 INFO L290 TraceCheckUtils]: 12: Hoare triple {4815#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (_ bv0 32))) (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) |#StackHeapBarrier|))} assume !(0bv32 != main_#t~nondet11#1 && ~bvslt32(~c~0, 20bv32));havoc main_#t~nondet11#1; {4815#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (_ bv0 32))) (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) |#StackHeapBarrier|))} is VALID [2022-02-20 23:49:09,684 INFO L290 TraceCheckUtils]: 13: Hoare triple {4815#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (_ bv0 32))) (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) |#StackHeapBarrier|))} assume ~bvsgt32(main_~length~0#1, 0bv32); {4815#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (_ bv0 32))) (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) |#StackHeapBarrier|))} is VALID [2022-02-20 23:49:09,684 INFO L290 TraceCheckUtils]: 14: Hoare triple {4815#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (_ bv0 32))) (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) |#StackHeapBarrier|))} assume !~bvslt32(main_~length~0#1, 0bv32); {4815#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (_ bv0 32))) (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) |#StackHeapBarrier|))} is VALID [2022-02-20 23:49:09,685 INFO L290 TraceCheckUtils]: 15: Hoare triple {4815#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (_ bv0 32))) (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) |#StackHeapBarrier|))} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32); srcloc: L548-2 {4815#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (_ bv0 32))) (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) |#StackHeapBarrier|))} is VALID [2022-02-20 23:49:09,686 INFO L290 TraceCheckUtils]: 16: Hoare triple {4815#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (_ bv0 32))) (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) |#StackHeapBarrier|))} SUMMARY for call main_#t~mem16#1.base, main_#t~mem16#1.offset := read~$Pointer$(main_#t~mem15#1.base, main_#t~mem15#1.offset, 4bv32); srcloc: L551 {4815#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (_ bv0 32))) (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) |#StackHeapBarrier|))} is VALID [2022-02-20 23:49:09,686 INFO L290 TraceCheckUtils]: 17: Hoare triple {4815#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (_ bv0 32))) (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) |#StackHeapBarrier|))} main_~next~0#1.base, main_~next~0#1.offset := main_#t~mem16#1.base, main_#t~mem16#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset;havoc main_#t~mem16#1.base, main_#t~mem16#1.offset; {4815#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (_ bv0 32))) (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) |#StackHeapBarrier|))} is VALID [2022-02-20 23:49:09,687 INFO L290 TraceCheckUtils]: 18: Hoare triple {4815#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (_ bv0 32))) (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) |#StackHeapBarrier|))} SUMMARY for call main_#t~mem17#1.base, main_#t~mem17#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32); srcloc: L552 {4840#(and (bvult |ULTIMATE.start_main_#t~mem17#1.base| |#StackHeapBarrier|) (not (= |ULTIMATE.start_main_#t~mem17#1.base| (_ bv0 32))))} is VALID [2022-02-20 23:49:09,687 INFO L290 TraceCheckUtils]: 19: Hoare triple {4840#(and (bvult |ULTIMATE.start_main_#t~mem17#1.base| |#StackHeapBarrier|) (not (= |ULTIMATE.start_main_#t~mem17#1.base| (_ bv0 32))))} assume 0bv32 == main_#t~mem17#1.offset; {4840#(and (bvult |ULTIMATE.start_main_#t~mem17#1.base| |#StackHeapBarrier|) (not (= |ULTIMATE.start_main_#t~mem17#1.base| (_ bv0 32))))} is VALID [2022-02-20 23:49:09,688 INFO L290 TraceCheckUtils]: 20: Hoare triple {4840#(and (bvult |ULTIMATE.start_main_#t~mem17#1.base| |#StackHeapBarrier|) (not (= |ULTIMATE.start_main_#t~mem17#1.base| (_ bv0 32))))} assume !~bvult32(main_#t~mem17#1.base, #StackHeapBarrier); {4779#false} is VALID [2022-02-20 23:49:09,688 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:49:09,688 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:49:09,688 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:49:09,688 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1829479166] [2022-02-20 23:49:09,688 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1829479166] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:49:09,688 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:49:09,689 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:49:09,689 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1571430018] [2022-02-20 23:49:09,689 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:49:09,689 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 4.2) internal successors, (21), 5 states have internal predecessors, (21), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 21 [2022-02-20 23:49:09,689 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:09,689 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 4.2) internal successors, (21), 5 states have internal predecessors, (21), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:09,728 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 21 edges. 21 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:09,729 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:49:09,729 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:49:09,729 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:49:09,729 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:49:09,729 INFO L87 Difference]: Start difference. First operand 101 states and 113 transitions. Second operand has 6 states, 5 states have (on average 4.2) internal successors, (21), 5 states have internal predecessors, (21), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:10,482 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:10,482 INFO L93 Difference]: Finished difference Result 112 states and 121 transitions. [2022-02-20 23:49:10,482 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:49:10,483 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 4.2) internal successors, (21), 5 states have internal predecessors, (21), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 21 [2022-02-20 23:49:10,483 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:10,483 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 4.2) internal successors, (21), 5 states have internal predecessors, (21), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:10,484 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 94 transitions. [2022-02-20 23:49:10,484 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 4.2) internal successors, (21), 5 states have internal predecessors, (21), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:10,487 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 94 transitions. [2022-02-20 23:49:10,487 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 94 transitions. [2022-02-20 23:49:10,608 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 94 edges. 94 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:10,610 INFO L225 Difference]: With dead ends: 112 [2022-02-20 23:49:10,610 INFO L226 Difference]: Without dead ends: 112 [2022-02-20 23:49:10,610 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 22 GetRequests, 16 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=24, Invalid=32, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:49:10,611 INFO L933 BasicCegarLoop]: 37 mSDtfsCounter, 159 mSDsluCounter, 54 mSDsCounter, 0 mSdLazyCounter, 106 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 159 SdHoareTripleChecker+Valid, 91 SdHoareTripleChecker+Invalid, 114 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 106 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:10,611 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [159 Valid, 91 Invalid, 114 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 106 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:49:10,612 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 112 states. [2022-02-20 23:49:10,613 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 112 to 100. [2022-02-20 23:49:10,613 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:10,614 INFO L82 GeneralOperation]: Start isEquivalent. First operand 112 states. Second operand has 100 states, 76 states have (on average 1.4605263157894737) internal successors, (111), 99 states have internal predecessors, (111), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:10,614 INFO L74 IsIncluded]: Start isIncluded. First operand 112 states. Second operand has 100 states, 76 states have (on average 1.4605263157894737) internal successors, (111), 99 states have internal predecessors, (111), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:10,614 INFO L87 Difference]: Start difference. First operand 112 states. Second operand has 100 states, 76 states have (on average 1.4605263157894737) internal successors, (111), 99 states have internal predecessors, (111), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:10,616 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:10,616 INFO L93 Difference]: Finished difference Result 112 states and 121 transitions. [2022-02-20 23:49:10,616 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 121 transitions. [2022-02-20 23:49:10,616 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:10,617 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:10,617 INFO L74 IsIncluded]: Start isIncluded. First operand has 100 states, 76 states have (on average 1.4605263157894737) internal successors, (111), 99 states have internal predecessors, (111), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 112 states. [2022-02-20 23:49:10,617 INFO L87 Difference]: Start difference. First operand has 100 states, 76 states have (on average 1.4605263157894737) internal successors, (111), 99 states have internal predecessors, (111), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 112 states. [2022-02-20 23:49:10,619 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:10,619 INFO L93 Difference]: Finished difference Result 112 states and 121 transitions. [2022-02-20 23:49:10,619 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 121 transitions. [2022-02-20 23:49:10,619 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:10,620 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:10,620 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:10,620 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:10,620 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 100 states, 76 states have (on average 1.4605263157894737) internal successors, (111), 99 states have internal predecessors, (111), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:10,621 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 100 states to 100 states and 111 transitions. [2022-02-20 23:49:10,622 INFO L78 Accepts]: Start accepts. Automaton has 100 states and 111 transitions. Word has length 21 [2022-02-20 23:49:10,622 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:10,622 INFO L470 AbstractCegarLoop]: Abstraction has 100 states and 111 transitions. [2022-02-20 23:49:10,622 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 4.2) internal successors, (21), 5 states have internal predecessors, (21), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:10,622 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 111 transitions. [2022-02-20 23:49:10,623 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2022-02-20 23:49:10,623 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:10,623 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:49:10,637 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (12)] Ended with exit code 0 [2022-02-20 23:49:10,832 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:49:10,832 INFO L402 AbstractCegarLoop]: === Iteration 12 === Targeting ULTIMATE.startErr8REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 40 more)] === [2022-02-20 23:49:10,833 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:10,833 INFO L85 PathProgramCache]: Analyzing trace with hash 717052317, now seen corresponding path program 1 times [2022-02-20 23:49:10,833 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:49:10,833 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [56100888] [2022-02-20 23:49:10,833 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:10,833 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:49:10,833 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:49:10,834 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:49:10,835 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (13)] Waiting until timeout for monitored process [2022-02-20 23:49:10,956 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:10,962 INFO L263 TraceCheckSpWp]: Trace formula consists of 154 conjuncts, 21 conjunts are in the unsatisfiable core [2022-02-20 23:49:10,977 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:10,979 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:11,062 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:49:11,122 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:49:11,168 INFO L356 Elim1Store]: treesize reduction 24, result has 33.3 percent of original size [2022-02-20 23:49:11,168 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 16 treesize of output 21 [2022-02-20 23:49:11,251 INFO L356 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2022-02-20 23:49:11,252 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 27 treesize of output 22 [2022-02-20 23:49:11,370 INFO L356 Elim1Store]: treesize reduction 11, result has 8.3 percent of original size [2022-02-20 23:49:11,371 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 30 treesize of output 14 [2022-02-20 23:49:11,394 INFO L290 TraceCheckUtils]: 0: Hoare triple {5286#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~c~0 := 0bv32; {5286#true} is VALID [2022-02-20 23:49:11,394 INFO L290 TraceCheckUtils]: 1: Hoare triple {5286#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post12#1, main_#t~nondet11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~post18#1, main_~next~0#1.base, main_~next~0#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~post22#1, main_~next~1#1.base, main_~next~1#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset, main_~length~0#1;call main_~#list~0#1.base, main_~#list~0#1.offset := #Ultimate.allocOnStack(4bv32);call write~init~$Pointer$(0bv32, 0bv32, main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32);main_~length~0#1 := 0bv32; {5286#true} is VALID [2022-02-20 23:49:11,395 INFO L290 TraceCheckUtils]: 2: Hoare triple {5286#true} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := ~bvadd32(1bv32, append_#t~post3#1);havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {5297#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:11,396 INFO L290 TraceCheckUtils]: 3: Hoare triple {5297#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L533 {5297#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:11,397 INFO L290 TraceCheckUtils]: 4: Hoare triple {5297#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L533-1 {5297#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:11,397 INFO L290 TraceCheckUtils]: 5: Hoare triple {5297#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {5297#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:11,398 INFO L290 TraceCheckUtils]: 6: Hoare triple {5297#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L534 {5297#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:11,398 INFO L290 TraceCheckUtils]: 7: Hoare triple {5297#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} assume !(append_#t~mem6#1.base != 0bv32 || append_#t~mem6#1.offset != 0bv32);call append_#t~malloc9#1.base, append_#t~malloc9#1.offset := #Ultimate.allocOnHeap(8bv32);append_#t~ite10#1.base, append_#t~ite10#1.offset := append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {5297#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:11,399 INFO L290 TraceCheckUtils]: 8: Hoare triple {5297#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} SUMMARY for call write~$Pointer$(append_#t~ite10#1.base, append_#t~ite10#1.offset, append_~item~0#1.base, ~bvadd32(4bv32, append_~item~0#1.offset), 4bv32); srcloc: L534-3 {5316#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:49:11,400 INFO L290 TraceCheckUtils]: 9: Hoare triple {5316#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1)))} havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~ite10#1.base, append_#t~ite10#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~mem8#1.base, append_#t~mem8#1.offset;havoc append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {5316#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:49:11,402 INFO L290 TraceCheckUtils]: 10: Hoare triple {5316#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1)))} SUMMARY for call write~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L537 {5323#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (_ bv1 1))} is VALID [2022-02-20 23:49:11,402 INFO L290 TraceCheckUtils]: 11: Hoare triple {5323#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (_ bv1 1))} assume { :end_inline_append } true;main_#t~post12#1 := main_~length~0#1;main_~length~0#1 := ~bvadd32(1bv32, main_#t~post12#1);havoc main_#t~post12#1; {5323#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (_ bv1 1))} is VALID [2022-02-20 23:49:11,402 INFO L290 TraceCheckUtils]: 12: Hoare triple {5323#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (_ bv1 1))} assume !!(0bv32 != main_#t~nondet11#1 && ~bvslt32(~c~0, 20bv32));havoc main_#t~nondet11#1; {5323#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (_ bv1 1))} is VALID [2022-02-20 23:49:11,405 INFO L290 TraceCheckUtils]: 13: Hoare triple {5323#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (_ bv1 1))} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := ~bvadd32(1bv32, append_#t~post3#1);havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {5333#(and (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|)) (_ bv1 1)) (_ bv0 1)) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:49:11,406 INFO L290 TraceCheckUtils]: 14: Hoare triple {5333#(and (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|)) (_ bv1 1)) (_ bv0 1)) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1)))} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L533 {5337#(and (exists ((|ULTIMATE.start_append_~plist#1.base| (_ BitVec 32)) (|ULTIMATE.start_append_~plist#1.offset| (_ BitVec 32))) (and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) |ULTIMATE.start_append_#t~mem5#1.base|) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|)) (_ bv1 1)) (_ bv0 1)))) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:49:11,409 INFO L290 TraceCheckUtils]: 15: Hoare triple {5337#(and (exists ((|ULTIMATE.start_append_~plist#1.base| (_ BitVec 32)) (|ULTIMATE.start_append_~plist#1.offset| (_ BitVec 32))) (and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) |ULTIMATE.start_append_#t~mem5#1.base|) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|)) (_ bv1 1)) (_ bv0 1)))) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1)))} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L533-1 {5341#(and (exists ((|ULTIMATE.start_append_~plist#1.base| (_ BitVec 32)) (|ULTIMATE.start_append_~plist#1.offset| (_ BitVec 32))) (and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|)) (_ bv1 1)) (_ bv0 1)))) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:49:11,410 INFO L290 TraceCheckUtils]: 16: Hoare triple {5341#(and (exists ((|ULTIMATE.start_append_~plist#1.base| (_ BitVec 32)) (|ULTIMATE.start_append_~plist#1.offset| (_ BitVec 32))) (and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|)) (_ bv1 1)) (_ bv0 1)))) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1)))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {5341#(and (exists ((|ULTIMATE.start_append_~plist#1.base| (_ BitVec 32)) (|ULTIMATE.start_append_~plist#1.offset| (_ BitVec 32))) (and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|)) (_ bv1 1)) (_ bv0 1)))) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:49:11,412 INFO L290 TraceCheckUtils]: 17: Hoare triple {5341#(and (exists ((|ULTIMATE.start_append_~plist#1.base| (_ BitVec 32)) (|ULTIMATE.start_append_~plist#1.offset| (_ BitVec 32))) (and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|)) (_ bv1 1)) (_ bv0 1)))) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1)))} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L534 {5341#(and (exists ((|ULTIMATE.start_append_~plist#1.base| (_ BitVec 32)) (|ULTIMATE.start_append_~plist#1.offset| (_ BitVec 32))) (and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|)) (_ bv1 1)) (_ bv0 1)))) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:49:11,415 INFO L290 TraceCheckUtils]: 18: Hoare triple {5341#(and (exists ((|ULTIMATE.start_append_~plist#1.base| (_ BitVec 32)) (|ULTIMATE.start_append_~plist#1.offset| (_ BitVec 32))) (and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|)) (_ bv1 1)) (_ bv0 1)))) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1)))} assume append_#t~mem6#1.base != 0bv32 || append_#t~mem6#1.offset != 0bv32; {5341#(and (exists ((|ULTIMATE.start_append_~plist#1.base| (_ BitVec 32)) (|ULTIMATE.start_append_~plist#1.offset| (_ BitVec 32))) (and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|)) (_ bv1 1)) (_ bv0 1)))) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:49:11,417 INFO L290 TraceCheckUtils]: 19: Hoare triple {5341#(and (exists ((|ULTIMATE.start_append_~plist#1.base| (_ BitVec 32)) (|ULTIMATE.start_append_~plist#1.offset| (_ BitVec 32))) (and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|)) (_ bv1 1)) (_ bv0 1)))) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1)))} SUMMARY for call append_#t~mem7#1.base, append_#t~mem7#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L535 {5354#(= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_append_#t~mem7#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:49:11,418 INFO L290 TraceCheckUtils]: 20: Hoare triple {5354#(= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_append_#t~mem7#1.base|) (_ bv1 1)))} assume !(1bv1 == #valid[append_#t~mem7#1.base]); {5287#false} is VALID [2022-02-20 23:49:11,418 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 1 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:49:11,418 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:49:11,555 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 32 treesize of output 28 [2022-02-20 23:49:11,797 INFO L290 TraceCheckUtils]: 20: Hoare triple {5354#(= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_append_#t~mem7#1.base|) (_ bv1 1)))} assume !(1bv1 == #valid[append_#t~mem7#1.base]); {5287#false} is VALID [2022-02-20 23:49:11,798 INFO L290 TraceCheckUtils]: 19: Hoare triple {5361#(= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (_ bv1 1)))} SUMMARY for call append_#t~mem7#1.base, append_#t~mem7#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L535 {5354#(= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_append_#t~mem7#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:49:11,799 INFO L290 TraceCheckUtils]: 18: Hoare triple {5361#(= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (_ bv1 1)))} assume append_#t~mem6#1.base != 0bv32 || append_#t~mem6#1.offset != 0bv32; {5361#(= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (_ bv1 1)))} is VALID [2022-02-20 23:49:11,799 INFO L290 TraceCheckUtils]: 17: Hoare triple {5361#(= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (_ bv1 1)))} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L534 {5361#(= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (_ bv1 1)))} is VALID [2022-02-20 23:49:11,800 INFO L290 TraceCheckUtils]: 16: Hoare triple {5361#(= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (_ bv1 1)))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {5361#(= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (_ bv1 1)))} is VALID [2022-02-20 23:49:11,802 INFO L290 TraceCheckUtils]: 15: Hoare triple {5374#(= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| |ULTIMATE.start_append_#t~mem5#1.base|)))} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L533-1 {5361#(= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|)) (_ bv1 1)))} is VALID [2022-02-20 23:49:11,802 INFO L290 TraceCheckUtils]: 14: Hoare triple {5378#(= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|)) (_ bv1 1)) (_ bv0 1))} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L533 {5374#(= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| |ULTIMATE.start_append_#t~mem5#1.base|)))} is VALID [2022-02-20 23:49:11,804 INFO L290 TraceCheckUtils]: 13: Hoare triple {5323#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (_ bv1 1))} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := ~bvadd32(1bv32, append_#t~post3#1);havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {5378#(= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|)) (_ bv1 1)) (_ bv0 1))} is VALID [2022-02-20 23:49:11,805 INFO L290 TraceCheckUtils]: 12: Hoare triple {5323#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (_ bv1 1))} assume !!(0bv32 != main_#t~nondet11#1 && ~bvslt32(~c~0, 20bv32));havoc main_#t~nondet11#1; {5323#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (_ bv1 1))} is VALID [2022-02-20 23:49:11,805 INFO L290 TraceCheckUtils]: 11: Hoare triple {5323#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (_ bv1 1))} assume { :end_inline_append } true;main_#t~post12#1 := main_~length~0#1;main_~length~0#1 := ~bvadd32(1bv32, main_#t~post12#1);havoc main_#t~post12#1; {5323#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (_ bv1 1))} is VALID [2022-02-20 23:49:11,809 INFO L290 TraceCheckUtils]: 10: Hoare triple {5391#(or (forall ((v_arrayElimCell_23 (_ BitVec 32))) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| v_arrayElimCell_23)))) (and (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| |ULTIMATE.start_append_~item~0#1.base|)))) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|)))} SUMMARY for call write~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L537 {5323#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (_ bv1 1))} is VALID [2022-02-20 23:49:11,810 INFO L290 TraceCheckUtils]: 9: Hoare triple {5391#(or (forall ((v_arrayElimCell_23 (_ BitVec 32))) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| v_arrayElimCell_23)))) (and (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| |ULTIMATE.start_append_~item~0#1.base|)))) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|)))} havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~ite10#1.base, append_#t~ite10#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~mem8#1.base, append_#t~mem8#1.offset;havoc append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {5391#(or (forall ((v_arrayElimCell_23 (_ BitVec 32))) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| v_arrayElimCell_23)))) (and (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| |ULTIMATE.start_append_~item~0#1.base|)))) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|)))} is VALID [2022-02-20 23:49:11,814 INFO L290 TraceCheckUtils]: 8: Hoare triple {5398#(or (forall ((v_arrayElimCell_23 (_ BitVec 32))) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| v_arrayElimCell_23)))) (forall ((|ULTIMATE.start_append_~item~0#1.base| (_ BitVec 32))) (or (not (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1))) (and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|)))))} SUMMARY for call write~$Pointer$(append_#t~ite10#1.base, append_#t~ite10#1.offset, append_~item~0#1.base, ~bvadd32(4bv32, append_~item~0#1.offset), 4bv32); srcloc: L534-3 {5391#(or (forall ((v_arrayElimCell_23 (_ BitVec 32))) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| v_arrayElimCell_23)))) (and (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| |ULTIMATE.start_append_~item~0#1.base|)))) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|)))} is VALID [2022-02-20 23:49:11,818 INFO L290 TraceCheckUtils]: 7: Hoare triple {5297#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} assume !(append_#t~mem6#1.base != 0bv32 || append_#t~mem6#1.offset != 0bv32);call append_#t~malloc9#1.base, append_#t~malloc9#1.offset := #Ultimate.allocOnHeap(8bv32);append_#t~ite10#1.base, append_#t~ite10#1.offset := append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {5398#(or (forall ((v_arrayElimCell_23 (_ BitVec 32))) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| v_arrayElimCell_23)))) (forall ((|ULTIMATE.start_append_~item~0#1.base| (_ BitVec 32))) (or (not (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1))) (and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|)))))} is VALID [2022-02-20 23:49:11,819 INFO L290 TraceCheckUtils]: 6: Hoare triple {5297#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L534 {5297#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:11,819 INFO L290 TraceCheckUtils]: 5: Hoare triple {5297#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {5297#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:11,820 INFO L290 TraceCheckUtils]: 4: Hoare triple {5297#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L533-1 {5297#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:11,821 INFO L290 TraceCheckUtils]: 3: Hoare triple {5297#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L533 {5297#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:11,822 INFO L290 TraceCheckUtils]: 2: Hoare triple {5286#true} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := ~bvadd32(1bv32, append_#t~post3#1);havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {5297#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:11,822 INFO L290 TraceCheckUtils]: 1: Hoare triple {5286#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post12#1, main_#t~nondet11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~post18#1, main_~next~0#1.base, main_~next~0#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~post22#1, main_~next~1#1.base, main_~next~1#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset, main_~length~0#1;call main_~#list~0#1.base, main_~#list~0#1.offset := #Ultimate.allocOnStack(4bv32);call write~init~$Pointer$(0bv32, 0bv32, main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32);main_~length~0#1 := 0bv32; {5286#true} is VALID [2022-02-20 23:49:11,822 INFO L290 TraceCheckUtils]: 0: Hoare triple {5286#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~c~0 := 0bv32; {5286#true} is VALID [2022-02-20 23:49:11,822 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 1 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:49:11,822 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:49:11,822 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [56100888] [2022-02-20 23:49:11,822 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [56100888] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:49:11,823 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:49:11,823 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 9] total 13 [2022-02-20 23:49:11,823 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1417456710] [2022-02-20 23:49:11,823 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:49:11,823 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 14 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 21 [2022-02-20 23:49:11,824 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:11,825 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 14 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 14 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:11,876 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:11,876 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-02-20 23:49:11,877 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:49:11,877 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-02-20 23:49:11,877 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=149, Unknown=0, NotChecked=0, Total=182 [2022-02-20 23:49:11,877 INFO L87 Difference]: Start difference. First operand 100 states and 111 transitions. Second operand has 14 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 14 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:13,479 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:13,480 INFO L93 Difference]: Finished difference Result 148 states and 164 transitions. [2022-02-20 23:49:13,480 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:49:13,480 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 14 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 21 [2022-02-20 23:49:13,480 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:13,480 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 14 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:13,481 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 126 transitions. [2022-02-20 23:49:13,482 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 14 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:13,483 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 126 transitions. [2022-02-20 23:49:13,483 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 126 transitions. [2022-02-20 23:49:13,639 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 126 edges. 126 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:13,641 INFO L225 Difference]: With dead ends: 148 [2022-02-20 23:49:13,641 INFO L226 Difference]: Without dead ends: 148 [2022-02-20 23:49:13,641 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 43 GetRequests, 26 SyntacticMatches, 2 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 24 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=62, Invalid=210, Unknown=0, NotChecked=0, Total=272 [2022-02-20 23:49:13,642 INFO L933 BasicCegarLoop]: 50 mSDtfsCounter, 160 mSDsluCounter, 238 mSDsCounter, 0 mSdLazyCounter, 273 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 160 SdHoareTripleChecker+Valid, 288 SdHoareTripleChecker+Invalid, 335 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 273 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 56 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:13,642 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [160 Valid, 288 Invalid, 335 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 273 Invalid, 0 Unknown, 56 Unchecked, 0.5s Time] [2022-02-20 23:49:13,643 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 148 states. [2022-02-20 23:49:13,644 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 148 to 113. [2022-02-20 23:49:13,644 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:13,644 INFO L82 GeneralOperation]: Start isEquivalent. First operand 148 states. Second operand has 113 states, 89 states have (on average 1.4269662921348314) internal successors, (127), 112 states have internal predecessors, (127), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:13,645 INFO L74 IsIncluded]: Start isIncluded. First operand 148 states. Second operand has 113 states, 89 states have (on average 1.4269662921348314) internal successors, (127), 112 states have internal predecessors, (127), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:13,645 INFO L87 Difference]: Start difference. First operand 148 states. Second operand has 113 states, 89 states have (on average 1.4269662921348314) internal successors, (127), 112 states have internal predecessors, (127), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:13,647 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:13,647 INFO L93 Difference]: Finished difference Result 148 states and 164 transitions. [2022-02-20 23:49:13,647 INFO L276 IsEmpty]: Start isEmpty. Operand 148 states and 164 transitions. [2022-02-20 23:49:13,648 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:13,648 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:13,648 INFO L74 IsIncluded]: Start isIncluded. First operand has 113 states, 89 states have (on average 1.4269662921348314) internal successors, (127), 112 states have internal predecessors, (127), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 148 states. [2022-02-20 23:49:13,648 INFO L87 Difference]: Start difference. First operand has 113 states, 89 states have (on average 1.4269662921348314) internal successors, (127), 112 states have internal predecessors, (127), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 148 states. [2022-02-20 23:49:13,650 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:13,651 INFO L93 Difference]: Finished difference Result 148 states and 164 transitions. [2022-02-20 23:49:13,651 INFO L276 IsEmpty]: Start isEmpty. Operand 148 states and 164 transitions. [2022-02-20 23:49:13,651 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:13,651 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:13,651 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:13,652 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:13,652 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 113 states, 89 states have (on average 1.4269662921348314) internal successors, (127), 112 states have internal predecessors, (127), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:13,653 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 113 states to 113 states and 127 transitions. [2022-02-20 23:49:13,654 INFO L78 Accepts]: Start accepts. Automaton has 113 states and 127 transitions. Word has length 21 [2022-02-20 23:49:13,654 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:13,654 INFO L470 AbstractCegarLoop]: Abstraction has 113 states and 127 transitions. [2022-02-20 23:49:13,654 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 14 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:13,654 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 127 transitions. [2022-02-20 23:49:13,654 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2022-02-20 23:49:13,655 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:13,655 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:49:13,667 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (13)] Ended with exit code 0 [2022-02-20 23:49:13,867 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:49:13,867 INFO L402 AbstractCegarLoop]: === Iteration 13 === Targeting ULTIMATE.startErr9REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 40 more)] === [2022-02-20 23:49:13,867 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:13,867 INFO L85 PathProgramCache]: Analyzing trace with hash 717052318, now seen corresponding path program 1 times [2022-02-20 23:49:13,868 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:49:13,868 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [2097799395] [2022-02-20 23:49:13,868 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:13,868 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:49:13,868 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:49:13,869 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:49:13,870 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (14)] Waiting until timeout for monitored process [2022-02-20 23:49:13,987 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:13,993 INFO L263 TraceCheckSpWp]: Trace formula consists of 154 conjuncts, 31 conjunts are in the unsatisfiable core [2022-02-20 23:49:14,011 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:14,012 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:14,117 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:49:14,210 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:49:14,218 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:49:14,314 INFO L356 Elim1Store]: treesize reduction 19, result has 47.2 percent of original size [2022-02-20 23:49:14,315 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 16 treesize of output 26 [2022-02-20 23:49:14,347 INFO L356 Elim1Store]: treesize reduction 4, result has 66.7 percent of original size [2022-02-20 23:49:14,347 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 15 treesize of output 15 [2022-02-20 23:49:14,481 INFO L356 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2022-02-20 23:49:14,481 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 33 treesize of output 24 [2022-02-20 23:49:14,504 INFO L356 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2022-02-20 23:49:14,505 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 23 treesize of output 18 [2022-02-20 23:49:14,616 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 13 [2022-02-20 23:49:14,632 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2022-02-20 23:49:14,662 INFO L290 TraceCheckUtils]: 0: Hoare triple {5985#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~c~0 := 0bv32; {5985#true} is VALID [2022-02-20 23:49:14,662 INFO L290 TraceCheckUtils]: 1: Hoare triple {5985#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post12#1, main_#t~nondet11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~post18#1, main_~next~0#1.base, main_~next~0#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_#t~post22#1, main_~next~1#1.base, main_~next~1#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset, main_~length~0#1;call main_~#list~0#1.base, main_~#list~0#1.offset := #Ultimate.allocOnStack(4bv32);call write~init~$Pointer$(0bv32, 0bv32, main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32);main_~length~0#1 := 0bv32; {5985#true} is VALID [2022-02-20 23:49:14,663 INFO L290 TraceCheckUtils]: 2: Hoare triple {5985#true} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := ~bvadd32(1bv32, append_#t~post3#1);havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {5996#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:14,664 INFO L290 TraceCheckUtils]: 3: Hoare triple {5996#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L533 {5996#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:14,665 INFO L290 TraceCheckUtils]: 4: Hoare triple {5996#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L533-1 {5996#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:14,665 INFO L290 TraceCheckUtils]: 5: Hoare triple {5996#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {5996#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:14,666 INFO L290 TraceCheckUtils]: 6: Hoare triple {5996#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L534 {5996#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:14,667 INFO L290 TraceCheckUtils]: 7: Hoare triple {5996#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} assume !(append_#t~mem6#1.base != 0bv32 || append_#t~mem6#1.offset != 0bv32);call append_#t~malloc9#1.base, append_#t~malloc9#1.offset := #Ultimate.allocOnHeap(8bv32);append_#t~ite10#1.base, append_#t~ite10#1.offset := append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {5996#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:49:14,667 INFO L290 TraceCheckUtils]: 8: Hoare triple {5996#(and (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} SUMMARY for call write~$Pointer$(append_#t~ite10#1.base, append_#t~ite10#1.offset, append_~item~0#1.base, ~bvadd32(4bv32, append_~item~0#1.offset), 4bv32); srcloc: L534-3 {6015#(and (bvule (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:49:14,668 INFO L290 TraceCheckUtils]: 9: Hoare triple {6015#(and (bvule (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1)))} havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~ite10#1.base, append_#t~ite10#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~mem8#1.base, append_#t~mem8#1.offset;havoc append_#t~malloc9#1.base, append_#t~malloc9#1.offset; {6015#(and (bvule (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:49:14,670 INFO L290 TraceCheckUtils]: 10: Hoare triple {6015#(and (bvule (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_append_~item~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1)))} SUMMARY for call write~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L537 {6022#(and (bvule (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (_ bv1 1)) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))} is VALID [2022-02-20 23:49:14,671 INFO L290 TraceCheckUtils]: 11: Hoare triple {6022#(and (bvule (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (_ bv1 1)) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))} assume { :end_inline_append } true;main_#t~post12#1 := main_~length~0#1;main_~length~0#1 := ~bvadd32(1bv32, main_#t~post12#1);havoc main_#t~post12#1; {6022#(and (bvule (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (_ bv1 1)) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))} is VALID [2022-02-20 23:49:14,672 INFO L290 TraceCheckUtils]: 12: Hoare triple {6022#(and (bvule (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (_ bv1 1)) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))} assume !!(0bv32 != main_#t~nondet11#1 && ~bvslt32(~c~0, 20bv32));havoc main_#t~nondet11#1; {6022#(and (bvule (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (_ bv1 1)) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))} is VALID [2022-02-20 23:49:14,675 INFO L290 TraceCheckUtils]: 13: Hoare triple {6022#(and (bvule (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (_ bv1 1)) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))} assume { :begin_inline_append } true;append_#in~plist#1.base, append_#in~plist#1.offset := main_~#list~0#1.base, main_~#list~0#1.offset;havoc append_#t~post3#1, append_#t~malloc4#1.base, append_#t~malloc4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~ite10#1.base, append_#t~ite10#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~mem8#1.base, append_#t~mem8#1.offset, append_#t~malloc9#1.base, append_#t~malloc9#1.offset, append_~plist#1.base, append_~plist#1.offset, append_~item~0#1.base, append_~item~0#1.offset;append_~plist#1.base, append_~plist#1.offset := append_#in~plist#1.base, append_#in~plist#1.offset;append_#t~post3#1 := ~c~0;~c~0 := ~bvadd32(1bv32, append_#t~post3#1);havoc append_#t~post3#1;call append_#t~malloc4#1.base, append_#t~malloc4#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc4#1.base, append_#t~malloc4#1.offset;havoc append_#t~malloc4#1.base, append_#t~malloc4#1.offset; {6032#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) |ULTIMATE.start_append_~item~0#1.base|)) (bvule (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) (_ bv0 32)))} is VALID [2022-02-20 23:49:14,677 INFO L290 TraceCheckUtils]: 14: Hoare triple {6032#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) |ULTIMATE.start_append_~item~0#1.base|)) (bvule (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) (_ bv0 32)))} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L533 {6036#(exists ((|ULTIMATE.start_append_~plist#1.base| (_ BitVec 32)) (|ULTIMATE.start_append_~plist#1.offset| (_ BitVec 32))) (and (= |ULTIMATE.start_append_#t~mem5#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) |ULTIMATE.start_append_~item~0#1.base|)) (bvule (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|))) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) |ULTIMATE.start_append_#t~mem5#1.base|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) (_ bv0 32))))} is VALID [2022-02-20 23:49:14,680 INFO L290 TraceCheckUtils]: 15: Hoare triple {6036#(exists ((|ULTIMATE.start_append_~plist#1.base| (_ BitVec 32)) (|ULTIMATE.start_append_~plist#1.offset| (_ BitVec 32))) (and (= |ULTIMATE.start_append_#t~mem5#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) |ULTIMATE.start_append_~item~0#1.base|)) (bvule (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|))) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) |ULTIMATE.start_append_#t~mem5#1.base|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) (_ bv0 32))))} SUMMARY for call write~$Pointer$(append_#t~mem5#1.base, append_#t~mem5#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L533-1 {6040#(and (bvule (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv0 32)) (not (= |ULTIMATE.start_append_~item~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))))} is VALID [2022-02-20 23:49:14,681 INFO L290 TraceCheckUtils]: 16: Hoare triple {6040#(and (bvule (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv0 32)) (not (= |ULTIMATE.start_append_~item~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset; {6040#(and (bvule (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv0 32)) (not (= |ULTIMATE.start_append_~item~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))))} is VALID [2022-02-20 23:49:14,681 INFO L290 TraceCheckUtils]: 17: Hoare triple {6040#(and (bvule (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv0 32)) (not (= |ULTIMATE.start_append_~item~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))))} SUMMARY for call append_#t~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L534 {6040#(and (bvule (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv0 32)) (not (= |ULTIMATE.start_append_~item~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))))} is VALID [2022-02-20 23:49:14,682 INFO L290 TraceCheckUtils]: 18: Hoare triple {6040#(and (bvule (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv0 32)) (not (= |ULTIMATE.start_append_~item~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))))} assume append_#t~mem6#1.base != 0bv32 || append_#t~mem6#1.offset != 0bv32; {6040#(and (bvule (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv0 32)) (not (= |ULTIMATE.start_append_~item~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))))} is VALID [2022-02-20 23:49:14,683 INFO L290 TraceCheckUtils]: 19: Hoare triple {6040#(and (bvule (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv0 32)) (not (= |ULTIMATE.start_append_~item~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))))} SUMMARY for call append_#t~mem7#1.base, append_#t~mem7#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L535 {6053#(and (= |ULTIMATE.start_append_#t~mem7#1.offset| (_ bv0 32)) (bvule (_ bv8 32) (select |#length| |ULTIMATE.start_append_#t~mem7#1.base|)))} is VALID [2022-02-20 23:49:14,683 INFO L290 TraceCheckUtils]: 20: Hoare triple {6053#(and (= |ULTIMATE.start_append_#t~mem7#1.offset| (_ bv0 32)) (bvule (_ bv8 32) (select |#length| |ULTIMATE.start_append_#t~mem7#1.base|)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(4bv32, append_#t~mem7#1.offset)), #length[append_#t~mem7#1.base]) && ~bvule32(~bvadd32(4bv32, append_#t~mem7#1.offset), ~bvadd32(4bv32, ~bvadd32(4bv32, append_#t~mem7#1.offset)))) && ~bvule32(0bv32, ~bvadd32(4bv32, append_#t~mem7#1.offset))); {5986#false} is VALID [2022-02-20 23:49:14,683 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 1 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:49:14,684 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:49:15,397 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 98 treesize of output 94 [2022-02-20 23:49:15,548 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 143 treesize of output 127