./Ultimate.py --spec ../sv-benchmarks/c/properties/valid-memsafety.prp --file ../sv-benchmarks/c/memsafety/test-0232-2.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/memsafety/test-0232-2.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 d7d99b84861b7e58e44833cf97c5fb5fa14d1ad6f1b87526d3144a9659451e97 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:45:20,072 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:45:20,075 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:45:20,098 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:45:20,098 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:45:20,101 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:45:20,103 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:45:20,105 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:45:20,107 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:45:20,111 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:45:20,112 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:45:20,113 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:45:20,113 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:45:20,115 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:45:20,116 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:45:20,118 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:45:20,118 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:45:20,119 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:45:20,123 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:45:20,128 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:45:20,129 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:45:20,130 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:45:20,131 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:45:20,132 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:45:20,134 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:45:20,134 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:45:20,134 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:45:20,135 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:45:20,136 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:45:20,136 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:45:20,137 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:45:20,137 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:45:20,139 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:45:20,139 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:45:20,140 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:45:20,140 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:45:20,141 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:45:20,141 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:45:20,141 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:45:20,142 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:45:20,142 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:45:20,143 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:45:20,171 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:45:20,171 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:45:20,171 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:45:20,171 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:45:20,172 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:45:20,172 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:45:20,173 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:45:20,173 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:45:20,173 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:45:20,173 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:45:20,173 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:45:20,174 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:45:20,174 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:45:20,174 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:45:20,174 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:45:20,175 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:45:20,175 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:45:20,175 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2022-02-20 23:45:20,175 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:45:20,175 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:45:20,175 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:45:20,175 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:45:20,176 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:45:20,176 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:45:20,176 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:45:20,176 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:45:20,176 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:45:20,176 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:45:20,176 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 23:45:20,177 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 23:45:20,177 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 -> d7d99b84861b7e58e44833cf97c5fb5fa14d1ad6f1b87526d3144a9659451e97 [2022-02-20 23:45:20,376 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:45:20,396 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:45:20,397 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:45:20,399 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:45:20,399 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:45:20,401 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/memsafety/test-0232-2.i [2022-02-20 23:45:20,444 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/786852e85/38e142d9179f42caa9c0fea91a8c03a6/FLAG03548ff89 [2022-02-20 23:45:20,853 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:45:20,854 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/memsafety/test-0232-2.i [2022-02-20 23:45:20,880 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/786852e85/38e142d9179f42caa9c0fea91a8c03a6/FLAG03548ff89 [2022-02-20 23:45:21,234 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/786852e85/38e142d9179f42caa9c0fea91a8c03a6 [2022-02-20 23:45:21,236 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:45:21,237 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:45:21,239 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:45:21,239 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:45:21,248 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:45:21,249 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:45:21" (1/1) ... [2022-02-20 23:45:21,250 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5ed62158 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:45:21, skipping insertion in model container [2022-02-20 23:45:21,250 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:45:21" (1/1) ... [2022-02-20 23:45:21,256 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:45:21,275 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:45:21,523 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:45:21,530 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 23:45:21,570 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:45:21,588 INFO L208 MainTranslator]: Completed translation [2022-02-20 23:45:21,597 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:45:21 WrapperNode [2022-02-20 23:45:21,597 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:45:21,598 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 23:45:21,599 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 23:45:21,599 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 23:45:21,605 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:45:21" (1/1) ... [2022-02-20 23:45:21,615 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:45:21" (1/1) ... [2022-02-20 23:45:21,637 INFO L137 Inliner]: procedures = 126, calls = 35, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 89 [2022-02-20 23:45:21,637 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 23:45:21,638 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 23:45:21,638 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 23:45:21,638 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 23:45:21,643 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:45:21" (1/1) ... [2022-02-20 23:45:21,644 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:45:21" (1/1) ... [2022-02-20 23:45:21,647 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:45:21" (1/1) ... [2022-02-20 23:45:21,651 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:45:21" (1/1) ... [2022-02-20 23:45:21,659 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:45:21" (1/1) ... [2022-02-20 23:45:21,677 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:45:21" (1/1) ... [2022-02-20 23:45:21,686 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:45:21" (1/1) ... [2022-02-20 23:45:21,691 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 23:45:21,694 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 23:45:21,694 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 23:45:21,695 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 23:45:21,696 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:45:21" (1/1) ... [2022-02-20 23:45:21,701 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:45:21,709 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:45:21,721 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:45:21,722 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:45:21,744 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2022-02-20 23:45:21,745 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 23:45:21,745 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-02-20 23:45:21,745 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2022-02-20 23:45:21,745 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2022-02-20 23:45:21,745 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 23:45:21,745 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~$Pointer$ [2022-02-20 23:45:21,745 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-20 23:45:21,746 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 23:45:21,746 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 23:45:21,858 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 23:45:21,860 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 23:45:22,242 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 23:45:22,247 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 23:45:22,247 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-02-20 23:45:22,249 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:45:22 BoogieIcfgContainer [2022-02-20 23:45:22,249 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 23:45:22,250 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 23:45:22,250 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 23:45:22,252 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 23:45:22,253 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 11:45:21" (1/3) ... [2022-02-20 23:45:22,253 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@f84fc1 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:45:22, skipping insertion in model container [2022-02-20 23:45:22,253 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:45:21" (2/3) ... [2022-02-20 23:45:22,254 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@f84fc1 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:45:22, skipping insertion in model container [2022-02-20 23:45:22,254 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:45:22" (3/3) ... [2022-02-20 23:45:22,255 INFO L111 eAbstractionObserver]: Analyzing ICFG test-0232-2.i [2022-02-20 23:45:22,258 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 23:45:22,259 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 48 error locations. [2022-02-20 23:45:22,285 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 23:45:22,289 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:45:22,289 INFO L340 AbstractCegarLoop]: Starting to check reachability of 48 error locations. [2022-02-20 23:45:22,301 INFO L276 IsEmpty]: Start isEmpty. Operand has 94 states, 45 states have (on average 2.2) internal successors, (99), 93 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:45:22,304 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2022-02-20 23:45:22,305 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:22,305 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2022-02-20 23:45:22,305 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:22,309 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:22,309 INFO L85 PathProgramCache]: Analyzing trace with hash 925637, now seen corresponding path program 1 times [2022-02-20 23:45:22,315 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:45:22,315 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1976435275] [2022-02-20 23:45:22,316 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:22,316 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:45:22,382 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:22,462 INFO L290 TraceCheckUtils]: 0: Hoare triple {97#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(14, 2); {97#true} is VALID [2022-02-20 23:45:22,464 INFO L290 TraceCheckUtils]: 1: Hoare triple {97#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {99#(= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1)} is VALID [2022-02-20 23:45:22,465 INFO L290 TraceCheckUtils]: 2: Hoare triple {99#(= (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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {100#(= (select |#valid| |ULTIMATE.start_append_~plist#1.base|) 1)} is VALID [2022-02-20 23:45:22,466 INFO L290 TraceCheckUtils]: 3: Hoare triple {100#(= (select |#valid| |ULTIMATE.start_append_~plist#1.base|) 1)} assume !(1 == #valid[append_~plist#1.base]); {98#false} is VALID [2022-02-20 23:45:22,467 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:45:22,467 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:45:22,468 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1976435275] [2022-02-20 23:45:22,468 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1976435275] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:22,468 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:22,469 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:45:22,471 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [872236115] [2022-02-20 23:45:22,471 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:22,475 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:45:22,475 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:22,477 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:45:22,484 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:45:22,485 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:45:22,485 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:45:22,502 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:45:22,502 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:45:22,505 INFO L87 Difference]: Start difference. First operand has 94 states, 45 states have (on average 2.2) internal successors, (99), 93 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 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:45:22,817 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:22,818 INFO L93 Difference]: Finished difference Result 105 states and 109 transitions. [2022-02-20 23:45:22,818 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:45:22,818 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:45:22,818 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:22,819 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:45:22,824 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 124 transitions. [2022-02-20 23:45:22,825 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:45:22,827 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 124 transitions. [2022-02-20 23:45:22,827 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 124 transitions. [2022-02-20 23:45:22,910 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:45:22,919 INFO L225 Difference]: With dead ends: 105 [2022-02-20 23:45:22,919 INFO L226 Difference]: Without dead ends: 103 [2022-02-20 23:45:22,921 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:45:22,923 INFO L933 BasicCegarLoop]: 48 mSDtfsCounter, 150 mSDsluCounter, 17 mSDsCounter, 0 mSdLazyCounter, 79 mSolverCounterSat, 16 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 150 SdHoareTripleChecker+Valid, 65 SdHoareTripleChecker+Invalid, 95 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 79 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:22,924 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [150 Valid, 65 Invalid, 95 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 79 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:45:22,934 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 103 states. [2022-02-20 23:45:22,942 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 103 to 84. [2022-02-20 23:45:22,942 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:22,943 INFO L82 GeneralOperation]: Start isEquivalent. First operand 103 states. Second operand has 84 states, 44 states have (on average 1.9772727272727273) internal successors, (87), 83 states have internal predecessors, (87), 0 states have call successors, (0), 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:45:22,944 INFO L74 IsIncluded]: Start isIncluded. First operand 103 states. Second operand has 84 states, 44 states have (on average 1.9772727272727273) internal successors, (87), 83 states have internal predecessors, (87), 0 states have call successors, (0), 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:45:22,944 INFO L87 Difference]: Start difference. First operand 103 states. Second operand has 84 states, 44 states have (on average 1.9772727272727273) internal successors, (87), 83 states have internal predecessors, (87), 0 states have call successors, (0), 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:45:22,948 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:22,948 INFO L93 Difference]: Finished difference Result 103 states and 107 transitions. [2022-02-20 23:45:22,949 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 107 transitions. [2022-02-20 23:45:22,949 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:22,949 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:22,950 INFO L74 IsIncluded]: Start isIncluded. First operand has 84 states, 44 states have (on average 1.9772727272727273) internal successors, (87), 83 states have internal predecessors, (87), 0 states have call successors, (0), 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:45:22,951 INFO L87 Difference]: Start difference. First operand has 84 states, 44 states have (on average 1.9772727272727273) internal successors, (87), 83 states have internal predecessors, (87), 0 states have call successors, (0), 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:45:22,954 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:22,954 INFO L93 Difference]: Finished difference Result 103 states and 107 transitions. [2022-02-20 23:45:22,955 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 107 transitions. [2022-02-20 23:45:22,955 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:22,955 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:22,955 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:22,956 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:22,956 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 84 states, 44 states have (on average 1.9772727272727273) internal successors, (87), 83 states have internal predecessors, (87), 0 states have call successors, (0), 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:45:22,958 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 84 states to 84 states and 87 transitions. [2022-02-20 23:45:22,959 INFO L78 Accepts]: Start accepts. Automaton has 84 states and 87 transitions. Word has length 4 [2022-02-20 23:45:22,959 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:22,959 INFO L470 AbstractCegarLoop]: Abstraction has 84 states and 87 transitions. [2022-02-20 23:45:22,960 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:45:22,960 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 87 transitions. [2022-02-20 23:45:22,960 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2022-02-20 23:45:22,960 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:22,960 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2022-02-20 23:45:22,961 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 23:45:22,961 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:22,961 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:22,961 INFO L85 PathProgramCache]: Analyzing trace with hash 925638, now seen corresponding path program 1 times [2022-02-20 23:45:22,962 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:45:22,962 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [522130204] [2022-02-20 23:45:22,962 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:22,962 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:45:22,976 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:23,029 INFO L290 TraceCheckUtils]: 0: Hoare triple {500#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(14, 2); {500#true} is VALID [2022-02-20 23:45:23,030 INFO L290 TraceCheckUtils]: 1: Hoare triple {500#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {502#(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:45:23,031 INFO L290 TraceCheckUtils]: 2: Hoare triple {502#(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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {503#(and (= |ULTIMATE.start_append_~plist#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_append_~plist#1.base|)))} is VALID [2022-02-20 23:45:23,032 INFO L290 TraceCheckUtils]: 3: Hoare triple {503#(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); {501#false} is VALID [2022-02-20 23:45:23,032 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:45:23,032 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:45:23,033 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [522130204] [2022-02-20 23:45:23,033 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [522130204] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:23,033 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:23,033 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:45:23,033 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [452778149] [2022-02-20 23:45:23,033 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:23,035 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:45:23,036 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:23,036 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:45:23,039 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:45:23,040 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:45:23,040 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:45:23,041 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:45:23,041 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:45:23,042 INFO L87 Difference]: Start difference. First operand 84 states and 87 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:45:23,297 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:23,297 INFO L93 Difference]: Finished difference Result 95 states and 99 transitions. [2022-02-20 23:45:23,297 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:45:23,298 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:45:23,298 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:23,298 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:45:23,299 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 107 transitions. [2022-02-20 23:45:23,299 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:45:23,301 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 107 transitions. [2022-02-20 23:45:23,301 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 107 transitions. [2022-02-20 23:45:23,403 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 107 edges. 107 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:23,405 INFO L225 Difference]: With dead ends: 95 [2022-02-20 23:45:23,405 INFO L226 Difference]: Without dead ends: 95 [2022-02-20 23:45:23,406 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:45:23,407 INFO L933 BasicCegarLoop]: 34 mSDtfsCounter, 147 mSDsluCounter, 11 mSDsCounter, 0 mSdLazyCounter, 77 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 147 SdHoareTripleChecker+Valid, 45 SdHoareTripleChecker+Invalid, 90 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 77 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:23,407 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [147 Valid, 45 Invalid, 90 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 77 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:45:23,408 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 95 states. [2022-02-20 23:45:23,410 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 95 to 85. [2022-02-20 23:45:23,411 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:23,411 INFO L82 GeneralOperation]: Start isEquivalent. First operand 95 states. Second operand has 85 states, 50 states have (on average 1.82) internal successors, (91), 84 states have internal predecessors, (91), 0 states have call successors, (0), 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:45:23,411 INFO L74 IsIncluded]: Start isIncluded. First operand 95 states. Second operand has 85 states, 50 states have (on average 1.82) internal successors, (91), 84 states have internal predecessors, (91), 0 states have call successors, (0), 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:45:23,412 INFO L87 Difference]: Start difference. First operand 95 states. Second operand has 85 states, 50 states have (on average 1.82) internal successors, (91), 84 states have internal predecessors, (91), 0 states have call successors, (0), 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:45:23,414 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:23,414 INFO L93 Difference]: Finished difference Result 95 states and 99 transitions. [2022-02-20 23:45:23,414 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 99 transitions. [2022-02-20 23:45:23,415 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:23,415 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:23,415 INFO L74 IsIncluded]: Start isIncluded. First operand has 85 states, 50 states have (on average 1.82) internal successors, (91), 84 states have internal predecessors, (91), 0 states have call successors, (0), 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 95 states. [2022-02-20 23:45:23,415 INFO L87 Difference]: Start difference. First operand has 85 states, 50 states have (on average 1.82) internal successors, (91), 84 states have internal predecessors, (91), 0 states have call successors, (0), 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 95 states. [2022-02-20 23:45:23,417 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:23,418 INFO L93 Difference]: Finished difference Result 95 states and 99 transitions. [2022-02-20 23:45:23,418 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 99 transitions. [2022-02-20 23:45:23,418 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:23,418 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:23,418 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:23,419 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:23,419 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 85 states, 50 states have (on average 1.82) internal successors, (91), 84 states have internal predecessors, (91), 0 states have call successors, (0), 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:45:23,421 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 85 states to 85 states and 91 transitions. [2022-02-20 23:45:23,421 INFO L78 Accepts]: Start accepts. Automaton has 85 states and 91 transitions. Word has length 4 [2022-02-20 23:45:23,421 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:23,421 INFO L470 AbstractCegarLoop]: Abstraction has 85 states and 91 transitions. [2022-02-20 23:45:23,421 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:45:23,421 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 91 transitions. [2022-02-20 23:45:23,422 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 6 [2022-02-20 23:45:23,422 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:23,422 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1] [2022-02-20 23:45:23,422 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-02-20 23:45:23,422 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr2REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:23,423 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:23,423 INFO L85 PathProgramCache]: Analyzing trace with hash 28694727, now seen corresponding path program 1 times [2022-02-20 23:45:23,423 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:45:23,424 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [104762530] [2022-02-20 23:45:23,424 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:23,424 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:45:23,438 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:23,470 INFO L290 TraceCheckUtils]: 0: Hoare triple {878#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(14, 2); {878#true} is VALID [2022-02-20 23:45:23,470 INFO L290 TraceCheckUtils]: 1: Hoare triple {878#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {878#true} is VALID [2022-02-20 23:45:23,472 INFO L290 TraceCheckUtils]: 2: Hoare triple {878#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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {880#(= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) 1)} is VALID [2022-02-20 23:45:23,473 INFO L290 TraceCheckUtils]: 3: Hoare triple {880#(= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) 1)} SUMMARY for call append_#t~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L531 {880#(= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) 1)} is VALID [2022-02-20 23:45:23,473 INFO L290 TraceCheckUtils]: 4: Hoare triple {880#(= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) 1)} assume !(1 == #valid[append_~item~0#1.base]); {879#false} is VALID [2022-02-20 23:45:23,473 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:45:23,474 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:45:23,474 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [104762530] [2022-02-20 23:45:23,474 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [104762530] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:23,474 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:23,474 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:45:23,474 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1781473640] [2022-02-20 23:45:23,475 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:23,476 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:45:23,476 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:23,476 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:45:23,480 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:45:23,480 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:45:23,480 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:45:23,481 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:45:23,481 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:45:23,482 INFO L87 Difference]: Start difference. First operand 85 states and 91 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:45:23,601 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:23,601 INFO L93 Difference]: Finished difference Result 91 states and 95 transitions. [2022-02-20 23:45:23,601 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:45:23,601 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:45:23,601 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:23,602 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:45:23,603 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 99 transitions. [2022-02-20 23:45:23,603 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:45:23,604 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 99 transitions. [2022-02-20 23:45:23,604 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 99 transitions. [2022-02-20 23:45:23,672 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 99 edges. 99 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:23,673 INFO L225 Difference]: With dead ends: 91 [2022-02-20 23:45:23,673 INFO L226 Difference]: Without dead ends: 91 [2022-02-20 23:45:23,673 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:45:23,674 INFO L933 BasicCegarLoop]: 48 mSDtfsCounter, 51 mSDsluCounter, 18 mSDsCounter, 0 mSdLazyCounter, 51 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 51 SdHoareTripleChecker+Valid, 66 SdHoareTripleChecker+Invalid, 55 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 51 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:23,675 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [51 Valid, 66 Invalid, 55 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 51 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:45:23,675 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 91 states. [2022-02-20 23:45:23,677 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 91 to 81. [2022-02-20 23:45:23,678 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:23,678 INFO L82 GeneralOperation]: Start isEquivalent. First operand 91 states. Second operand has 81 states, 50 states have (on average 1.74) internal successors, (87), 80 states have internal predecessors, (87), 0 states have call successors, (0), 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:45:23,678 INFO L74 IsIncluded]: Start isIncluded. First operand 91 states. Second operand has 81 states, 50 states have (on average 1.74) internal successors, (87), 80 states have internal predecessors, (87), 0 states have call successors, (0), 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:45:23,678 INFO L87 Difference]: Start difference. First operand 91 states. Second operand has 81 states, 50 states have (on average 1.74) internal successors, (87), 80 states have internal predecessors, (87), 0 states have call successors, (0), 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:45:23,680 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:23,680 INFO L93 Difference]: Finished difference Result 91 states and 95 transitions. [2022-02-20 23:45:23,680 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 95 transitions. [2022-02-20 23:45:23,681 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:23,681 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:23,681 INFO L74 IsIncluded]: Start isIncluded. First operand has 81 states, 50 states have (on average 1.74) internal successors, (87), 80 states have internal predecessors, (87), 0 states have call successors, (0), 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 91 states. [2022-02-20 23:45:23,682 INFO L87 Difference]: Start difference. First operand has 81 states, 50 states have (on average 1.74) internal successors, (87), 80 states have internal predecessors, (87), 0 states have call successors, (0), 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 91 states. [2022-02-20 23:45:23,683 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:23,683 INFO L93 Difference]: Finished difference Result 91 states and 95 transitions. [2022-02-20 23:45:23,684 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 95 transitions. [2022-02-20 23:45:23,684 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:23,684 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:23,684 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:23,684 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:23,685 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 81 states, 50 states have (on average 1.74) internal successors, (87), 80 states have internal predecessors, (87), 0 states have call successors, (0), 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:45:23,686 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 81 states to 81 states and 87 transitions. [2022-02-20 23:45:23,686 INFO L78 Accepts]: Start accepts. Automaton has 81 states and 87 transitions. Word has length 5 [2022-02-20 23:45:23,686 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:23,686 INFO L470 AbstractCegarLoop]: Abstraction has 81 states and 87 transitions. [2022-02-20 23:45:23,687 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:45:23,687 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 87 transitions. [2022-02-20 23:45:23,687 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 6 [2022-02-20 23:45:23,687 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:23,687 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1] [2022-02-20 23:45:23,687 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-02-20 23:45:23,688 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr3REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:23,688 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:23,688 INFO L85 PathProgramCache]: Analyzing trace with hash 28694728, now seen corresponding path program 1 times [2022-02-20 23:45:23,688 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:45:23,688 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1430643331] [2022-02-20 23:45:23,689 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:23,689 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:45:23,700 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:23,717 INFO L290 TraceCheckUtils]: 0: Hoare triple {1237#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(14, 2); {1237#true} is VALID [2022-02-20 23:45:23,717 INFO L290 TraceCheckUtils]: 1: Hoare triple {1237#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {1237#true} is VALID [2022-02-20 23:45:23,718 INFO L290 TraceCheckUtils]: 2: Hoare triple {1237#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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {1239#(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:45:23,719 INFO L290 TraceCheckUtils]: 3: Hoare triple {1239#(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~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L531 {1239#(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:45:23,719 INFO L290 TraceCheckUtils]: 4: Hoare triple {1239#(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); {1238#false} is VALID [2022-02-20 23:45:23,719 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:45:23,720 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:45:23,720 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1430643331] [2022-02-20 23:45:23,720 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1430643331] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:23,720 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:23,720 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:45:23,720 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1032521726] [2022-02-20 23:45:23,721 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:23,721 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:45:23,721 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:23,721 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:45:23,725 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:45:23,726 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:45:23,726 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:45:23,726 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:45:23,727 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:45:23,727 INFO L87 Difference]: Start difference. First operand 81 states and 87 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:45:23,825 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:23,825 INFO L93 Difference]: Finished difference Result 78 states and 84 transitions. [2022-02-20 23:45:23,825 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:45:23,825 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:45:23,825 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:23,826 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:45:23,826 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 79 transitions. [2022-02-20 23:45:23,826 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:45:23,827 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 79 transitions. [2022-02-20 23:45:23,827 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 79 transitions. [2022-02-20 23:45:23,914 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:23,915 INFO L225 Difference]: With dead ends: 78 [2022-02-20 23:45:23,915 INFO L226 Difference]: Without dead ends: 78 [2022-02-20 23:45:23,916 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:45:23,923 INFO L933 BasicCegarLoop]: 44 mSDtfsCounter, 69 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 33 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 69 SdHoareTripleChecker+Valid, 44 SdHoareTripleChecker+Invalid, 37 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 33 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:23,925 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [69 Valid, 44 Invalid, 37 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 33 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:45:23,927 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 78 states. [2022-02-20 23:45:23,931 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 78 to 77. [2022-02-20 23:45:23,933 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:23,934 INFO L82 GeneralOperation]: Start isEquivalent. First operand 78 states. Second operand has 77 states, 50 states have (on average 1.66) internal successors, (83), 76 states have internal predecessors, (83), 0 states have call successors, (0), 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:45:23,934 INFO L74 IsIncluded]: Start isIncluded. First operand 78 states. Second operand has 77 states, 50 states have (on average 1.66) internal successors, (83), 76 states have internal predecessors, (83), 0 states have call successors, (0), 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:45:23,934 INFO L87 Difference]: Start difference. First operand 78 states. Second operand has 77 states, 50 states have (on average 1.66) internal successors, (83), 76 states have internal predecessors, (83), 0 states have call successors, (0), 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:45:23,936 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:23,936 INFO L93 Difference]: Finished difference Result 78 states and 84 transitions. [2022-02-20 23:45:23,936 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 84 transitions. [2022-02-20 23:45:23,936 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:23,937 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:23,937 INFO L74 IsIncluded]: Start isIncluded. First operand has 77 states, 50 states have (on average 1.66) internal successors, (83), 76 states have internal predecessors, (83), 0 states have call successors, (0), 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 78 states. [2022-02-20 23:45:23,937 INFO L87 Difference]: Start difference. First operand has 77 states, 50 states have (on average 1.66) internal successors, (83), 76 states have internal predecessors, (83), 0 states have call successors, (0), 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 78 states. [2022-02-20 23:45:23,940 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:23,940 INFO L93 Difference]: Finished difference Result 78 states and 84 transitions. [2022-02-20 23:45:23,940 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 84 transitions. [2022-02-20 23:45:23,940 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:23,940 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:23,941 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:23,941 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:23,941 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 77 states, 50 states have (on average 1.66) internal successors, (83), 76 states have internal predecessors, (83), 0 states have call successors, (0), 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:45:23,942 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 77 states to 77 states and 83 transitions. [2022-02-20 23:45:23,942 INFO L78 Accepts]: Start accepts. Automaton has 77 states and 83 transitions. Word has length 5 [2022-02-20 23:45:23,943 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:23,943 INFO L470 AbstractCegarLoop]: Abstraction has 77 states and 83 transitions. [2022-02-20 23:45:23,943 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:45:23,943 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 83 transitions. [2022-02-20 23:45:23,944 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 11 [2022-02-20 23:45:23,944 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:23,944 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:45:23,944 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-02-20 23:45:23,944 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr8REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:23,945 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:23,945 INFO L85 PathProgramCache]: Analyzing trace with hash -1328641136, now seen corresponding path program 1 times [2022-02-20 23:45:23,946 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:45:23,946 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [67414444] [2022-02-20 23:45:23,946 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:23,946 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:45:24,007 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:24,082 INFO L290 TraceCheckUtils]: 0: Hoare triple {1553#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(14, 2); {1553#true} is VALID [2022-02-20 23:45:24,082 INFO L290 TraceCheckUtils]: 1: Hoare triple {1553#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {1555#(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:45:24,083 INFO L290 TraceCheckUtils]: 2: Hoare triple {1555#(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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {1556#(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:45:24,084 INFO L290 TraceCheckUtils]: 3: Hoare triple {1556#(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~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L531 {1557#(and (= |ULTIMATE.start_append_#t~mem4#1.offset| 0) (= 0 |ULTIMATE.start_append_#t~mem4#1.base|))} is VALID [2022-02-20 23:45:24,084 INFO L290 TraceCheckUtils]: 4: Hoare triple {1557#(and (= |ULTIMATE.start_append_#t~mem4#1.offset| 0) (= 0 |ULTIMATE.start_append_#t~mem4#1.base|))} SUMMARY for call write~$Pointer$(append_#t~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L531-1 {1558#(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:45:24,085 INFO L290 TraceCheckUtils]: 5: Hoare triple {1558#(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~mem4#1.base, append_#t~mem4#1.offset; {1558#(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:45:24,085 INFO L290 TraceCheckUtils]: 6: Hoare triple {1558#(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~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L532 {1559#(and (= |ULTIMATE.start_append_#t~mem5#1.offset| 0) (= |ULTIMATE.start_append_#t~mem5#1.base| 0))} is VALID [2022-02-20 23:45:24,086 INFO L290 TraceCheckUtils]: 7: Hoare triple {1559#(and (= |ULTIMATE.start_append_#t~mem5#1.offset| 0) (= |ULTIMATE.start_append_#t~mem5#1.base| 0))} assume append_#t~mem5#1.base != 0 || append_#t~mem5#1.offset != 0; {1554#false} is VALID [2022-02-20 23:45:24,086 INFO L290 TraceCheckUtils]: 8: Hoare triple {1554#false} 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: L533 {1554#false} is VALID [2022-02-20 23:45:24,086 INFO L290 TraceCheckUtils]: 9: Hoare triple {1554#false} assume !(1 == #valid[append_#t~mem6#1.base]); {1554#false} is VALID [2022-02-20 23:45:24,086 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:45:24,086 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:45:24,087 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [67414444] [2022-02-20 23:45:24,087 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [67414444] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:24,087 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:24,087 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-20 23:45:24,087 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [331035266] [2022-02-20 23:45:24,087 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:24,087 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:45:24,088 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:24,088 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:45:24,095 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:45:24,095 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 23:45:24,095 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:45:24,095 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 23:45:24,095 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:45:24,095 INFO L87 Difference]: Start difference. First operand 77 states and 83 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:45:24,466 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:24,467 INFO L93 Difference]: Finished difference Result 88 states and 94 transitions. [2022-02-20 23:45:24,467 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-02-20 23:45:24,467 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:45:24,467 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:24,467 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:45:24,468 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 86 transitions. [2022-02-20 23:45:24,468 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:45:24,469 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 86 transitions. [2022-02-20 23:45:24,469 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 86 transitions. [2022-02-20 23:45:24,547 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 86 edges. 86 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:24,549 INFO L225 Difference]: With dead ends: 88 [2022-02-20 23:45:24,549 INFO L226 Difference]: Without dead ends: 88 [2022-02-20 23:45:24,549 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:45:24,550 INFO L933 BasicCegarLoop]: 67 mSDtfsCounter, 14 mSDsluCounter, 281 mSDsCounter, 0 mSdLazyCounter, 94 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 348 SdHoareTripleChecker+Invalid, 100 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 94 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:24,551 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 348 Invalid, 100 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 94 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:45:24,551 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 88 states. [2022-02-20 23:45:24,554 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 88 to 83. [2022-02-20 23:45:24,554 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:24,554 INFO L82 GeneralOperation]: Start isEquivalent. First operand 88 states. Second operand has 83 states, 56 states have (on average 1.5892857142857142) internal successors, (89), 82 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:45:24,554 INFO L74 IsIncluded]: Start isIncluded. First operand 88 states. Second operand has 83 states, 56 states have (on average 1.5892857142857142) internal successors, (89), 82 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:45:24,555 INFO L87 Difference]: Start difference. First operand 88 states. Second operand has 83 states, 56 states have (on average 1.5892857142857142) internal successors, (89), 82 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:45:24,557 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:24,558 INFO L93 Difference]: Finished difference Result 88 states and 94 transitions. [2022-02-20 23:45:24,558 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 94 transitions. [2022-02-20 23:45:24,558 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:24,558 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:24,559 INFO L74 IsIncluded]: Start isIncluded. First operand has 83 states, 56 states have (on average 1.5892857142857142) internal successors, (89), 82 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 88 states. [2022-02-20 23:45:24,559 INFO L87 Difference]: Start difference. First operand has 83 states, 56 states have (on average 1.5892857142857142) internal successors, (89), 82 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 88 states. [2022-02-20 23:45:24,561 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:24,561 INFO L93 Difference]: Finished difference Result 88 states and 94 transitions. [2022-02-20 23:45:24,562 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 94 transitions. [2022-02-20 23:45:24,562 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:24,563 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:24,563 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:24,563 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:24,563 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 83 states, 56 states have (on average 1.5892857142857142) internal successors, (89), 82 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:45:24,565 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 83 states to 83 states and 89 transitions. [2022-02-20 23:45:24,565 INFO L78 Accepts]: Start accepts. Automaton has 83 states and 89 transitions. Word has length 10 [2022-02-20 23:45:24,565 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:24,565 INFO L470 AbstractCegarLoop]: Abstraction has 83 states and 89 transitions. [2022-02-20 23:45:24,566 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:45:24,566 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 89 transitions. [2022-02-20 23:45:24,566 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-02-20 23:45:24,566 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:24,566 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:45:24,567 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2022-02-20 23:45:24,567 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr18REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:24,567 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:24,567 INFO L85 PathProgramCache]: Analyzing trace with hash 2075015976, now seen corresponding path program 1 times [2022-02-20 23:45:24,568 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:45:24,568 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1493437488] [2022-02-20 23:45:24,568 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:24,568 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:45:24,599 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:24,643 INFO L290 TraceCheckUtils]: 0: Hoare triple {1921#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(14, 2); {1921#true} is VALID [2022-02-20 23:45:24,643 INFO L290 TraceCheckUtils]: 1: Hoare triple {1921#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {1921#true} is VALID [2022-02-20 23:45:24,644 INFO L290 TraceCheckUtils]: 2: Hoare triple {1921#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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {1923#(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:45:24,644 INFO L290 TraceCheckUtils]: 3: Hoare triple {1923#(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~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L531 {1923#(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:45:24,645 INFO L290 TraceCheckUtils]: 4: Hoare triple {1923#(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~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L531-1 {1923#(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:45:24,645 INFO L290 TraceCheckUtils]: 5: Hoare triple {1923#(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~mem4#1.base, append_#t~mem4#1.offset; {1923#(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:45:24,646 INFO L290 TraceCheckUtils]: 6: Hoare triple {1923#(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_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L532 {1923#(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:45:24,646 INFO L290 TraceCheckUtils]: 7: Hoare triple {1923#(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~mem5#1.base != 0 || append_#t~mem5#1.offset != 0);call append_#t~malloc8#1.base, append_#t~malloc8#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite9#1.base, append_#t~ite9#1.offset := append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {1923#(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:45:24,647 INFO L290 TraceCheckUtils]: 8: Hoare triple {1923#(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~ite9#1.base, append_#t~ite9#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L532-3 {1924#(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:45:24,648 INFO L290 TraceCheckUtils]: 9: Hoare triple {1924#(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~mem5#1.base, append_#t~mem5#1.offset;havoc append_#t~ite9#1.base, append_#t~ite9#1.offset;havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {1924#(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:45:24,649 INFO L290 TraceCheckUtils]: 10: Hoare triple {1924#(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: L535 {1925#(= (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:45:24,649 INFO L290 TraceCheckUtils]: 11: Hoare triple {1925#(= (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; {1925#(= (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:45:24,650 INFO L290 TraceCheckUtils]: 12: Hoare triple {1925#(= (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~nondet10#1 && main_#t~nondet10#1 <= 2147483647; {1925#(= (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:45:24,650 INFO L290 TraceCheckUtils]: 13: Hoare triple {1925#(= (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~nondet10#1);havoc main_#t~nondet10#1; {1925#(= (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:45:24,650 INFO L290 TraceCheckUtils]: 14: Hoare triple {1925#(= (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~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L540-5 {1925#(= (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:45:24,651 INFO L290 TraceCheckUtils]: 15: Hoare triple {1925#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1)} assume main_#t~mem11#1.base != 0 || main_#t~mem11#1.offset != 0;havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {1925#(= (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:45:24,652 INFO L290 TraceCheckUtils]: 16: Hoare triple {1925#(= (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~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L544 {1926#(= (select |#valid| |ULTIMATE.start_main_#t~mem12#1.base|) 1)} is VALID [2022-02-20 23:45:24,652 INFO L290 TraceCheckUtils]: 17: Hoare triple {1926#(= (select |#valid| |ULTIMATE.start_main_#t~mem12#1.base|) 1)} assume !(1 == #valid[main_#t~mem12#1.base]); {1922#false} is VALID [2022-02-20 23:45:24,652 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:45:24,653 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:45:24,653 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1493437488] [2022-02-20 23:45:24,653 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1493437488] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:24,653 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:24,654 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:45:24,654 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [93468780] [2022-02-20 23:45:24,654 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:24,654 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:45:24,654 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:24,655 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:45:24,665 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:45:24,666 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:45:24,666 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:45:24,667 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:45:24,667 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:45:24,667 INFO L87 Difference]: Start difference. First operand 83 states and 89 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:45:24,948 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:24,948 INFO L93 Difference]: Finished difference Result 91 states and 95 transitions. [2022-02-20 23:45:24,948 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:45:24,949 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:45:24,949 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:24,949 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:45:24,950 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 93 transitions. [2022-02-20 23:45:24,950 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:45:24,951 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 93 transitions. [2022-02-20 23:45:24,951 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 93 transitions. [2022-02-20 23:45:25,042 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:45:25,043 INFO L225 Difference]: With dead ends: 91 [2022-02-20 23:45:25,043 INFO L226 Difference]: Without dead ends: 91 [2022-02-20 23:45:25,044 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=22, Invalid=34, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:45:25,044 INFO L933 BasicCegarLoop]: 35 mSDtfsCounter, 112 mSDsluCounter, 59 mSDsCounter, 0 mSdLazyCounter, 150 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 112 SdHoareTripleChecker+Valid, 94 SdHoareTripleChecker+Invalid, 155 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 150 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:25,044 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [112 Valid, 94 Invalid, 155 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 150 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:45:25,045 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 91 states. [2022-02-20 23:45:25,047 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 91 to 82. [2022-02-20 23:45:25,047 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:25,047 INFO L82 GeneralOperation]: Start isEquivalent. First operand 91 states. Second operand has 82 states, 56 states have (on average 1.5714285714285714) internal successors, (88), 81 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:45:25,047 INFO L74 IsIncluded]: Start isIncluded. First operand 91 states. Second operand has 82 states, 56 states have (on average 1.5714285714285714) internal successors, (88), 81 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:45:25,048 INFO L87 Difference]: Start difference. First operand 91 states. Second operand has 82 states, 56 states have (on average 1.5714285714285714) internal successors, (88), 81 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:45:25,049 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:25,049 INFO L93 Difference]: Finished difference Result 91 states and 95 transitions. [2022-02-20 23:45:25,049 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 95 transitions. [2022-02-20 23:45:25,049 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:25,050 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:25,050 INFO L74 IsIncluded]: Start isIncluded. First operand has 82 states, 56 states have (on average 1.5714285714285714) internal successors, (88), 81 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 91 states. [2022-02-20 23:45:25,050 INFO L87 Difference]: Start difference. First operand has 82 states, 56 states have (on average 1.5714285714285714) internal successors, (88), 81 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 91 states. [2022-02-20 23:45:25,051 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:25,052 INFO L93 Difference]: Finished difference Result 91 states and 95 transitions. [2022-02-20 23:45:25,052 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 95 transitions. [2022-02-20 23:45:25,052 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:25,052 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:25,052 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:25,052 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:25,053 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 82 states, 56 states have (on average 1.5714285714285714) internal successors, (88), 81 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:45:25,054 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 82 states to 82 states and 88 transitions. [2022-02-20 23:45:25,054 INFO L78 Accepts]: Start accepts. Automaton has 82 states and 88 transitions. Word has length 18 [2022-02-20 23:45:25,054 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:25,054 INFO L470 AbstractCegarLoop]: Abstraction has 82 states and 88 transitions. [2022-02-20 23:45:25,054 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:45:25,055 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 88 transitions. [2022-02-20 23:45:25,055 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-02-20 23:45:25,055 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:25,055 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:45:25,055 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2022-02-20 23:45:25,055 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr19REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:25,056 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:25,056 INFO L85 PathProgramCache]: Analyzing trace with hash 2075015977, now seen corresponding path program 1 times [2022-02-20 23:45:25,056 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:45:25,056 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [747092365] [2022-02-20 23:45:25,056 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:25,056 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:45:25,100 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:25,170 INFO L290 TraceCheckUtils]: 0: Hoare triple {2288#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(14, 2); {2288#true} is VALID [2022-02-20 23:45:25,170 INFO L290 TraceCheckUtils]: 1: Hoare triple {2288#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {2288#true} is VALID [2022-02-20 23:45:25,170 INFO L290 TraceCheckUtils]: 2: Hoare triple {2288#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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {2290#(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:45:25,171 INFO L290 TraceCheckUtils]: 3: Hoare triple {2290#(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~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L531 {2290#(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:45:25,171 INFO L290 TraceCheckUtils]: 4: Hoare triple {2290#(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~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L531-1 {2290#(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:45:25,172 INFO L290 TraceCheckUtils]: 5: Hoare triple {2290#(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~mem4#1.base, append_#t~mem4#1.offset; {2290#(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:45:25,172 INFO L290 TraceCheckUtils]: 6: Hoare triple {2290#(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_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L532 {2290#(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:45:25,173 INFO L290 TraceCheckUtils]: 7: Hoare triple {2290#(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~mem5#1.base != 0 || append_#t~mem5#1.offset != 0);call append_#t~malloc8#1.base, append_#t~malloc8#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite9#1.base, append_#t~ite9#1.offset := append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {2290#(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:45:25,173 INFO L290 TraceCheckUtils]: 8: Hoare triple {2290#(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~ite9#1.base, append_#t~ite9#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L532-3 {2291#(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:45:25,174 INFO L290 TraceCheckUtils]: 9: Hoare triple {2291#(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~mem5#1.base, append_#t~mem5#1.offset;havoc append_#t~ite9#1.base, append_#t~ite9#1.offset;havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {2291#(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:45:25,175 INFO L290 TraceCheckUtils]: 10: Hoare triple {2291#(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: L535 {2292#(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:45:25,175 INFO L290 TraceCheckUtils]: 11: Hoare triple {2292#(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; {2292#(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:45:25,175 INFO L290 TraceCheckUtils]: 12: Hoare triple {2292#(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~nondet10#1 && main_#t~nondet10#1 <= 2147483647; {2292#(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:45:25,176 INFO L290 TraceCheckUtils]: 13: Hoare triple {2292#(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~nondet10#1);havoc main_#t~nondet10#1; {2292#(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:45:25,176 INFO L290 TraceCheckUtils]: 14: Hoare triple {2292#(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~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L540-5 {2292#(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:45:25,177 INFO L290 TraceCheckUtils]: 15: Hoare triple {2292#(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_#t~mem11#1.base != 0 || main_#t~mem11#1.offset != 0;havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {2292#(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:45:25,177 INFO L290 TraceCheckUtils]: 16: Hoare triple {2292#(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~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L544 {2293#(and (<= 8 (select |#length| |ULTIMATE.start_main_#t~mem12#1.base|)) (= |ULTIMATE.start_main_#t~mem12#1.offset| 0))} is VALID [2022-02-20 23:45:25,178 INFO L290 TraceCheckUtils]: 17: Hoare triple {2293#(and (<= 8 (select |#length| |ULTIMATE.start_main_#t~mem12#1.base|)) (= |ULTIMATE.start_main_#t~mem12#1.offset| 0))} assume !(4 + main_#t~mem12#1.offset <= #length[main_#t~mem12#1.base] && 0 <= main_#t~mem12#1.offset); {2289#false} is VALID [2022-02-20 23:45:25,178 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:45:25,178 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:45:25,178 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [747092365] [2022-02-20 23:45:25,178 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [747092365] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:25,178 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:25,178 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:45:25,178 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1685682928] [2022-02-20 23:45:25,179 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:25,179 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:45:25,179 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:25,179 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:45:25,191 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:45:25,192 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:45:25,192 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:45:25,192 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:45:25,192 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:45:25,192 INFO L87 Difference]: Start difference. First operand 82 states and 88 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:45:25,475 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:25,475 INFO L93 Difference]: Finished difference Result 93 states and 97 transitions. [2022-02-20 23:45:25,475 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:45:25,476 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:45:25,476 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:25,476 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:45:25,477 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 95 transitions. [2022-02-20 23:45:25,477 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:45:25,477 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 95 transitions. [2022-02-20 23:45:25,477 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 95 transitions. [2022-02-20 23:45:25,560 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 95 edges. 95 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:25,561 INFO L225 Difference]: With dead ends: 93 [2022-02-20 23:45:25,561 INFO L226 Difference]: Without dead ends: 93 [2022-02-20 23:45:25,562 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=22, Invalid=34, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:45:25,562 INFO L933 BasicCegarLoop]: 39 mSDtfsCounter, 127 mSDsluCounter, 54 mSDsCounter, 0 mSdLazyCounter, 104 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 127 SdHoareTripleChecker+Valid, 93 SdHoareTripleChecker+Invalid, 109 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 104 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:25,562 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [127 Valid, 93 Invalid, 109 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 104 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:45:25,563 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 93 states. [2022-02-20 23:45:25,564 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 93 to 81. [2022-02-20 23:45:25,564 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:25,565 INFO L82 GeneralOperation]: Start isEquivalent. First operand 93 states. Second operand has 81 states, 56 states have (on average 1.5535714285714286) internal successors, (87), 80 states have internal predecessors, (87), 0 states have call successors, (0), 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:45:25,565 INFO L74 IsIncluded]: Start isIncluded. First operand 93 states. Second operand has 81 states, 56 states have (on average 1.5535714285714286) internal successors, (87), 80 states have internal predecessors, (87), 0 states have call successors, (0), 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:45:25,565 INFO L87 Difference]: Start difference. First operand 93 states. Second operand has 81 states, 56 states have (on average 1.5535714285714286) internal successors, (87), 80 states have internal predecessors, (87), 0 states have call successors, (0), 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:45:25,566 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:25,567 INFO L93 Difference]: Finished difference Result 93 states and 97 transitions. [2022-02-20 23:45:25,567 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 97 transitions. [2022-02-20 23:45:25,567 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:25,567 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:25,567 INFO L74 IsIncluded]: Start isIncluded. First operand has 81 states, 56 states have (on average 1.5535714285714286) internal successors, (87), 80 states have internal predecessors, (87), 0 states have call successors, (0), 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 93 states. [2022-02-20 23:45:25,567 INFO L87 Difference]: Start difference. First operand has 81 states, 56 states have (on average 1.5535714285714286) internal successors, (87), 80 states have internal predecessors, (87), 0 states have call successors, (0), 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 93 states. [2022-02-20 23:45:25,569 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:25,569 INFO L93 Difference]: Finished difference Result 93 states and 97 transitions. [2022-02-20 23:45:25,569 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 97 transitions. [2022-02-20 23:45:25,569 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:25,569 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:25,569 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:25,570 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:25,570 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 81 states, 56 states have (on average 1.5535714285714286) internal successors, (87), 80 states have internal predecessors, (87), 0 states have call successors, (0), 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:45:25,571 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 81 states to 81 states and 87 transitions. [2022-02-20 23:45:25,571 INFO L78 Accepts]: Start accepts. Automaton has 81 states and 87 transitions. Word has length 18 [2022-02-20 23:45:25,571 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:25,571 INFO L470 AbstractCegarLoop]: Abstraction has 81 states and 87 transitions. [2022-02-20 23:45:25,571 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:45:25,572 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 87 transitions. [2022-02-20 23:45:25,572 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 21 [2022-02-20 23:45:25,572 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:25,572 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:45:25,572 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2022-02-20 23:45:25,572 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr47ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:25,573 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:25,573 INFO L85 PathProgramCache]: Analyzing trace with hash 1257146476, now seen corresponding path program 1 times [2022-02-20 23:45:25,573 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:45:25,573 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [155441321] [2022-02-20 23:45:25,573 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:25,573 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:45:25,592 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:25,639 INFO L290 TraceCheckUtils]: 0: Hoare triple {2660#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(14, 2); {2660#true} is VALID [2022-02-20 23:45:25,640 INFO L290 TraceCheckUtils]: 1: Hoare triple {2660#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {2660#true} is VALID [2022-02-20 23:45:25,640 INFO L290 TraceCheckUtils]: 2: Hoare triple {2660#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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {2662#(and (not (= |ULTIMATE.start_append_~item~0#1.base| 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:45:25,641 INFO L290 TraceCheckUtils]: 3: Hoare triple {2662#(and (not (= |ULTIMATE.start_append_~item~0#1.base| 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~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L531 {2662#(and (not (= |ULTIMATE.start_append_~item~0#1.base| 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:45:25,641 INFO L290 TraceCheckUtils]: 4: Hoare triple {2662#(and (not (= |ULTIMATE.start_append_~item~0#1.base| 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~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L531-1 {2662#(and (not (= |ULTIMATE.start_append_~item~0#1.base| 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:45:25,642 INFO L290 TraceCheckUtils]: 5: Hoare triple {2662#(and (not (= |ULTIMATE.start_append_~item~0#1.base| 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~mem4#1.base, append_#t~mem4#1.offset; {2662#(and (not (= |ULTIMATE.start_append_~item~0#1.base| 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:45:25,643 INFO L290 TraceCheckUtils]: 6: Hoare triple {2662#(and (not (= |ULTIMATE.start_append_~item~0#1.base| 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_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L532 {2662#(and (not (= |ULTIMATE.start_append_~item~0#1.base| 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:45:25,643 INFO L290 TraceCheckUtils]: 7: Hoare triple {2662#(and (not (= |ULTIMATE.start_append_~item~0#1.base| 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~mem5#1.base != 0 || append_#t~mem5#1.offset != 0);call append_#t~malloc8#1.base, append_#t~malloc8#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite9#1.base, append_#t~ite9#1.offset := append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {2662#(and (not (= |ULTIMATE.start_append_~item~0#1.base| 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:45:25,644 INFO L290 TraceCheckUtils]: 8: Hoare triple {2662#(and (not (= |ULTIMATE.start_append_~item~0#1.base| 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~ite9#1.base, append_#t~ite9#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L532-3 {2662#(and (not (= |ULTIMATE.start_append_~item~0#1.base| 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:45:25,644 INFO L290 TraceCheckUtils]: 9: Hoare triple {2662#(and (not (= |ULTIMATE.start_append_~item~0#1.base| 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;havoc append_#t~ite9#1.base, append_#t~ite9#1.offset;havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {2662#(and (not (= |ULTIMATE.start_append_~item~0#1.base| 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:45:25,645 INFO L290 TraceCheckUtils]: 10: Hoare triple {2662#(and (not (= |ULTIMATE.start_append_~item~0#1.base| 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: L535 {2663#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0))} is VALID [2022-02-20 23:45:25,645 INFO L290 TraceCheckUtils]: 11: Hoare triple {2663#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0))} assume { :end_inline_append } true; {2663#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0))} is VALID [2022-02-20 23:45:25,646 INFO L290 TraceCheckUtils]: 12: Hoare triple {2663#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0))} assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647; {2663#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0))} is VALID [2022-02-20 23:45:25,646 INFO L290 TraceCheckUtils]: 13: Hoare triple {2663#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0))} assume !(0 != main_#t~nondet10#1);havoc main_#t~nondet10#1; {2663#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0))} is VALID [2022-02-20 23:45:25,647 INFO L290 TraceCheckUtils]: 14: Hoare triple {2663#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0))} SUMMARY for call main_#t~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L540-5 {2664#(not (= |ULTIMATE.start_main_#t~mem11#1.base| 0))} is VALID [2022-02-20 23:45:25,648 INFO L290 TraceCheckUtils]: 15: Hoare triple {2664#(not (= |ULTIMATE.start_main_#t~mem11#1.base| 0))} assume !(main_#t~mem11#1.base != 0 || main_#t~mem11#1.offset != 0);havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {2661#false} is VALID [2022-02-20 23:45:25,648 INFO L290 TraceCheckUtils]: 16: Hoare triple {2661#false} SUMMARY for call main_#t~mem20#1.base, main_#t~mem20#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L552-1 {2661#false} is VALID [2022-02-20 23:45:25,648 INFO L290 TraceCheckUtils]: 17: Hoare triple {2661#false} assume !(main_#t~mem20#1.base != 0 || main_#t~mem20#1.offset != 0);havoc main_#t~mem20#1.base, main_#t~mem20#1.offset; {2661#false} is VALID [2022-02-20 23:45:25,648 INFO L290 TraceCheckUtils]: 18: Hoare triple {2661#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; {2661#false} is VALID [2022-02-20 23:45:25,648 INFO L290 TraceCheckUtils]: 19: Hoare triple {2661#false} assume !(#valid == main_old_#valid#1); {2661#false} is VALID [2022-02-20 23:45:25,649 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:45:25,649 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:45:25,649 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [155441321] [2022-02-20 23:45:25,649 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [155441321] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:25,649 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:25,649 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:45:25,649 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1270589591] [2022-02-20 23:45:25,650 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:25,650 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.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:45:25,650 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:25,650 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.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:45:25,663 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:45:25,663 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:45:25,663 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:45:25,664 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:45:25,664 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:45:25,664 INFO L87 Difference]: Start difference. First operand 81 states and 87 transitions. Second operand has 5 states, 5 states have (on average 4.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:45:25,863 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:25,863 INFO L93 Difference]: Finished difference Result 75 states and 77 transitions. [2022-02-20 23:45:25,863 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:45:25,863 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.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:45:25,864 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:25,864 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.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:45:25,864 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 75 transitions. [2022-02-20 23:45:25,865 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.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:45:25,865 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 75 transitions. [2022-02-20 23:45:25,865 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 75 transitions. [2022-02-20 23:45:25,928 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 75 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:25,929 INFO L225 Difference]: With dead ends: 75 [2022-02-20 23:45:25,929 INFO L226 Difference]: Without dead ends: 75 [2022-02-20 23:45:25,929 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 2 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:45:25,930 INFO L933 BasicCegarLoop]: 43 mSDtfsCounter, 84 mSDsluCounter, 64 mSDsCounter, 0 mSdLazyCounter, 85 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 84 SdHoareTripleChecker+Valid, 107 SdHoareTripleChecker+Invalid, 89 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 85 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:25,930 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [84 Valid, 107 Invalid, 89 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 85 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:45:25,930 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 75 states. [2022-02-20 23:45:25,931 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 75 to 75. [2022-02-20 23:45:25,932 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:25,932 INFO L82 GeneralOperation]: Start isEquivalent. First operand 75 states. Second operand has 75 states, 50 states have (on average 1.54) internal successors, (77), 74 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:45:25,932 INFO L74 IsIncluded]: Start isIncluded. First operand 75 states. Second operand has 75 states, 50 states have (on average 1.54) internal successors, (77), 74 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:45:25,932 INFO L87 Difference]: Start difference. First operand 75 states. Second operand has 75 states, 50 states have (on average 1.54) internal successors, (77), 74 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:45:25,933 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:25,934 INFO L93 Difference]: Finished difference Result 75 states and 77 transitions. [2022-02-20 23:45:25,934 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 77 transitions. [2022-02-20 23:45:25,934 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:25,934 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:25,934 INFO L74 IsIncluded]: Start isIncluded. First operand has 75 states, 50 states have (on average 1.54) internal successors, (77), 74 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 75 states. [2022-02-20 23:45:25,934 INFO L87 Difference]: Start difference. First operand has 75 states, 50 states have (on average 1.54) internal successors, (77), 74 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 75 states. [2022-02-20 23:45:25,936 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:25,936 INFO L93 Difference]: Finished difference Result 75 states and 77 transitions. [2022-02-20 23:45:25,936 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 77 transitions. [2022-02-20 23:45:25,936 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:25,936 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:25,936 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:25,936 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:25,937 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 75 states, 50 states have (on average 1.54) internal successors, (77), 74 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:45:25,938 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 75 states to 75 states and 77 transitions. [2022-02-20 23:45:25,938 INFO L78 Accepts]: Start accepts. Automaton has 75 states and 77 transitions. Word has length 20 [2022-02-20 23:45:25,938 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:25,938 INFO L470 AbstractCegarLoop]: Abstraction has 75 states and 77 transitions. [2022-02-20 23:45:25,938 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.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:45:25,938 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 77 transitions. [2022-02-20 23:45:25,939 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2022-02-20 23:45:25,939 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:25,939 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:45:25,939 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7 [2022-02-20 23:45:25,939 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting ULTIMATE.startErr22REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:25,939 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:25,939 INFO L85 PathProgramCache]: Analyzing trace with hash -663319494, now seen corresponding path program 1 times [2022-02-20 23:45:25,940 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:45:25,940 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1718405275] [2022-02-20 23:45:25,940 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:25,940 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:45:25,966 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:25,987 INFO L290 TraceCheckUtils]: 0: Hoare triple {2971#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(14, 2); {2971#true} is VALID [2022-02-20 23:45:25,987 INFO L290 TraceCheckUtils]: 1: Hoare triple {2971#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {2971#true} is VALID [2022-02-20 23:45:25,988 INFO L290 TraceCheckUtils]: 2: Hoare triple {2971#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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {2971#true} is VALID [2022-02-20 23:45:25,988 INFO L290 TraceCheckUtils]: 3: Hoare triple {2971#true} SUMMARY for call append_#t~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L531 {2971#true} is VALID [2022-02-20 23:45:25,988 INFO L290 TraceCheckUtils]: 4: Hoare triple {2971#true} SUMMARY for call write~$Pointer$(append_#t~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L531-1 {2971#true} is VALID [2022-02-20 23:45:25,988 INFO L290 TraceCheckUtils]: 5: Hoare triple {2971#true} havoc append_#t~mem4#1.base, append_#t~mem4#1.offset; {2971#true} is VALID [2022-02-20 23:45:25,988 INFO L290 TraceCheckUtils]: 6: Hoare triple {2971#true} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L532 {2971#true} is VALID [2022-02-20 23:45:25,988 INFO L290 TraceCheckUtils]: 7: Hoare triple {2971#true} assume !(append_#t~mem5#1.base != 0 || append_#t~mem5#1.offset != 0);call append_#t~malloc8#1.base, append_#t~malloc8#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite9#1.base, append_#t~ite9#1.offset := append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {2971#true} is VALID [2022-02-20 23:45:25,994 INFO L290 TraceCheckUtils]: 8: Hoare triple {2971#true} SUMMARY for call write~$Pointer$(append_#t~ite9#1.base, append_#t~ite9#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L532-3 {2971#true} is VALID [2022-02-20 23:45:25,994 INFO L290 TraceCheckUtils]: 9: Hoare triple {2971#true} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset;havoc append_#t~ite9#1.base, append_#t~ite9#1.offset;havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {2971#true} is VALID [2022-02-20 23:45:25,994 INFO L290 TraceCheckUtils]: 10: Hoare triple {2971#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: L535 {2971#true} is VALID [2022-02-20 23:45:25,995 INFO L290 TraceCheckUtils]: 11: Hoare triple {2971#true} assume { :end_inline_append } true; {2971#true} is VALID [2022-02-20 23:45:25,995 INFO L290 TraceCheckUtils]: 12: Hoare triple {2971#true} assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647; {2971#true} is VALID [2022-02-20 23:45:25,995 INFO L290 TraceCheckUtils]: 13: Hoare triple {2971#true} assume !(0 != main_#t~nondet10#1);havoc main_#t~nondet10#1; {2971#true} is VALID [2022-02-20 23:45:25,995 INFO L290 TraceCheckUtils]: 14: Hoare triple {2971#true} SUMMARY for call main_#t~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L540-5 {2971#true} is VALID [2022-02-20 23:45:25,995 INFO L290 TraceCheckUtils]: 15: Hoare triple {2971#true} assume main_#t~mem11#1.base != 0 || main_#t~mem11#1.offset != 0;havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {2971#true} is VALID [2022-02-20 23:45:25,996 INFO L290 TraceCheckUtils]: 16: Hoare triple {2971#true} SUMMARY for call main_#t~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L544 {2973#(= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) |ULTIMATE.start_main_#t~mem12#1.base|)} is VALID [2022-02-20 23:45:25,996 INFO L290 TraceCheckUtils]: 17: Hoare triple {2973#(= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) |ULTIMATE.start_main_#t~mem12#1.base|)} SUMMARY for call main_#t~mem13#1.base, main_#t~mem13#1.offset := read~$Pointer$(main_#t~mem12#1.base, main_#t~mem12#1.offset, 4); srcloc: L544-1 {2974#(= (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:45:25,997 INFO L290 TraceCheckUtils]: 18: Hoare triple {2974#(= (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~mem13#1.base, main_#t~mem13#1.offset;havoc main_#t~mem12#1.base, main_#t~mem12#1.offset;havoc main_#t~mem13#1.base, main_#t~mem13#1.offset; {2974#(= (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:45:25,997 INFO L290 TraceCheckUtils]: 19: Hoare triple {2974#(= (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~mem14#1.base, main_#t~mem14#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L545 {2975#(= (select |#valid| |ULTIMATE.start_main_#t~mem14#1.base|) 1)} is VALID [2022-02-20 23:45:25,998 INFO L290 TraceCheckUtils]: 20: Hoare triple {2975#(= (select |#valid| |ULTIMATE.start_main_#t~mem14#1.base|) 1)} assume !(1 == #valid[main_#t~mem14#1.base]); {2972#false} is VALID [2022-02-20 23:45:25,998 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:45:25,998 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:45:25,998 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1718405275] [2022-02-20 23:45:25,998 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1718405275] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:25,998 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:25,998 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:45:25,998 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1543756203] [2022-02-20 23:45:25,999 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:25,999 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:45:26,000 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:26,001 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:45:26,014 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:45:26,014 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:45:26,014 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:45:26,014 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:45:26,015 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:45:26,015 INFO L87 Difference]: Start difference. First operand 75 states and 77 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:45:26,210 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:26,210 INFO L93 Difference]: Finished difference Result 74 states and 76 transitions. [2022-02-20 23:45:26,210 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:45:26,211 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:45:26,211 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:26,211 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:45:26,211 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 71 transitions. [2022-02-20 23:45:26,212 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:45:26,212 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 71 transitions. [2022-02-20 23:45:26,212 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 71 transitions. [2022-02-20 23:45:26,264 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 71 edges. 71 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:26,265 INFO L225 Difference]: With dead ends: 74 [2022-02-20 23:45:26,265 INFO L226 Difference]: Without dead ends: 74 [2022-02-20 23:45:26,265 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:45:26,266 INFO L933 BasicCegarLoop]: 64 mSDtfsCounter, 16 mSDsluCounter, 86 mSDsCounter, 0 mSdLazyCounter, 110 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 16 SdHoareTripleChecker+Valid, 150 SdHoareTripleChecker+Invalid, 110 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 110 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:26,266 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [16 Valid, 150 Invalid, 110 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 110 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:45:26,267 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states. [2022-02-20 23:45:26,268 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 74. [2022-02-20 23:45:26,268 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:26,268 INFO L82 GeneralOperation]: Start isEquivalent. First operand 74 states. Second operand has 74 states, 50 states have (on average 1.52) internal successors, (76), 73 states have internal predecessors, (76), 0 states have call successors, (0), 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:45:26,268 INFO L74 IsIncluded]: Start isIncluded. First operand 74 states. Second operand has 74 states, 50 states have (on average 1.52) internal successors, (76), 73 states have internal predecessors, (76), 0 states have call successors, (0), 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:45:26,268 INFO L87 Difference]: Start difference. First operand 74 states. Second operand has 74 states, 50 states have (on average 1.52) internal successors, (76), 73 states have internal predecessors, (76), 0 states have call successors, (0), 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:45:26,270 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:26,270 INFO L93 Difference]: Finished difference Result 74 states and 76 transitions. [2022-02-20 23:45:26,270 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 76 transitions. [2022-02-20 23:45:26,270 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:26,270 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:26,270 INFO L74 IsIncluded]: Start isIncluded. First operand has 74 states, 50 states have (on average 1.52) internal successors, (76), 73 states have internal predecessors, (76), 0 states have call successors, (0), 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:45:26,271 INFO L87 Difference]: Start difference. First operand has 74 states, 50 states have (on average 1.52) internal successors, (76), 73 states have internal predecessors, (76), 0 states have call successors, (0), 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:45:26,271 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:26,281 INFO L93 Difference]: Finished difference Result 74 states and 76 transitions. [2022-02-20 23:45:26,282 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 76 transitions. [2022-02-20 23:45:26,282 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:26,282 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:26,282 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:26,282 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:26,283 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 74 states, 50 states have (on average 1.52) internal successors, (76), 73 states have internal predecessors, (76), 0 states have call successors, (0), 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:45:26,284 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 76 transitions. [2022-02-20 23:45:26,284 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 76 transitions. Word has length 21 [2022-02-20 23:45:26,285 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:26,285 INFO L470 AbstractCegarLoop]: Abstraction has 74 states and 76 transitions. [2022-02-20 23:45:26,285 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:45:26,285 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 76 transitions. [2022-02-20 23:45:26,286 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2022-02-20 23:45:26,286 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:26,286 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:45:26,286 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8 [2022-02-20 23:45:26,287 INFO L402 AbstractCegarLoop]: === Iteration 10 === Targeting ULTIMATE.startErr23REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:26,287 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:26,287 INFO L85 PathProgramCache]: Analyzing trace with hash -663319493, now seen corresponding path program 1 times [2022-02-20 23:45:26,287 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:45:26,287 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1379617348] [2022-02-20 23:45:26,288 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:26,288 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:45:26,331 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:26,431 INFO L290 TraceCheckUtils]: 0: Hoare triple {3278#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(14, 2); {3278#true} is VALID [2022-02-20 23:45:26,431 INFO L290 TraceCheckUtils]: 1: Hoare triple {3278#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {3278#true} is VALID [2022-02-20 23:45:26,432 INFO L290 TraceCheckUtils]: 2: Hoare triple {3278#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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {3280#(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:45:26,432 INFO L290 TraceCheckUtils]: 3: Hoare triple {3280#(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~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L531 {3280#(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:45:26,433 INFO L290 TraceCheckUtils]: 4: Hoare triple {3280#(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~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L531-1 {3280#(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:45:26,433 INFO L290 TraceCheckUtils]: 5: Hoare triple {3280#(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~mem4#1.base, append_#t~mem4#1.offset; {3280#(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:45:26,434 INFO L290 TraceCheckUtils]: 6: Hoare triple {3280#(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_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L532 {3280#(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:45:26,434 INFO L290 TraceCheckUtils]: 7: Hoare triple {3280#(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~mem5#1.base != 0 || append_#t~mem5#1.offset != 0);call append_#t~malloc8#1.base, append_#t~malloc8#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite9#1.base, append_#t~ite9#1.offset := append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {3280#(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:45:26,435 INFO L290 TraceCheckUtils]: 8: Hoare triple {3280#(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~ite9#1.base, append_#t~ite9#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L532-3 {3281#(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:45:26,435 INFO L290 TraceCheckUtils]: 9: Hoare triple {3281#(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~mem5#1.base, append_#t~mem5#1.offset;havoc append_#t~ite9#1.base, append_#t~ite9#1.offset;havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {3281#(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:45:26,436 INFO L290 TraceCheckUtils]: 10: Hoare triple {3281#(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: L535 {3282#(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:45:26,437 INFO L290 TraceCheckUtils]: 11: Hoare triple {3282#(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; {3282#(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:45:26,437 INFO L290 TraceCheckUtils]: 12: Hoare triple {3282#(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~nondet10#1 && main_#t~nondet10#1 <= 2147483647; {3282#(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:45:26,438 INFO L290 TraceCheckUtils]: 13: Hoare triple {3282#(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~nondet10#1);havoc main_#t~nondet10#1; {3282#(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:45:26,438 INFO L290 TraceCheckUtils]: 14: Hoare triple {3282#(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~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L540-5 {3282#(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:45:26,439 INFO L290 TraceCheckUtils]: 15: Hoare triple {3282#(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_#t~mem11#1.base != 0 || main_#t~mem11#1.offset != 0;havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {3282#(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:45:26,439 INFO L290 TraceCheckUtils]: 16: Hoare triple {3282#(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~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L544 {3283#(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_#t~mem12#1.offset| 0) (= |ULTIMATE.start_main_#t~mem12#1.offset| (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:45:26,440 INFO L290 TraceCheckUtils]: 17: Hoare triple {3283#(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_#t~mem12#1.offset| 0) (= |ULTIMATE.start_main_#t~mem12#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))} SUMMARY for call main_#t~mem13#1.base, main_#t~mem13#1.offset := read~$Pointer$(main_#t~mem12#1.base, main_#t~mem12#1.offset, 4); srcloc: L544-1 {3284#(and (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 8) (select |#length| (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|)))} is VALID [2022-02-20 23:45:26,440 INFO L290 TraceCheckUtils]: 18: Hoare triple {3284#(and (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 8) (select |#length| (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|)))} main_~next~0#1.base, main_~next~0#1.offset := main_#t~mem13#1.base, main_#t~mem13#1.offset;havoc main_#t~mem12#1.base, main_#t~mem12#1.offset;havoc main_#t~mem13#1.base, main_#t~mem13#1.offset; {3284#(and (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 8) (select |#length| (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|)))} is VALID [2022-02-20 23:45:26,441 INFO L290 TraceCheckUtils]: 19: Hoare triple {3284#(and (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 8) (select |#length| (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|)))} SUMMARY for call main_#t~mem14#1.base, main_#t~mem14#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L545 {3285#(and (<= (+ 8 |ULTIMATE.start_main_#t~mem14#1.offset|) (select |#length| |ULTIMATE.start_main_#t~mem14#1.base|)) (<= 0 |ULTIMATE.start_main_#t~mem14#1.offset|))} is VALID [2022-02-20 23:45:26,441 INFO L290 TraceCheckUtils]: 20: Hoare triple {3285#(and (<= (+ 8 |ULTIMATE.start_main_#t~mem14#1.offset|) (select |#length| |ULTIMATE.start_main_#t~mem14#1.base|)) (<= 0 |ULTIMATE.start_main_#t~mem14#1.offset|))} assume !(4 + (4 + main_#t~mem14#1.offset) <= #length[main_#t~mem14#1.base] && 0 <= 4 + main_#t~mem14#1.offset); {3279#false} is VALID [2022-02-20 23:45:26,442 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:45:26,442 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:45:26,442 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1379617348] [2022-02-20 23:45:26,442 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1379617348] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:26,442 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:26,442 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-20 23:45:26,442 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [412191118] [2022-02-20 23:45:26,443 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:26,443 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 3.0) internal successors, (21), 8 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:45:26,443 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:26,443 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 3.0) internal successors, (21), 8 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:45:26,460 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:45:26,460 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 23:45:26,460 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:45:26,461 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 23:45:26,461 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:45:26,461 INFO L87 Difference]: Start difference. First operand 74 states and 76 transitions. Second operand has 8 states, 7 states have (on average 3.0) internal successors, (21), 8 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:45:26,822 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:26,822 INFO L93 Difference]: Finished difference Result 73 states and 75 transitions. [2022-02-20 23:45:26,822 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:45:26,822 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 3.0) internal successors, (21), 8 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:45:26,822 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:26,823 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 3.0) internal successors, (21), 8 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:45:26,823 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 73 transitions. [2022-02-20 23:45:26,823 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 3.0) internal successors, (21), 8 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:45:26,824 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 73 transitions. [2022-02-20 23:45:26,824 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 73 transitions. [2022-02-20 23:45:26,882 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 73 edges. 73 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:26,883 INFO L225 Difference]: With dead ends: 73 [2022-02-20 23:45:26,883 INFO L226 Difference]: Without dead ends: 73 [2022-02-20 23:45:26,884 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=39, Invalid=71, Unknown=0, NotChecked=0, Total=110 [2022-02-20 23:45:26,884 INFO L933 BasicCegarLoop]: 37 mSDtfsCounter, 175 mSDsluCounter, 63 mSDsCounter, 0 mSdLazyCounter, 111 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 175 SdHoareTripleChecker+Valid, 100 SdHoareTripleChecker+Invalid, 118 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 111 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:26,884 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [175 Valid, 100 Invalid, 118 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 111 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:45:26,885 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 73 states. [2022-02-20 23:45:26,886 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 73 to 73. [2022-02-20 23:45:26,886 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:26,886 INFO L82 GeneralOperation]: Start isEquivalent. First operand 73 states. Second operand has 73 states, 50 states have (on average 1.5) internal successors, (75), 72 states have internal predecessors, (75), 0 states have call successors, (0), 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:45:26,886 INFO L74 IsIncluded]: Start isIncluded. First operand 73 states. Second operand has 73 states, 50 states have (on average 1.5) internal successors, (75), 72 states have internal predecessors, (75), 0 states have call successors, (0), 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:45:26,886 INFO L87 Difference]: Start difference. First operand 73 states. Second operand has 73 states, 50 states have (on average 1.5) internal successors, (75), 72 states have internal predecessors, (75), 0 states have call successors, (0), 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:45:26,887 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:26,888 INFO L93 Difference]: Finished difference Result 73 states and 75 transitions. [2022-02-20 23:45:26,888 INFO L276 IsEmpty]: Start isEmpty. Operand 73 states and 75 transitions. [2022-02-20 23:45:26,888 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:26,888 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:26,888 INFO L74 IsIncluded]: Start isIncluded. First operand has 73 states, 50 states have (on average 1.5) internal successors, (75), 72 states have internal predecessors, (75), 0 states have call successors, (0), 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:45:26,888 INFO L87 Difference]: Start difference. First operand has 73 states, 50 states have (on average 1.5) internal successors, (75), 72 states have internal predecessors, (75), 0 states have call successors, (0), 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:45:26,889 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:26,889 INFO L93 Difference]: Finished difference Result 73 states and 75 transitions. [2022-02-20 23:45:26,889 INFO L276 IsEmpty]: Start isEmpty. Operand 73 states and 75 transitions. [2022-02-20 23:45:26,890 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:26,890 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:26,890 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:26,890 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:26,890 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 73 states, 50 states have (on average 1.5) internal successors, (75), 72 states have internal predecessors, (75), 0 states have call successors, (0), 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:45:26,891 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 73 states to 73 states and 75 transitions. [2022-02-20 23:45:26,891 INFO L78 Accepts]: Start accepts. Automaton has 73 states and 75 transitions. Word has length 21 [2022-02-20 23:45:26,891 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:26,891 INFO L470 AbstractCegarLoop]: Abstraction has 73 states and 75 transitions. [2022-02-20 23:45:26,891 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 3.0) internal successors, (21), 8 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:45:26,892 INFO L276 IsEmpty]: Start isEmpty. Operand 73 states and 75 transitions. [2022-02-20 23:45:26,892 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-02-20 23:45:26,892 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:26,892 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:45:26,892 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable9 [2022-02-20 23:45:26,893 INFO L402 AbstractCegarLoop]: === Iteration 11 === Targeting ULTIMATE.startErr24ASSERT_VIOLATIONMEMORY_FREE === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:26,893 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:26,893 INFO L85 PathProgramCache]: Analyzing trace with hash 911932203, now seen corresponding path program 1 times [2022-02-20 23:45:26,893 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:45:26,893 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [182416844] [2022-02-20 23:45:26,893 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:26,893 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:45:26,965 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:27,090 INFO L290 TraceCheckUtils]: 0: Hoare triple {3586#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(14, 2); {3586#true} is VALID [2022-02-20 23:45:27,090 INFO L290 TraceCheckUtils]: 1: Hoare triple {3586#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {3588#(= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1)} is VALID [2022-02-20 23:45:27,097 INFO L290 TraceCheckUtils]: 2: Hoare triple {3588#(= (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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {3589#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:45:27,098 INFO L290 TraceCheckUtils]: 3: Hoare triple {3589#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call append_#t~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L531 {3589#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:45:27,098 INFO L290 TraceCheckUtils]: 4: Hoare triple {3589#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_#t~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L531-1 {3589#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:45:27,099 INFO L290 TraceCheckUtils]: 5: Hoare triple {3589#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} havoc append_#t~mem4#1.base, append_#t~mem4#1.offset; {3589#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:45:27,099 INFO L290 TraceCheckUtils]: 6: Hoare triple {3589#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |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_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L532 {3589#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:45:27,100 INFO L290 TraceCheckUtils]: 7: Hoare triple {3589#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} assume !(append_#t~mem5#1.base != 0 || append_#t~mem5#1.offset != 0);call append_#t~malloc8#1.base, append_#t~malloc8#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite9#1.base, append_#t~ite9#1.offset := append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {3590#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_append_#t~ite9#1.offset| 0))} is VALID [2022-02-20 23:45:27,101 INFO L290 TraceCheckUtils]: 8: Hoare triple {3590#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (= |ULTIMATE.start_append_#t~ite9#1.offset| 0))} SUMMARY for call write~$Pointer$(append_#t~ite9#1.base, append_#t~ite9#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L532-3 {3591#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) (+ |ULTIMATE.start_append_~item~0#1.offset| 4)) 0) (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:45:27,101 INFO L290 TraceCheckUtils]: 9: Hoare triple {3591#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) (+ |ULTIMATE.start_append_~item~0#1.offset| 4)) 0) (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset;havoc append_#t~ite9#1.base, append_#t~ite9#1.offset;havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {3591#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) (+ |ULTIMATE.start_append_~item~0#1.offset| 4)) 0) (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:45:27,104 INFO L290 TraceCheckUtils]: 10: Hoare triple {3591#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) (+ |ULTIMATE.start_append_~item~0#1.offset| 4)) 0) (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |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: L535 {3592#(and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4) 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:45:27,104 INFO L290 TraceCheckUtils]: 11: Hoare triple {3592#(and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4) 0) (= (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; {3592#(and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4) 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:45:27,105 INFO L290 TraceCheckUtils]: 12: Hoare triple {3592#(and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0))} assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647; {3592#(and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4) 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:45:27,105 INFO L290 TraceCheckUtils]: 13: Hoare triple {3592#(and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0))} assume !(0 != main_#t~nondet10#1);havoc main_#t~nondet10#1; {3592#(and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4) 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:45:27,106 INFO L290 TraceCheckUtils]: 14: Hoare triple {3592#(and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4) 0) (= (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~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L540-5 {3592#(and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4) 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:45:27,106 INFO L290 TraceCheckUtils]: 15: Hoare triple {3592#(and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0))} assume main_#t~mem11#1.base != 0 || main_#t~mem11#1.offset != 0;havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {3592#(and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4) 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:45:27,107 INFO L290 TraceCheckUtils]: 16: Hoare triple {3592#(and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4) 0) (= (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~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L544 {3593#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) |ULTIMATE.start_main_#t~mem12#1.base|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_#t~mem12#1.base|) 4) 0))} is VALID [2022-02-20 23:45:27,107 INFO L290 TraceCheckUtils]: 17: Hoare triple {3593#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) |ULTIMATE.start_main_#t~mem12#1.base|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_#t~mem12#1.base|) 4) 0))} SUMMARY for call main_#t~mem13#1.base, main_#t~mem13#1.offset := read~$Pointer$(main_#t~mem12#1.base, main_#t~mem12#1.offset, 4); srcloc: L544-1 {3592#(and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4) 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:45:27,108 INFO L290 TraceCheckUtils]: 18: Hoare triple {3592#(and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4) 0) (= (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~mem13#1.base, main_#t~mem13#1.offset;havoc main_#t~mem12#1.base, main_#t~mem12#1.offset;havoc main_#t~mem13#1.base, main_#t~mem13#1.offset; {3592#(and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4) 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:45:27,109 INFO L290 TraceCheckUtils]: 19: Hoare triple {3592#(and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4) 0) (= (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~mem14#1.base, main_#t~mem14#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L545 {3594#(and (= 0 |ULTIMATE.start_main_#t~mem14#1.offset|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_#t~mem14#1.base|) (+ 4 |ULTIMATE.start_main_#t~mem14#1.offset|)) 0))} is VALID [2022-02-20 23:45:27,109 INFO L290 TraceCheckUtils]: 20: Hoare triple {3594#(and (= 0 |ULTIMATE.start_main_#t~mem14#1.offset|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_#t~mem14#1.base|) (+ 4 |ULTIMATE.start_main_#t~mem14#1.offset|)) 0))} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_#t~mem14#1.base, 4 + main_#t~mem14#1.offset, 4); srcloc: L545-1 {3595#(= |ULTIMATE.start_main_#t~mem15#1.offset| 0)} is VALID [2022-02-20 23:45:27,110 INFO L290 TraceCheckUtils]: 21: Hoare triple {3595#(= |ULTIMATE.start_main_#t~mem15#1.offset| 0)} assume !(0 == main_#t~mem15#1.offset); {3587#false} is VALID [2022-02-20 23:45:27,110 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:45:27,110 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:45:27,110 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [182416844] [2022-02-20 23:45:27,110 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [182416844] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:27,110 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:27,110 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-02-20 23:45:27,111 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1997597054] [2022-02-20 23:45:27,111 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:27,111 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.4444444444444446) internal successors, (22), 10 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:45:27,111 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:27,111 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.4444444444444446) internal successors, (22), 10 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:45:27,131 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:45:27,131 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 23:45:27,131 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:45:27,132 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 23:45:27,132 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=70, Unknown=0, NotChecked=0, Total=90 [2022-02-20 23:45:27,132 INFO L87 Difference]: Start difference. First operand 73 states and 75 transitions. Second operand has 10 states, 9 states have (on average 2.4444444444444446) internal successors, (22), 10 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:45:28,093 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:28,093 INFO L93 Difference]: Finished difference Result 139 states and 144 transitions. [2022-02-20 23:45:28,093 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-02-20 23:45:28,093 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.4444444444444446) internal successors, (22), 10 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:45:28,093 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:28,093 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.4444444444444446) internal successors, (22), 10 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:45:28,094 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 140 transitions. [2022-02-20 23:45:28,095 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.4444444444444446) internal successors, (22), 10 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:45:28,096 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 140 transitions. [2022-02-20 23:45:28,096 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states and 140 transitions. [2022-02-20 23:45:28,206 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 140 edges. 140 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:28,207 INFO L225 Difference]: With dead ends: 139 [2022-02-20 23:45:28,207 INFO L226 Difference]: Without dead ends: 139 [2022-02-20 23:45:28,208 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 22 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 71 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=135, Invalid=371, Unknown=0, NotChecked=0, Total=506 [2022-02-20 23:45:28,208 INFO L933 BasicCegarLoop]: 31 mSDtfsCounter, 246 mSDsluCounter, 173 mSDsCounter, 0 mSdLazyCounter, 337 mSolverCounterSat, 28 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 246 SdHoareTripleChecker+Valid, 204 SdHoareTripleChecker+Invalid, 365 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 28 IncrementalHoareTripleChecker+Valid, 337 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:28,208 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [246 Valid, 204 Invalid, 365 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [28 Valid, 337 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-02-20 23:45:28,209 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 139 states. [2022-02-20 23:45:28,210 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 139 to 87. [2022-02-20 23:45:28,210 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:28,210 INFO L82 GeneralOperation]: Start isEquivalent. First operand 139 states. Second operand has 87 states, 64 states have (on average 1.40625) internal successors, (90), 86 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:45:28,210 INFO L74 IsIncluded]: Start isIncluded. First operand 139 states. Second operand has 87 states, 64 states have (on average 1.40625) internal successors, (90), 86 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:45:28,211 INFO L87 Difference]: Start difference. First operand 139 states. Second operand has 87 states, 64 states have (on average 1.40625) internal successors, (90), 86 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:45:28,212 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:28,212 INFO L93 Difference]: Finished difference Result 139 states and 144 transitions. [2022-02-20 23:45:28,212 INFO L276 IsEmpty]: Start isEmpty. Operand 139 states and 144 transitions. [2022-02-20 23:45:28,213 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:28,213 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:28,213 INFO L74 IsIncluded]: Start isIncluded. First operand has 87 states, 64 states have (on average 1.40625) internal successors, (90), 86 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 139 states. [2022-02-20 23:45:28,213 INFO L87 Difference]: Start difference. First operand has 87 states, 64 states have (on average 1.40625) internal successors, (90), 86 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 139 states. [2022-02-20 23:45:28,215 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:28,215 INFO L93 Difference]: Finished difference Result 139 states and 144 transitions. [2022-02-20 23:45:28,215 INFO L276 IsEmpty]: Start isEmpty. Operand 139 states and 144 transitions. [2022-02-20 23:45:28,215 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:28,215 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:28,215 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:28,216 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:28,216 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 87 states, 64 states have (on average 1.40625) internal successors, (90), 86 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:45:28,217 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 87 states to 87 states and 90 transitions. [2022-02-20 23:45:28,217 INFO L78 Accepts]: Start accepts. Automaton has 87 states and 90 transitions. Word has length 22 [2022-02-20 23:45:28,217 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:28,217 INFO L470 AbstractCegarLoop]: Abstraction has 87 states and 90 transitions. [2022-02-20 23:45:28,217 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.4444444444444446) internal successors, (22), 10 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:45:28,218 INFO L276 IsEmpty]: Start isEmpty. Operand 87 states and 90 transitions. [2022-02-20 23:45:28,218 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-02-20 23:45:28,218 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:28,218 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:45:28,218 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable10 [2022-02-20 23:45:28,218 INFO L402 AbstractCegarLoop]: === Iteration 12 === Targeting ULTIMATE.startErr8REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:28,219 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:28,219 INFO L85 PathProgramCache]: Analyzing trace with hash -428723026, now seen corresponding path program 1 times [2022-02-20 23:45:28,219 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:45:28,219 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [350252050] [2022-02-20 23:45:28,219 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:28,219 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:45:28,245 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:28,317 INFO L290 TraceCheckUtils]: 0: Hoare triple {4128#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(14, 2); {4128#true} is VALID [2022-02-20 23:45:28,317 INFO L290 TraceCheckUtils]: 1: Hoare triple {4128#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {4128#true} is VALID [2022-02-20 23:45:28,318 INFO L290 TraceCheckUtils]: 2: Hoare triple {4128#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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {4130#(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:45:28,318 INFO L290 TraceCheckUtils]: 3: Hoare triple {4130#(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~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L531 {4130#(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:45:28,319 INFO L290 TraceCheckUtils]: 4: Hoare triple {4130#(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~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L531-1 {4130#(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:45:28,319 INFO L290 TraceCheckUtils]: 5: Hoare triple {4130#(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~mem4#1.base, append_#t~mem4#1.offset; {4130#(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:45:28,320 INFO L290 TraceCheckUtils]: 6: Hoare triple {4130#(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_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L532 {4130#(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:45:28,320 INFO L290 TraceCheckUtils]: 7: Hoare triple {4130#(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~mem5#1.base != 0 || append_#t~mem5#1.offset != 0);call append_#t~malloc8#1.base, append_#t~malloc8#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite9#1.base, append_#t~ite9#1.offset := append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {4130#(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:45:28,321 INFO L290 TraceCheckUtils]: 8: Hoare triple {4130#(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~ite9#1.base, append_#t~ite9#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L532-3 {4131#(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:45:28,321 INFO L290 TraceCheckUtils]: 9: Hoare triple {4131#(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~mem5#1.base, append_#t~mem5#1.offset;havoc append_#t~ite9#1.base, append_#t~ite9#1.offset;havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {4131#(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:45:28,322 INFO L290 TraceCheckUtils]: 10: Hoare triple {4131#(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: L535 {4132#(= (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:45:28,322 INFO L290 TraceCheckUtils]: 11: Hoare triple {4132#(= (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; {4132#(= (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:45:28,323 INFO L290 TraceCheckUtils]: 12: Hoare triple {4132#(= (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~nondet10#1 && main_#t~nondet10#1 <= 2147483647; {4132#(= (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:45:28,323 INFO L290 TraceCheckUtils]: 13: Hoare triple {4132#(= (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~nondet10#1);havoc main_#t~nondet10#1; {4132#(= (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:45:28,324 INFO L290 TraceCheckUtils]: 14: Hoare triple {4132#(= (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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {4133#(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:45:28,324 INFO L290 TraceCheckUtils]: 15: Hoare triple {4133#(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~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L531 {4134#(or (= (select |#valid| |ULTIMATE.start_append_#t~mem4#1.base|) 1) (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_append_#t~mem4#1.base|))} is VALID [2022-02-20 23:45:28,326 INFO L290 TraceCheckUtils]: 16: Hoare triple {4134#(or (= (select |#valid| |ULTIMATE.start_append_#t~mem4#1.base|) 1) (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_append_#t~mem4#1.base|))} SUMMARY for call write~$Pointer$(append_#t~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L531-1 {4135#(= (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:45:28,326 INFO L290 TraceCheckUtils]: 17: Hoare triple {4135#(= (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~mem4#1.base, append_#t~mem4#1.offset; {4135#(= (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:45:28,327 INFO L290 TraceCheckUtils]: 18: Hoare triple {4135#(= (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~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L532 {4135#(= (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:45:28,327 INFO L290 TraceCheckUtils]: 19: Hoare triple {4135#(= (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~mem5#1.base != 0 || append_#t~mem5#1.offset != 0; {4135#(= (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:45:28,328 INFO L290 TraceCheckUtils]: 20: Hoare triple {4135#(= (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: L533 {4136#(= (select |#valid| |ULTIMATE.start_append_#t~mem6#1.base|) 1)} is VALID [2022-02-20 23:45:28,328 INFO L290 TraceCheckUtils]: 21: Hoare triple {4136#(= (select |#valid| |ULTIMATE.start_append_#t~mem6#1.base|) 1)} assume !(1 == #valid[append_#t~mem6#1.base]); {4129#false} is VALID [2022-02-20 23:45:28,328 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:45:28,328 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:45:28,329 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [350252050] [2022-02-20 23:45:28,329 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [350252050] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:45:28,329 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2050454854] [2022-02-20 23:45:28,329 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:28,329 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:45:28,329 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:45:28,331 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:45:28,332 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:45:28,425 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:28,437 INFO L263 TraceCheckSpWp]: Trace formula consists of 211 conjuncts, 38 conjunts are in the unsatisfiable core [2022-02-20 23:45:28,463 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:28,467 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:28,688 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:45:28,786 INFO L356 Elim1Store]: treesize reduction 30, result has 37.5 percent of original size [2022-02-20 23:45:28,786 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:45:28,897 INFO L356 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2022-02-20 23:45:28,897 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:45:29,083 INFO L356 Elim1Store]: treesize reduction 11, result has 8.3 percent of original size [2022-02-20 23:45:29,083 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:45:29,093 INFO L290 TraceCheckUtils]: 0: Hoare triple {4128#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(14, 2); {4128#true} is VALID [2022-02-20 23:45:29,093 INFO L290 TraceCheckUtils]: 1: Hoare triple {4128#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {4143#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} is VALID [2022-02-20 23:45:29,094 INFO L290 TraceCheckUtils]: 2: Hoare triple {4143#(= |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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {4147#(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:45:29,094 INFO L290 TraceCheckUtils]: 3: Hoare triple {4147#(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~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L531 {4147#(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:45:29,095 INFO L290 TraceCheckUtils]: 4: Hoare triple {4147#(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~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L531-1 {4147#(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:45:29,095 INFO L290 TraceCheckUtils]: 5: Hoare triple {4147#(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~mem4#1.base, append_#t~mem4#1.offset; {4147#(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:45:29,096 INFO L290 TraceCheckUtils]: 6: Hoare triple {4147#(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_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L532 {4147#(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:45:29,096 INFO L290 TraceCheckUtils]: 7: Hoare triple {4147#(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~mem5#1.base != 0 || append_#t~mem5#1.offset != 0);call append_#t~malloc8#1.base, append_#t~malloc8#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite9#1.base, append_#t~ite9#1.offset := append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {4147#(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:45:29,097 INFO L290 TraceCheckUtils]: 8: Hoare triple {4147#(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~ite9#1.base, append_#t~ite9#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L532-3 {4166#(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:45:29,097 INFO L290 TraceCheckUtils]: 9: Hoare triple {4166#(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~mem5#1.base, append_#t~mem5#1.offset;havoc append_#t~ite9#1.base, append_#t~ite9#1.offset;havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {4166#(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:45:29,098 INFO L290 TraceCheckUtils]: 10: Hoare triple {4166#(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: L535 {4173#(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:45:29,099 INFO L290 TraceCheckUtils]: 11: Hoare triple {4173#(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; {4173#(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:45:29,099 INFO L290 TraceCheckUtils]: 12: Hoare triple {4173#(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~nondet10#1 && main_#t~nondet10#1 <= 2147483647; {4173#(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:45:29,100 INFO L290 TraceCheckUtils]: 13: Hoare triple {4173#(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~nondet10#1);havoc main_#t~nondet10#1; {4173#(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:45:29,100 INFO L290 TraceCheckUtils]: 14: Hoare triple {4173#(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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {4186#(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:45:29,104 INFO L290 TraceCheckUtils]: 15: Hoare triple {4186#(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~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L531 {4190#(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~mem4#1.base|)))} is VALID [2022-02-20 23:45:29,105 INFO L290 TraceCheckUtils]: 16: Hoare triple {4190#(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~mem4#1.base|)))} SUMMARY for call write~$Pointer$(append_#t~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L531-1 {4194#(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:45:29,106 INFO L290 TraceCheckUtils]: 17: Hoare triple {4194#(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~mem4#1.base, append_#t~mem4#1.offset; {4194#(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:45:29,107 INFO L290 TraceCheckUtils]: 18: Hoare triple {4194#(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~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L532 {4194#(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:45:29,107 INFO L290 TraceCheckUtils]: 19: Hoare triple {4194#(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~mem5#1.base != 0 || append_#t~mem5#1.offset != 0; {4194#(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:45:29,108 INFO L290 TraceCheckUtils]: 20: Hoare triple {4194#(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: L533 {4136#(= (select |#valid| |ULTIMATE.start_append_#t~mem6#1.base|) 1)} is VALID [2022-02-20 23:45:29,108 INFO L290 TraceCheckUtils]: 21: Hoare triple {4136#(= (select |#valid| |ULTIMATE.start_append_#t~mem6#1.base|) 1)} assume !(1 == #valid[append_#t~mem6#1.base]); {4129#false} is VALID [2022-02-20 23:45:29,109 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:45:29,109 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:45:29,405 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:45:30,114 INFO L356 Elim1Store]: treesize reduction 10, result has 60.0 percent of original size [2022-02-20 23:45:30,114 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:45:30,268 INFO L290 TraceCheckUtils]: 21: Hoare triple {4136#(= (select |#valid| |ULTIMATE.start_append_#t~mem6#1.base|) 1)} assume !(1 == #valid[append_#t~mem6#1.base]); {4129#false} is VALID [2022-02-20 23:45:30,268 INFO L290 TraceCheckUtils]: 20: Hoare triple {4135#(= (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: L533 {4136#(= (select |#valid| |ULTIMATE.start_append_#t~mem6#1.base|) 1)} is VALID [2022-02-20 23:45:30,269 INFO L290 TraceCheckUtils]: 19: Hoare triple {4135#(= (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~mem5#1.base != 0 || append_#t~mem5#1.offset != 0; {4135#(= (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:45:30,269 INFO L290 TraceCheckUtils]: 18: Hoare triple {4135#(= (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~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L532 {4135#(= (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:45:30,269 INFO L290 TraceCheckUtils]: 17: Hoare triple {4135#(= (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~mem4#1.base, append_#t~mem4#1.offset; {4135#(= (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:45:30,270 INFO L290 TraceCheckUtils]: 16: Hoare triple {4225#(= (select |#valid| |ULTIMATE.start_append_#t~mem4#1.base|) 1)} SUMMARY for call write~$Pointer$(append_#t~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L531-1 {4135#(= (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:45:30,271 INFO L290 TraceCheckUtils]: 15: Hoare triple {4229#(= (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~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L531 {4225#(= (select |#valid| |ULTIMATE.start_append_#t~mem4#1.base|) 1)} is VALID [2022-02-20 23:45:30,271 INFO L290 TraceCheckUtils]: 14: Hoare triple {4233#(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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {4229#(= (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:45:30,272 INFO L290 TraceCheckUtils]: 13: Hoare triple {4233#(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~nondet10#1);havoc main_#t~nondet10#1; {4233#(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:45:30,273 INFO L290 TraceCheckUtils]: 12: Hoare triple {4233#(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~nondet10#1 && main_#t~nondet10#1 <= 2147483647; {4233#(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:45:30,273 INFO L290 TraceCheckUtils]: 11: Hoare triple {4233#(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; {4233#(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:45:30,274 INFO L290 TraceCheckUtils]: 10: Hoare triple {4246#(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: L535 {4233#(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:45:30,277 INFO L290 TraceCheckUtils]: 9: Hoare triple {4246#(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~mem5#1.base, append_#t~mem5#1.offset;havoc append_#t~ite9#1.base, append_#t~ite9#1.offset;havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {4246#(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:45:30,278 INFO L290 TraceCheckUtils]: 8: Hoare triple {4130#(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~ite9#1.base, append_#t~ite9#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L532-3 {4246#(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:45:30,279 INFO L290 TraceCheckUtils]: 7: Hoare triple {4130#(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~mem5#1.base != 0 || append_#t~mem5#1.offset != 0);call append_#t~malloc8#1.base, append_#t~malloc8#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite9#1.base, append_#t~ite9#1.offset := append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {4130#(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:45:30,279 INFO L290 TraceCheckUtils]: 6: Hoare triple {4130#(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_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L532 {4130#(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:45:30,280 INFO L290 TraceCheckUtils]: 5: Hoare triple {4130#(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~mem4#1.base, append_#t~mem4#1.offset; {4130#(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:45:30,280 INFO L290 TraceCheckUtils]: 4: Hoare triple {4130#(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~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L531-1 {4130#(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:45:30,281 INFO L290 TraceCheckUtils]: 3: Hoare triple {4130#(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~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L531 {4130#(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:45:30,281 INFO L290 TraceCheckUtils]: 2: Hoare triple {4128#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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {4130#(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:45:30,281 INFO L290 TraceCheckUtils]: 1: Hoare triple {4128#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {4128#true} is VALID [2022-02-20 23:45:30,282 INFO L290 TraceCheckUtils]: 0: Hoare triple {4128#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(14, 2); {4128#true} is VALID [2022-02-20 23:45:30,282 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:45:30,282 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2050454854] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:45:30,282 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:45:30,282 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 9, 8] total 19 [2022-02-20 23:45:30,282 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2103926694] [2022-02-20 23:45:30,283 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:45:30,283 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:45:30,283 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:30,283 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:45:30,342 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:45:30,342 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 20 states [2022-02-20 23:45:30,342 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:45:30,343 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2022-02-20 23:45:30,343 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=57, Invalid=323, Unknown=0, NotChecked=0, Total=380 [2022-02-20 23:45:30,344 INFO L87 Difference]: Start difference. First operand 87 states and 90 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:45:31,211 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:31,211 INFO L93 Difference]: Finished difference Result 158 states and 165 transitions. [2022-02-20 23:45:31,211 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-02-20 23:45:31,211 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:45:31,211 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:31,211 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:45:31,213 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 166 transitions. [2022-02-20 23:45:31,213 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:45:31,214 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 166 transitions. [2022-02-20 23:45:31,214 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 166 transitions. [2022-02-20 23:45:31,351 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:45:31,352 INFO L225 Difference]: With dead ends: 158 [2022-02-20 23:45:31,353 INFO L226 Difference]: Without dead ends: 158 [2022-02-20 23:45:31,353 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 60 GetRequests, 33 SyntacticMatches, 1 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 141 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=140, Invalid=616, Unknown=0, NotChecked=0, Total=756 [2022-02-20 23:45:31,353 INFO L933 BasicCegarLoop]: 42 mSDtfsCounter, 232 mSDsluCounter, 315 mSDsCounter, 0 mSdLazyCounter, 365 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 232 SdHoareTripleChecker+Valid, 357 SdHoareTripleChecker+Invalid, 524 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 365 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 153 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:31,354 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [232 Valid, 357 Invalid, 524 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 365 Invalid, 0 Unknown, 153 Unchecked, 0.3s Time] [2022-02-20 23:45:31,354 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 158 states. [2022-02-20 23:45:31,355 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 158 to 95. [2022-02-20 23:45:31,356 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:31,356 INFO L82 GeneralOperation]: Start isEquivalent. First operand 158 states. Second operand has 95 states, 72 states have (on average 1.3888888888888888) internal successors, (100), 94 states have internal predecessors, (100), 0 states have call successors, (0), 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:45:31,356 INFO L74 IsIncluded]: Start isIncluded. First operand 158 states. Second operand has 95 states, 72 states have (on average 1.3888888888888888) internal successors, (100), 94 states have internal predecessors, (100), 0 states have call successors, (0), 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:45:31,356 INFO L87 Difference]: Start difference. First operand 158 states. Second operand has 95 states, 72 states have (on average 1.3888888888888888) internal successors, (100), 94 states have internal predecessors, (100), 0 states have call successors, (0), 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:45:31,358 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:31,358 INFO L93 Difference]: Finished difference Result 158 states and 165 transitions. [2022-02-20 23:45:31,358 INFO L276 IsEmpty]: Start isEmpty. Operand 158 states and 165 transitions. [2022-02-20 23:45:31,359 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:31,359 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:31,359 INFO L74 IsIncluded]: Start isIncluded. First operand has 95 states, 72 states have (on average 1.3888888888888888) internal successors, (100), 94 states have internal predecessors, (100), 0 states have call successors, (0), 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 158 states. [2022-02-20 23:45:31,359 INFO L87 Difference]: Start difference. First operand has 95 states, 72 states have (on average 1.3888888888888888) internal successors, (100), 94 states have internal predecessors, (100), 0 states have call successors, (0), 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 158 states. [2022-02-20 23:45:31,361 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:31,361 INFO L93 Difference]: Finished difference Result 158 states and 165 transitions. [2022-02-20 23:45:31,361 INFO L276 IsEmpty]: Start isEmpty. Operand 158 states and 165 transitions. [2022-02-20 23:45:31,361 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:31,362 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:31,362 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:31,362 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:31,362 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 95 states, 72 states have (on average 1.3888888888888888) internal successors, (100), 94 states have internal predecessors, (100), 0 states have call successors, (0), 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:45:31,363 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 95 states to 95 states and 100 transitions. [2022-02-20 23:45:31,363 INFO L78 Accepts]: Start accepts. Automaton has 95 states and 100 transitions. Word has length 22 [2022-02-20 23:45:31,363 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:31,363 INFO L470 AbstractCegarLoop]: Abstraction has 95 states and 100 transitions. [2022-02-20 23:45:31,364 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:45:31,364 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 100 transitions. [2022-02-20 23:45:31,364 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-02-20 23:45:31,364 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:31,364 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:45:31,387 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:45:31,587 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:45:31,587 INFO L402 AbstractCegarLoop]: === Iteration 13 === Targeting ULTIMATE.startErr9REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:31,587 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:31,588 INFO L85 PathProgramCache]: Analyzing trace with hash -428723025, now seen corresponding path program 1 times [2022-02-20 23:45:31,588 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:45:31,588 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1679851553] [2022-02-20 23:45:31,588 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:31,588 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:45:31,626 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:31,739 INFO L290 TraceCheckUtils]: 0: Hoare triple {4863#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(14, 2); {4863#true} is VALID [2022-02-20 23:45:31,740 INFO L290 TraceCheckUtils]: 1: Hoare triple {4863#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {4863#true} is VALID [2022-02-20 23:45:31,740 INFO L290 TraceCheckUtils]: 2: Hoare triple {4863#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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {4865#(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:45:31,741 INFO L290 TraceCheckUtils]: 3: Hoare triple {4865#(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~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L531 {4865#(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:45:31,741 INFO L290 TraceCheckUtils]: 4: Hoare triple {4865#(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~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L531-1 {4865#(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:45:31,742 INFO L290 TraceCheckUtils]: 5: Hoare triple {4865#(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~mem4#1.base, append_#t~mem4#1.offset; {4865#(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:45:31,742 INFO L290 TraceCheckUtils]: 6: Hoare triple {4865#(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_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L532 {4865#(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:45:31,743 INFO L290 TraceCheckUtils]: 7: Hoare triple {4865#(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~mem5#1.base != 0 || append_#t~mem5#1.offset != 0);call append_#t~malloc8#1.base, append_#t~malloc8#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite9#1.base, append_#t~ite9#1.offset := append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {4865#(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:45:31,744 INFO L290 TraceCheckUtils]: 8: Hoare triple {4865#(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~ite9#1.base, append_#t~ite9#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L532-3 {4866#(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:45:31,744 INFO L290 TraceCheckUtils]: 9: Hoare triple {4866#(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~mem5#1.base, append_#t~mem5#1.offset;havoc append_#t~ite9#1.base, append_#t~ite9#1.offset;havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {4866#(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:45:31,745 INFO L290 TraceCheckUtils]: 10: Hoare triple {4866#(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: L535 {4867#(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:45:31,746 INFO L290 TraceCheckUtils]: 11: Hoare triple {4867#(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; {4867#(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:45:31,746 INFO L290 TraceCheckUtils]: 12: Hoare triple {4867#(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~nondet10#1 && main_#t~nondet10#1 <= 2147483647; {4867#(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:45:31,747 INFO L290 TraceCheckUtils]: 13: Hoare triple {4867#(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~nondet10#1);havoc main_#t~nondet10#1; {4867#(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:45:31,747 INFO L290 TraceCheckUtils]: 14: Hoare triple {4867#(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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {4868#(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:45:31,748 INFO L290 TraceCheckUtils]: 15: Hoare triple {4868#(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~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L531 {4869#(and (= |ULTIMATE.start_append_#t~mem4#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_append_#t~mem4#1.base|)))} is VALID [2022-02-20 23:45:31,749 INFO L290 TraceCheckUtils]: 16: Hoare triple {4869#(and (= |ULTIMATE.start_append_#t~mem4#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_append_#t~mem4#1.base|)))} SUMMARY for call write~$Pointer$(append_#t~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L531-1 {4870#(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:45:31,750 INFO L290 TraceCheckUtils]: 17: Hoare triple {4870#(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~mem4#1.base, append_#t~mem4#1.offset; {4870#(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:45:31,750 INFO L290 TraceCheckUtils]: 18: Hoare triple {4870#(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~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L532 {4870#(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:45:31,751 INFO L290 TraceCheckUtils]: 19: Hoare triple {4870#(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~mem5#1.base != 0 || append_#t~mem5#1.offset != 0; {4870#(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:45:31,751 INFO L290 TraceCheckUtils]: 20: Hoare triple {4870#(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: L533 {4871#(and (<= 8 (select |#length| |ULTIMATE.start_append_#t~mem6#1.base|)) (= |ULTIMATE.start_append_#t~mem6#1.offset| 0))} is VALID [2022-02-20 23:45:31,752 INFO L290 TraceCheckUtils]: 21: Hoare triple {4871#(and (<= 8 (select |#length| |ULTIMATE.start_append_#t~mem6#1.base|)) (= |ULTIMATE.start_append_#t~mem6#1.offset| 0))} assume !(4 + (4 + append_#t~mem6#1.offset) <= #length[append_#t~mem6#1.base] && 0 <= 4 + append_#t~mem6#1.offset); {4864#false} is VALID [2022-02-20 23:45:31,752 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:45:31,752 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:45:31,752 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1679851553] [2022-02-20 23:45:31,752 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1679851553] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:45:31,752 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [311353224] [2022-02-20 23:45:31,753 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:31,753 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:45:31,753 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:45:31,754 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:45:31,755 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:45:31,836 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:31,838 INFO L263 TraceCheckSpWp]: Trace formula consists of 211 conjuncts, 55 conjunts are in the unsatisfiable core [2022-02-20 23:45:31,849 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:31,850 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:32,008 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:45:32,014 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:45:32,100 INFO L356 Elim1Store]: treesize reduction 19, result has 47.2 percent of original size [2022-02-20 23:45:32,101 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:45:32,128 INFO L356 Elim1Store]: treesize reduction 4, result has 66.7 percent of original size [2022-02-20 23:45:32,129 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:45:32,261 INFO L356 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2022-02-20 23:45:32,261 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:45:32,280 INFO L356 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2022-02-20 23:45:32,281 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:45:32,644 INFO L356 Elim1Store]: treesize reduction 11, result has 8.3 percent of original size [2022-02-20 23:45:32,645 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:45:32,675 INFO L356 Elim1Store]: treesize reduction 11, result has 8.3 percent of original size [2022-02-20 23:45:32,675 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:45:32,684 INFO L290 TraceCheckUtils]: 0: Hoare triple {4863#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(14, 2); {4863#true} is VALID [2022-02-20 23:45:32,685 INFO L290 TraceCheckUtils]: 1: Hoare triple {4863#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {4878#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} is VALID [2022-02-20 23:45:32,685 INFO L290 TraceCheckUtils]: 2: Hoare triple {4878#(= |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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {4882#(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:45:32,686 INFO L290 TraceCheckUtils]: 3: Hoare triple {4882#(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~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L531 {4882#(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:45:32,686 INFO L290 TraceCheckUtils]: 4: Hoare triple {4882#(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~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L531-1 {4882#(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:45:32,687 INFO L290 TraceCheckUtils]: 5: Hoare triple {4882#(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~mem4#1.base, append_#t~mem4#1.offset; {4882#(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:45:32,687 INFO L290 TraceCheckUtils]: 6: Hoare triple {4882#(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_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L532 {4882#(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:45:32,688 INFO L290 TraceCheckUtils]: 7: Hoare triple {4882#(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~mem5#1.base != 0 || append_#t~mem5#1.offset != 0);call append_#t~malloc8#1.base, append_#t~malloc8#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite9#1.base, append_#t~ite9#1.offset := append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {4882#(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:45:32,688 INFO L290 TraceCheckUtils]: 8: Hoare triple {4882#(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~ite9#1.base, append_#t~ite9#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L532-3 {4901#(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:45:32,689 INFO L290 TraceCheckUtils]: 9: Hoare triple {4901#(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~mem5#1.base, append_#t~mem5#1.offset;havoc append_#t~ite9#1.base, append_#t~ite9#1.offset;havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {4901#(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:45:32,690 INFO L290 TraceCheckUtils]: 10: Hoare triple {4901#(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: L535 {4908#(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:45:32,691 INFO L290 TraceCheckUtils]: 11: Hoare triple {4908#(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; {4908#(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:45:32,693 INFO L290 TraceCheckUtils]: 12: Hoare triple {4908#(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~nondet10#1 && main_#t~nondet10#1 <= 2147483647; {4908#(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:45:32,694 INFO L290 TraceCheckUtils]: 13: Hoare triple {4908#(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~nondet10#1);havoc main_#t~nondet10#1; {4908#(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:45:32,695 INFO L290 TraceCheckUtils]: 14: Hoare triple {4908#(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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {4921#(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:45:32,697 INFO L290 TraceCheckUtils]: 15: Hoare triple {4921#(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~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L531 {4925#(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$.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~mem4#1.base|) (= |ULTIMATE.start_append_#t~mem4#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) 0))))} is VALID [2022-02-20 23:45:32,698 INFO L290 TraceCheckUtils]: 16: Hoare triple {4925#(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$.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~mem4#1.base|) (= |ULTIMATE.start_append_#t~mem4#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) 0))))} SUMMARY for call write~$Pointer$(append_#t~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L531-1 {4929#(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:45:32,699 INFO L290 TraceCheckUtils]: 17: Hoare triple {4929#(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~mem4#1.base, append_#t~mem4#1.offset; {4929#(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:45:32,701 INFO L290 TraceCheckUtils]: 18: Hoare triple {4929#(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~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L532 {4929#(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:45:32,704 INFO L290 TraceCheckUtils]: 19: Hoare triple {4929#(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~mem5#1.base != 0 || append_#t~mem5#1.offset != 0; {4929#(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:45:32,705 INFO L290 TraceCheckUtils]: 20: Hoare triple {4929#(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: L533 {4871#(and (<= 8 (select |#length| |ULTIMATE.start_append_#t~mem6#1.base|)) (= |ULTIMATE.start_append_#t~mem6#1.offset| 0))} is VALID [2022-02-20 23:45:32,706 INFO L290 TraceCheckUtils]: 21: Hoare triple {4871#(and (<= 8 (select |#length| |ULTIMATE.start_append_#t~mem6#1.base|)) (= |ULTIMATE.start_append_#t~mem6#1.offset| 0))} assume !(4 + (4 + append_#t~mem6#1.offset) <= #length[append_#t~mem6#1.base] && 0 <= 4 + append_#t~mem6#1.offset); {4864#false} is VALID [2022-02-20 23:45:32,706 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:45:32,706 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:45:33,149 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:45:33,166 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:45:33,424 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:45:33,451 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:45:33,526 INFO L290 TraceCheckUtils]: 21: Hoare triple {4945#(and (<= 0 (+ |ULTIMATE.start_append_#t~mem6#1.offset| 4)) (<= (+ |ULTIMATE.start_append_#t~mem6#1.offset| 8) (select |#length| |ULTIMATE.start_append_#t~mem6#1.base|)))} assume !(4 + (4 + append_#t~mem6#1.offset) <= #length[append_#t~mem6#1.base] && 0 <= 4 + append_#t~mem6#1.offset); {4864#false} is VALID [2022-02-20 23:45:33,527 INFO L290 TraceCheckUtils]: 20: Hoare triple {4949#(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: L533 {4945#(and (<= 0 (+ |ULTIMATE.start_append_#t~mem6#1.offset| 4)) (<= (+ |ULTIMATE.start_append_#t~mem6#1.offset| 8) (select |#length| |ULTIMATE.start_append_#t~mem6#1.base|)))} is VALID [2022-02-20 23:45:33,527 INFO L290 TraceCheckUtils]: 19: Hoare triple {4949#(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~mem5#1.base != 0 || append_#t~mem5#1.offset != 0; {4949#(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:45:33,528 INFO L290 TraceCheckUtils]: 18: Hoare triple {4949#(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~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L532 {4949#(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:45:33,528 INFO L290 TraceCheckUtils]: 17: Hoare triple {4949#(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~mem4#1.base, append_#t~mem4#1.offset; {4949#(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:45:33,529 INFO L290 TraceCheckUtils]: 16: Hoare triple {4962#(and (<= (+ |ULTIMATE.start_append_#t~mem4#1.offset| 8) (select |#length| |ULTIMATE.start_append_#t~mem4#1.base|)) (<= 0 (+ |ULTIMATE.start_append_#t~mem4#1.offset| 4)))} SUMMARY for call write~$Pointer$(append_#t~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L531-1 {4949#(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:45:33,530 INFO L290 TraceCheckUtils]: 15: Hoare triple {4966#(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~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L531 {4962#(and (<= (+ |ULTIMATE.start_append_#t~mem4#1.offset| 8) (select |#length| |ULTIMATE.start_append_#t~mem4#1.base|)) (<= 0 (+ |ULTIMATE.start_append_#t~mem4#1.offset| 4)))} is VALID [2022-02-20 23:45:33,531 INFO L290 TraceCheckUtils]: 14: Hoare triple {4970#(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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {4966#(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:45:33,532 INFO L290 TraceCheckUtils]: 13: Hoare triple {4970#(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~nondet10#1);havoc main_#t~nondet10#1; {4970#(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:45:33,533 INFO L290 TraceCheckUtils]: 12: Hoare triple {4970#(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~nondet10#1 && main_#t~nondet10#1 <= 2147483647; {4970#(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:45:33,533 INFO L290 TraceCheckUtils]: 11: Hoare triple {4970#(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; {4970#(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:45:33,535 INFO L290 TraceCheckUtils]: 10: Hoare triple {4983#(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: L535 {4970#(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:45:33,535 INFO L290 TraceCheckUtils]: 9: Hoare triple {4983#(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~mem5#1.base, append_#t~mem5#1.offset;havoc append_#t~ite9#1.base, append_#t~ite9#1.offset;havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {4983#(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:45:33,536 INFO L290 TraceCheckUtils]: 8: Hoare triple {4990#(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~ite9#1.base, append_#t~ite9#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L532-3 {4983#(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:45:33,537 INFO L290 TraceCheckUtils]: 7: Hoare triple {4990#(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~mem5#1.base != 0 || append_#t~mem5#1.offset != 0);call append_#t~malloc8#1.base, append_#t~malloc8#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite9#1.base, append_#t~ite9#1.offset := append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {4990#(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:45:33,537 INFO L290 TraceCheckUtils]: 6: Hoare triple {4990#(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_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L532 {4990#(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:45:33,538 INFO L290 TraceCheckUtils]: 5: Hoare triple {4990#(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~mem4#1.base, append_#t~mem4#1.offset; {4990#(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:45:33,538 INFO L290 TraceCheckUtils]: 4: Hoare triple {4990#(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~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L531-1 {4990#(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:45:33,539 INFO L290 TraceCheckUtils]: 3: Hoare triple {4990#(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~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L531 {4990#(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:45:33,539 INFO L290 TraceCheckUtils]: 2: Hoare triple {4863#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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {4990#(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:45:33,539 INFO L290 TraceCheckUtils]: 1: Hoare triple {4863#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {4863#true} is VALID [2022-02-20 23:45:33,540 INFO L290 TraceCheckUtils]: 0: Hoare triple {4863#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(14, 2); {4863#true} is VALID [2022-02-20 23:45:33,540 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:45:33,540 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [311353224] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:45:33,540 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:45:33,540 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 9, 8] total 22 [2022-02-20 23:45:33,541 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [373579965] [2022-02-20 23:45:33,541 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:45:33,541 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:45:33,541 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:33,541 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:45:33,603 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:45:33,603 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 23 states [2022-02-20 23:45:33,603 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:45:33,604 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2022-02-20 23:45:33,604 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=70, Invalid=436, Unknown=0, NotChecked=0, Total=506 [2022-02-20 23:45:33,604 INFO L87 Difference]: Start difference. First operand 95 states and 100 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:45:35,123 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:35,123 INFO L93 Difference]: Finished difference Result 191 states and 199 transitions. [2022-02-20 23:45:35,123 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-02-20 23:45:35,123 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:45:35,124 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:35,124 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:45:35,125 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 200 transitions. [2022-02-20 23:45:35,125 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:45:35,126 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 200 transitions. [2022-02-20 23:45:35,126 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 22 states and 200 transitions. [2022-02-20 23:45:35,281 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 200 edges. 200 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:35,283 INFO L225 Difference]: With dead ends: 191 [2022-02-20 23:45:35,283 INFO L226 Difference]: Without dead ends: 191 [2022-02-20 23:45:35,284 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 63 GetRequests, 30 SyntacticMatches, 0 SemanticMatches, 33 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 210 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=199, Invalid=991, Unknown=0, NotChecked=0, Total=1190 [2022-02-20 23:45:35,284 INFO L933 BasicCegarLoop]: 56 mSDtfsCounter, 265 mSDsluCounter, 630 mSDsCounter, 0 mSdLazyCounter, 459 mSolverCounterSat, 12 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 265 SdHoareTripleChecker+Valid, 686 SdHoareTripleChecker+Invalid, 672 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 12 IncrementalHoareTripleChecker+Valid, 459 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 201 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:35,284 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [265 Valid, 686 Invalid, 672 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [12 Valid, 459 Invalid, 0 Unknown, 201 Unchecked, 0.4s Time] [2022-02-20 23:45:35,285 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 191 states. [2022-02-20 23:45:35,286 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 191 to 95. [2022-02-20 23:45:35,286 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:35,286 INFO L82 GeneralOperation]: Start isEquivalent. First operand 191 states. Second operand has 95 states, 72 states have (on average 1.375) internal successors, (99), 94 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:45:35,286 INFO L74 IsIncluded]: Start isIncluded. First operand 191 states. Second operand has 95 states, 72 states have (on average 1.375) internal successors, (99), 94 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:45:35,286 INFO L87 Difference]: Start difference. First operand 191 states. Second operand has 95 states, 72 states have (on average 1.375) internal successors, (99), 94 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:45:35,288 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:35,289 INFO L93 Difference]: Finished difference Result 191 states and 199 transitions. [2022-02-20 23:45:35,289 INFO L276 IsEmpty]: Start isEmpty. Operand 191 states and 199 transitions. [2022-02-20 23:45:35,289 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:35,289 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:35,289 INFO L74 IsIncluded]: Start isIncluded. First operand has 95 states, 72 states have (on average 1.375) internal successors, (99), 94 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 191 states. [2022-02-20 23:45:35,289 INFO L87 Difference]: Start difference. First operand has 95 states, 72 states have (on average 1.375) internal successors, (99), 94 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 191 states. [2022-02-20 23:45:35,291 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:35,292 INFO L93 Difference]: Finished difference Result 191 states and 199 transitions. [2022-02-20 23:45:35,292 INFO L276 IsEmpty]: Start isEmpty. Operand 191 states and 199 transitions. [2022-02-20 23:45:35,292 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:35,292 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:35,292 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:35,292 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:35,292 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 95 states, 72 states have (on average 1.375) internal successors, (99), 94 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:45:35,302 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 95 states to 95 states and 99 transitions. [2022-02-20 23:45:35,302 INFO L78 Accepts]: Start accepts. Automaton has 95 states and 99 transitions. Word has length 22 [2022-02-20 23:45:35,302 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:35,302 INFO L470 AbstractCegarLoop]: Abstraction has 95 states and 99 transitions. [2022-02-20 23:45:35,303 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:45:35,303 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 99 transitions. [2022-02-20 23:45:35,304 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-02-20 23:45:35,304 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:35,304 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:45:35,321 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-02-20 23:45:35,521 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:45:35,521 INFO L402 AbstractCegarLoop]: === Iteration 14 === Targeting ULTIMATE.startErr25ASSERT_VIOLATIONMEMORY_FREE === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:35,522 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:35,522 INFO L85 PathProgramCache]: Analyzing trace with hash -1794872678, now seen corresponding path program 1 times [2022-02-20 23:45:35,522 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:45:35,522 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [91744371] [2022-02-20 23:45:35,522 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:35,522 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:45:35,558 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:35,685 INFO L290 TraceCheckUtils]: 0: Hoare triple {5707#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(14, 2); {5707#true} is VALID [2022-02-20 23:45:35,686 INFO L290 TraceCheckUtils]: 1: Hoare triple {5707#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {5709#(= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1)} is VALID [2022-02-20 23:45:35,686 INFO L290 TraceCheckUtils]: 2: Hoare triple {5709#(= (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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {5710#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:45:35,687 INFO L290 TraceCheckUtils]: 3: Hoare triple {5710#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call append_#t~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L531 {5710#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:45:35,687 INFO L290 TraceCheckUtils]: 4: Hoare triple {5710#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_#t~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L531-1 {5710#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:45:35,688 INFO L290 TraceCheckUtils]: 5: Hoare triple {5710#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} havoc append_#t~mem4#1.base, append_#t~mem4#1.offset; {5710#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:45:35,688 INFO L290 TraceCheckUtils]: 6: Hoare triple {5710#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |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_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L532 {5710#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:45:35,689 INFO L290 TraceCheckUtils]: 7: Hoare triple {5710#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} assume !(append_#t~mem5#1.base != 0 || append_#t~mem5#1.offset != 0);call append_#t~malloc8#1.base, append_#t~malloc8#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite9#1.base, append_#t~ite9#1.offset := append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {5711#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (<= (+ |ULTIMATE.start_append_#t~ite9#1.base| 1) |#StackHeapBarrier|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:45:35,690 INFO L290 TraceCheckUtils]: 8: Hoare triple {5711#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (<= (+ |ULTIMATE.start_append_#t~ite9#1.base| 1) |#StackHeapBarrier|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_#t~ite9#1.base, append_#t~ite9#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L532-3 {5712#(and (<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) (+ |ULTIMATE.start_append_~item~0#1.offset| 4)) 1) |#StackHeapBarrier|) (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:45:35,690 INFO L290 TraceCheckUtils]: 9: Hoare triple {5712#(and (<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) (+ |ULTIMATE.start_append_~item~0#1.offset| 4)) 1) |#StackHeapBarrier|) (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset;havoc append_#t~ite9#1.base, append_#t~ite9#1.offset;havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {5712#(and (<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) (+ |ULTIMATE.start_append_~item~0#1.offset| 4)) 1) |#StackHeapBarrier|) (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:45:35,691 INFO L290 TraceCheckUtils]: 10: Hoare triple {5712#(and (<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) (+ |ULTIMATE.start_append_~item~0#1.offset| 4)) 1) |#StackHeapBarrier|) (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |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: L535 {5713#(and (<= (+ (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4) 1) |#StackHeapBarrier|) (= (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:45:35,692 INFO L290 TraceCheckUtils]: 11: Hoare triple {5713#(and (<= (+ (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4) 1) |#StackHeapBarrier|) (= (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; {5713#(and (<= (+ (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4) 1) |#StackHeapBarrier|) (= (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:45:35,692 INFO L290 TraceCheckUtils]: 12: Hoare triple {5713#(and (<= (+ (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4) 1) |#StackHeapBarrier|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0))} assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647; {5713#(and (<= (+ (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4) 1) |#StackHeapBarrier|) (= (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:45:35,692 INFO L290 TraceCheckUtils]: 13: Hoare triple {5713#(and (<= (+ (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4) 1) |#StackHeapBarrier|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0))} assume !(0 != main_#t~nondet10#1);havoc main_#t~nondet10#1; {5713#(and (<= (+ (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4) 1) |#StackHeapBarrier|) (= (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:45:35,693 INFO L290 TraceCheckUtils]: 14: Hoare triple {5713#(and (<= (+ (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4) 1) |#StackHeapBarrier|) (= (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~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L540-5 {5713#(and (<= (+ (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4) 1) |#StackHeapBarrier|) (= (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:45:35,693 INFO L290 TraceCheckUtils]: 15: Hoare triple {5713#(and (<= (+ (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4) 1) |#StackHeapBarrier|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0))} assume main_#t~mem11#1.base != 0 || main_#t~mem11#1.offset != 0;havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {5713#(and (<= (+ (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4) 1) |#StackHeapBarrier|) (= (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:45:35,694 INFO L290 TraceCheckUtils]: 16: Hoare triple {5713#(and (<= (+ (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4) 1) |#StackHeapBarrier|) (= (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~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L544 {5714#(and (<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~mem12#1.base|) 4) 1) |#StackHeapBarrier|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) |ULTIMATE.start_main_#t~mem12#1.base|) (= (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:45:35,694 INFO L290 TraceCheckUtils]: 17: Hoare triple {5714#(and (<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~mem12#1.base|) 4) 1) |#StackHeapBarrier|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) |ULTIMATE.start_main_#t~mem12#1.base|) (= (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~mem13#1.base, main_#t~mem13#1.offset := read~$Pointer$(main_#t~mem12#1.base, main_#t~mem12#1.offset, 4); srcloc: L544-1 {5713#(and (<= (+ (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4) 1) |#StackHeapBarrier|) (= (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:45:35,695 INFO L290 TraceCheckUtils]: 18: Hoare triple {5713#(and (<= (+ (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4) 1) |#StackHeapBarrier|) (= (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~mem13#1.base, main_#t~mem13#1.offset;havoc main_#t~mem12#1.base, main_#t~mem12#1.offset;havoc main_#t~mem13#1.base, main_#t~mem13#1.offset; {5713#(and (<= (+ (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4) 1) |#StackHeapBarrier|) (= (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:45:35,695 INFO L290 TraceCheckUtils]: 19: Hoare triple {5713#(and (<= (+ (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4) 1) |#StackHeapBarrier|) (= (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~mem14#1.base, main_#t~mem14#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L545 {5715#(and (= (+ 4 |ULTIMATE.start_main_#t~mem14#1.offset|) 4) (<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~mem14#1.base|) (+ 4 |ULTIMATE.start_main_#t~mem14#1.offset|)) 1) |#StackHeapBarrier|))} is VALID [2022-02-20 23:45:35,696 INFO L290 TraceCheckUtils]: 20: Hoare triple {5715#(and (= (+ 4 |ULTIMATE.start_main_#t~mem14#1.offset|) 4) (<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~mem14#1.base|) (+ 4 |ULTIMATE.start_main_#t~mem14#1.offset|)) 1) |#StackHeapBarrier|))} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_#t~mem14#1.base, 4 + main_#t~mem14#1.offset, 4); srcloc: L545-1 {5716#(<= (+ |ULTIMATE.start_main_#t~mem15#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:45:35,696 INFO L290 TraceCheckUtils]: 21: Hoare triple {5716#(<= (+ |ULTIMATE.start_main_#t~mem15#1.base| 1) |#StackHeapBarrier|)} assume 0 == main_#t~mem15#1.offset; {5716#(<= (+ |ULTIMATE.start_main_#t~mem15#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:45:35,701 INFO L290 TraceCheckUtils]: 22: Hoare triple {5716#(<= (+ |ULTIMATE.start_main_#t~mem15#1.base| 1) |#StackHeapBarrier|)} assume !(main_#t~mem15#1.base < #StackHeapBarrier); {5708#false} is VALID [2022-02-20 23:45:35,701 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:45:35,701 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:45:35,701 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [91744371] [2022-02-20 23:45:35,701 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [91744371] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:35,701 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:35,701 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-02-20 23:45:35,702 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [957619299] [2022-02-20 23:45:35,702 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:35,702 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 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:45:35,702 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:35,702 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 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:45:35,723 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:45:35,723 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 23:45:35,723 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:45:35,723 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 23:45:35,723 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=70, Unknown=0, NotChecked=0, Total=90 [2022-02-20 23:45:35,724 INFO L87 Difference]: Start difference. First operand 95 states and 99 transitions. Second operand has 10 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 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:45:36,752 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:36,752 INFO L93 Difference]: Finished difference Result 136 states and 141 transitions. [2022-02-20 23:45:36,752 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-02-20 23:45:36,753 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 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:45:36,753 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:36,753 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 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:45:36,754 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 137 transitions. [2022-02-20 23:45:36,754 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 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:45:36,755 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 137 transitions. [2022-02-20 23:45:36,755 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states and 137 transitions. [2022-02-20 23:45:36,876 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 137 edges. 137 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:36,877 INFO L225 Difference]: With dead ends: 136 [2022-02-20 23:45:36,877 INFO L226 Difference]: Without dead ends: 136 [2022-02-20 23:45:36,877 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 22 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 71 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=135, Invalid=371, Unknown=0, NotChecked=0, Total=506 [2022-02-20 23:45:36,877 INFO L933 BasicCegarLoop]: 27 mSDtfsCounter, 275 mSDsluCounter, 137 mSDsCounter, 0 mSdLazyCounter, 375 mSolverCounterSat, 34 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 275 SdHoareTripleChecker+Valid, 164 SdHoareTripleChecker+Invalid, 409 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 34 IncrementalHoareTripleChecker+Valid, 375 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:36,878 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [275 Valid, 164 Invalid, 409 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [34 Valid, 375 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-02-20 23:45:36,878 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 136 states. [2022-02-20 23:45:36,879 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 136 to 96. [2022-02-20 23:45:36,879 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:36,879 INFO L82 GeneralOperation]: Start isEquivalent. First operand 136 states. Second operand has 96 states, 73 states have (on average 1.36986301369863) internal successors, (100), 95 states have internal predecessors, (100), 0 states have call successors, (0), 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:45:36,879 INFO L74 IsIncluded]: Start isIncluded. First operand 136 states. Second operand has 96 states, 73 states have (on average 1.36986301369863) internal successors, (100), 95 states have internal predecessors, (100), 0 states have call successors, (0), 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:45:36,879 INFO L87 Difference]: Start difference. First operand 136 states. Second operand has 96 states, 73 states have (on average 1.36986301369863) internal successors, (100), 95 states have internal predecessors, (100), 0 states have call successors, (0), 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:45:36,881 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:36,881 INFO L93 Difference]: Finished difference Result 136 states and 141 transitions. [2022-02-20 23:45:36,881 INFO L276 IsEmpty]: Start isEmpty. Operand 136 states and 141 transitions. [2022-02-20 23:45:36,881 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:36,881 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:36,882 INFO L74 IsIncluded]: Start isIncluded. First operand has 96 states, 73 states have (on average 1.36986301369863) internal successors, (100), 95 states have internal predecessors, (100), 0 states have call successors, (0), 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 136 states. [2022-02-20 23:45:36,882 INFO L87 Difference]: Start difference. First operand has 96 states, 73 states have (on average 1.36986301369863) internal successors, (100), 95 states have internal predecessors, (100), 0 states have call successors, (0), 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 136 states. [2022-02-20 23:45:36,884 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:36,884 INFO L93 Difference]: Finished difference Result 136 states and 141 transitions. [2022-02-20 23:45:36,884 INFO L276 IsEmpty]: Start isEmpty. Operand 136 states and 141 transitions. [2022-02-20 23:45:36,884 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:36,885 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:36,885 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:36,885 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:36,885 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 96 states, 73 states have (on average 1.36986301369863) internal successors, (100), 95 states have internal predecessors, (100), 0 states have call successors, (0), 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:45:36,886 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 96 states to 96 states and 100 transitions. [2022-02-20 23:45:36,886 INFO L78 Accepts]: Start accepts. Automaton has 96 states and 100 transitions. Word has length 23 [2022-02-20 23:45:36,887 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:36,887 INFO L470 AbstractCegarLoop]: Abstraction has 96 states and 100 transitions. [2022-02-20 23:45:36,887 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 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:45:36,887 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 100 transitions. [2022-02-20 23:45:36,889 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-02-20 23:45:36,889 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:36,889 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:45:36,889 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable13 [2022-02-20 23:45:36,890 INFO L402 AbstractCegarLoop]: === Iteration 15 === Targeting ULTIMATE.startErr26ASSERT_VIOLATIONMEMORY_FREE === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:36,890 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:36,890 INFO L85 PathProgramCache]: Analyzing trace with hash 193521933, now seen corresponding path program 1 times [2022-02-20 23:45:36,890 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:45:36,890 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2028922735] [2022-02-20 23:45:36,891 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:36,891 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:45:36,916 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:37,047 INFO L290 TraceCheckUtils]: 0: Hoare triple {6249#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(14, 2); {6249#true} is VALID [2022-02-20 23:45:37,048 INFO L290 TraceCheckUtils]: 1: Hoare triple {6249#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {6251#(= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1)} is VALID [2022-02-20 23:45:37,049 INFO L290 TraceCheckUtils]: 2: Hoare triple {6251#(= (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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {6252#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:45:37,050 INFO L290 TraceCheckUtils]: 3: Hoare triple {6252#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call append_#t~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L531 {6252#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:45:37,051 INFO L290 TraceCheckUtils]: 4: Hoare triple {6252#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_#t~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L531-1 {6252#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:45:37,051 INFO L290 TraceCheckUtils]: 5: Hoare triple {6252#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} havoc append_#t~mem4#1.base, append_#t~mem4#1.offset; {6252#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:45:37,052 INFO L290 TraceCheckUtils]: 6: Hoare triple {6252#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |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_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L532 {6252#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:45:37,053 INFO L290 TraceCheckUtils]: 7: Hoare triple {6252#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} assume !(append_#t~mem5#1.base != 0 || append_#t~mem5#1.offset != 0);call append_#t~malloc8#1.base, append_#t~malloc8#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite9#1.base, append_#t~ite9#1.offset := append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {6253#(and (= (select |#valid| |ULTIMATE.start_append_#t~ite9#1.base|) 1) (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:45:37,053 INFO L290 TraceCheckUtils]: 8: Hoare triple {6253#(and (= (select |#valid| |ULTIMATE.start_append_#t~ite9#1.base|) 1) (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_#t~ite9#1.base, append_#t~ite9#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L532-3 {6254#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) (+ |ULTIMATE.start_append_~item~0#1.offset| 4))) 1) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:45:37,054 INFO L290 TraceCheckUtils]: 9: Hoare triple {6254#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) (+ |ULTIMATE.start_append_~item~0#1.offset| 4))) 1) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset;havoc append_#t~ite9#1.base, append_#t~ite9#1.offset;havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {6254#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) (+ |ULTIMATE.start_append_~item~0#1.offset| 4))) 1) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:45:37,055 INFO L290 TraceCheckUtils]: 10: Hoare triple {6254#(and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) (+ |ULTIMATE.start_append_~item~0#1.offset| 4))) 1) (= |ULTIMATE.start_append_~plist#1.offset| |ULTIMATE.start_main_~#list~0#1.offset|) (not (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|)) (= |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: L535 {6255#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4)) 1) (= (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:45:37,055 INFO L290 TraceCheckUtils]: 11: Hoare triple {6255#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4)) 1) (= (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; {6255#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4)) 1) (= (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:45:37,056 INFO L290 TraceCheckUtils]: 12: Hoare triple {6255#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4)) 1) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0))} assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647; {6255#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4)) 1) (= (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:45:37,056 INFO L290 TraceCheckUtils]: 13: Hoare triple {6255#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4)) 1) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0))} assume !(0 != main_#t~nondet10#1);havoc main_#t~nondet10#1; {6255#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4)) 1) (= (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:45:37,057 INFO L290 TraceCheckUtils]: 14: Hoare triple {6255#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4)) 1) (= (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~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L540-5 {6255#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4)) 1) (= (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:45:37,057 INFO L290 TraceCheckUtils]: 15: Hoare triple {6255#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4)) 1) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0))} assume main_#t~mem11#1.base != 0 || main_#t~mem11#1.offset != 0;havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {6255#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4)) 1) (= (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:45:37,058 INFO L290 TraceCheckUtils]: 16: Hoare triple {6255#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4)) 1) (= (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~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L544 {6256#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) |ULTIMATE.start_main_#t~mem12#1.base|) (= (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_#t~mem12#1.base|) 4)) 1))} is VALID [2022-02-20 23:45:37,058 INFO L290 TraceCheckUtils]: 17: Hoare triple {6256#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) |ULTIMATE.start_main_#t~mem12#1.base|) (= (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_#t~mem12#1.base|) 4)) 1))} SUMMARY for call main_#t~mem13#1.base, main_#t~mem13#1.offset := read~$Pointer$(main_#t~mem12#1.base, main_#t~mem12#1.offset, 4); srcloc: L544-1 {6255#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4)) 1) (= (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:45:37,059 INFO L290 TraceCheckUtils]: 18: Hoare triple {6255#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4)) 1) (= (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~mem13#1.base, main_#t~mem13#1.offset;havoc main_#t~mem12#1.base, main_#t~mem12#1.offset;havoc main_#t~mem13#1.base, main_#t~mem13#1.offset; {6255#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4)) 1) (= (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:45:37,059 INFO L290 TraceCheckUtils]: 19: Hoare triple {6255#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4)) 1) (= (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~mem14#1.base, main_#t~mem14#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L545 {6257#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~mem14#1.base|) (+ 4 |ULTIMATE.start_main_#t~mem14#1.offset|))) 1) (= 0 |ULTIMATE.start_main_#t~mem14#1.offset|))} is VALID [2022-02-20 23:45:37,060 INFO L290 TraceCheckUtils]: 20: Hoare triple {6257#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~mem14#1.base|) (+ 4 |ULTIMATE.start_main_#t~mem14#1.offset|))) 1) (= 0 |ULTIMATE.start_main_#t~mem14#1.offset|))} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_#t~mem14#1.base, 4 + main_#t~mem14#1.offset, 4); srcloc: L545-1 {6258#(= (select |#valid| |ULTIMATE.start_main_#t~mem15#1.base|) 1)} is VALID [2022-02-20 23:45:37,060 INFO L290 TraceCheckUtils]: 21: Hoare triple {6258#(= (select |#valid| |ULTIMATE.start_main_#t~mem15#1.base|) 1)} assume 0 == main_#t~mem15#1.offset; {6258#(= (select |#valid| |ULTIMATE.start_main_#t~mem15#1.base|) 1)} is VALID [2022-02-20 23:45:37,061 INFO L290 TraceCheckUtils]: 22: Hoare triple {6258#(= (select |#valid| |ULTIMATE.start_main_#t~mem15#1.base|) 1)} assume main_#t~mem15#1.base < #StackHeapBarrier; {6258#(= (select |#valid| |ULTIMATE.start_main_#t~mem15#1.base|) 1)} is VALID [2022-02-20 23:45:37,061 INFO L290 TraceCheckUtils]: 23: Hoare triple {6258#(= (select |#valid| |ULTIMATE.start_main_#t~mem15#1.base|) 1)} assume !(0 == main_#t~mem15#1.base || 1 == #valid[main_#t~mem15#1.base]); {6250#false} is VALID [2022-02-20 23:45:37,061 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:45:37,061 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:45:37,061 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2028922735] [2022-02-20 23:45:37,062 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2028922735] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:37,062 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:37,062 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-02-20 23:45:37,062 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [358191987] [2022-02-20 23:45:37,062 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:37,062 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 10 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:45:37,063 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:37,063 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 10 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:45:37,080 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:45:37,080 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 23:45:37,081 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:45:37,081 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 23:45:37,081 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=70, Unknown=0, NotChecked=0, Total=90 [2022-02-20 23:45:37,081 INFO L87 Difference]: Start difference. First operand 96 states and 100 transitions. Second operand has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 10 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:45:37,877 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:37,877 INFO L93 Difference]: Finished difference Result 102 states and 106 transitions. [2022-02-20 23:45:37,877 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-02-20 23:45:37,877 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 10 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:45:37,878 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:37,878 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 10 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:45:37,879 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 102 transitions. [2022-02-20 23:45:37,879 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 10 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:45:37,880 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 102 transitions. [2022-02-20 23:45:37,880 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states and 102 transitions. [2022-02-20 23:45:37,965 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 102 edges. 102 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:37,967 INFO L225 Difference]: With dead ends: 102 [2022-02-20 23:45:37,967 INFO L226 Difference]: Without dead ends: 102 [2022-02-20 23:45:37,969 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 20 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 44 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=118, Invalid=302, Unknown=0, NotChecked=0, Total=420 [2022-02-20 23:45:37,969 INFO L933 BasicCegarLoop]: 31 mSDtfsCounter, 163 mSDsluCounter, 165 mSDsCounter, 0 mSdLazyCounter, 353 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 163 SdHoareTripleChecker+Valid, 196 SdHoareTripleChecker+Invalid, 371 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 353 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:37,970 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [163 Valid, 196 Invalid, 371 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 353 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-02-20 23:45:37,970 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 102 states. [2022-02-20 23:45:37,971 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 102 to 97. [2022-02-20 23:45:37,971 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:37,971 INFO L82 GeneralOperation]: Start isEquivalent. First operand 102 states. Second operand has 97 states, 74 states have (on average 1.364864864864865) internal successors, (101), 96 states have internal predecessors, (101), 0 states have call successors, (0), 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:45:37,971 INFO L74 IsIncluded]: Start isIncluded. First operand 102 states. Second operand has 97 states, 74 states have (on average 1.364864864864865) internal successors, (101), 96 states have internal predecessors, (101), 0 states have call successors, (0), 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:45:37,971 INFO L87 Difference]: Start difference. First operand 102 states. Second operand has 97 states, 74 states have (on average 1.364864864864865) internal successors, (101), 96 states have internal predecessors, (101), 0 states have call successors, (0), 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:45:37,972 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:37,972 INFO L93 Difference]: Finished difference Result 102 states and 106 transitions. [2022-02-20 23:45:37,972 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 106 transitions. [2022-02-20 23:45:37,973 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:37,973 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:37,973 INFO L74 IsIncluded]: Start isIncluded. First operand has 97 states, 74 states have (on average 1.364864864864865) internal successors, (101), 96 states have internal predecessors, (101), 0 states have call successors, (0), 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:45:37,973 INFO L87 Difference]: Start difference. First operand has 97 states, 74 states have (on average 1.364864864864865) internal successors, (101), 96 states have internal predecessors, (101), 0 states have call successors, (0), 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:45:37,974 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:37,974 INFO L93 Difference]: Finished difference Result 102 states and 106 transitions. [2022-02-20 23:45:37,974 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 106 transitions. [2022-02-20 23:45:37,974 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:37,974 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:37,974 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:37,974 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:37,974 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 97 states, 74 states have (on average 1.364864864864865) internal successors, (101), 96 states have internal predecessors, (101), 0 states have call successors, (0), 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:45:37,975 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 97 states to 97 states and 101 transitions. [2022-02-20 23:45:37,975 INFO L78 Accepts]: Start accepts. Automaton has 97 states and 101 transitions. Word has length 24 [2022-02-20 23:45:37,977 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:37,977 INFO L470 AbstractCegarLoop]: Abstraction has 97 states and 101 transitions. [2022-02-20 23:45:37,977 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 10 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:45:37,978 INFO L276 IsEmpty]: Start isEmpty. Operand 97 states and 101 transitions. [2022-02-20 23:45:37,978 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-02-20 23:45:37,979 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:37,979 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] [2022-02-20 23:45:37,979 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable14 [2022-02-20 23:45:37,979 INFO L402 AbstractCegarLoop]: === Iteration 16 === Targeting ULTIMATE.startErr27REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:37,980 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:37,980 INFO L85 PathProgramCache]: Analyzing trace with hash 1704212733, now seen corresponding path program 1 times [2022-02-20 23:45:37,980 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:45:37,980 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1861787557] [2022-02-20 23:45:37,980 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:37,981 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:45:38,015 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:38,092 INFO L290 TraceCheckUtils]: 0: Hoare triple {6686#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(14, 2); {6686#true} is VALID [2022-02-20 23:45:38,092 INFO L290 TraceCheckUtils]: 1: Hoare triple {6686#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {6688#(<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|)} is VALID [2022-02-20 23:45:38,093 INFO L290 TraceCheckUtils]: 2: Hoare triple {6688#(<= (+ |#StackHeapBarrier| 1) |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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {6689#(and (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:45:38,093 INFO L290 TraceCheckUtils]: 3: Hoare triple {6689#(and (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call append_#t~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L531 {6689#(and (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:45:38,094 INFO L290 TraceCheckUtils]: 4: Hoare triple {6689#(and (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_#t~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L531-1 {6689#(and (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:45:38,094 INFO L290 TraceCheckUtils]: 5: Hoare triple {6689#(and (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} havoc append_#t~mem4#1.base, append_#t~mem4#1.offset; {6689#(and (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:45:38,095 INFO L290 TraceCheckUtils]: 6: Hoare triple {6689#(and (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|) (= |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_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L532 {6689#(and (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:45:38,095 INFO L290 TraceCheckUtils]: 7: Hoare triple {6689#(and (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} assume !(append_#t~mem5#1.base != 0 || append_#t~mem5#1.offset != 0);call append_#t~malloc8#1.base, append_#t~malloc8#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite9#1.base, append_#t~ite9#1.offset := append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {6689#(and (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:45:38,096 INFO L290 TraceCheckUtils]: 8: Hoare triple {6689#(and (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} SUMMARY for call write~$Pointer$(append_#t~ite9#1.base, append_#t~ite9#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L532-3 {6689#(and (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:45:38,096 INFO L290 TraceCheckUtils]: 9: Hoare triple {6689#(and (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset;havoc append_#t~ite9#1.base, append_#t~ite9#1.offset;havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {6689#(and (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|))} is VALID [2022-02-20 23:45:38,097 INFO L290 TraceCheckUtils]: 10: Hoare triple {6689#(and (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|) (= |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: L535 {6690#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|))} is VALID [2022-02-20 23:45:38,097 INFO L290 TraceCheckUtils]: 11: Hoare triple {6690#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|))} assume { :end_inline_append } true; {6690#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|))} is VALID [2022-02-20 23:45:38,097 INFO L290 TraceCheckUtils]: 12: Hoare triple {6690#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|))} assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647; {6690#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|))} is VALID [2022-02-20 23:45:38,098 INFO L290 TraceCheckUtils]: 13: Hoare triple {6690#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|))} assume !(0 != main_#t~nondet10#1);havoc main_#t~nondet10#1; {6690#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|))} is VALID [2022-02-20 23:45:38,098 INFO L290 TraceCheckUtils]: 14: Hoare triple {6690#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|))} SUMMARY for call main_#t~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L540-5 {6690#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|))} is VALID [2022-02-20 23:45:38,099 INFO L290 TraceCheckUtils]: 15: Hoare triple {6690#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|))} assume main_#t~mem11#1.base != 0 || main_#t~mem11#1.offset != 0;havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {6690#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|))} is VALID [2022-02-20 23:45:38,099 INFO L290 TraceCheckUtils]: 16: Hoare triple {6690#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|))} SUMMARY for call main_#t~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L544 {6690#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|))} is VALID [2022-02-20 23:45:38,099 INFO L290 TraceCheckUtils]: 17: Hoare triple {6690#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|))} SUMMARY for call main_#t~mem13#1.base, main_#t~mem13#1.offset := read~$Pointer$(main_#t~mem12#1.base, main_#t~mem12#1.offset, 4); srcloc: L544-1 {6690#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|))} is VALID [2022-02-20 23:45:38,100 INFO L290 TraceCheckUtils]: 18: Hoare triple {6690#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|))} main_~next~0#1.base, main_~next~0#1.offset := main_#t~mem13#1.base, main_#t~mem13#1.offset;havoc main_#t~mem12#1.base, main_#t~mem12#1.offset;havoc main_#t~mem13#1.base, main_#t~mem13#1.offset; {6690#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|))} is VALID [2022-02-20 23:45:38,100 INFO L290 TraceCheckUtils]: 19: Hoare triple {6690#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|))} SUMMARY for call main_#t~mem14#1.base, main_#t~mem14#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L545 {6690#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|))} is VALID [2022-02-20 23:45:38,101 INFO L290 TraceCheckUtils]: 20: Hoare triple {6690#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|))} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_#t~mem14#1.base, 4 + main_#t~mem14#1.offset, 4); srcloc: L545-1 {6691#(and (or (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~#list~0#1.base| (* (- 1) |ULTIMATE.start_main_#t~mem15#1.base|)) 0)) (or (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|) (not (= (+ |ULTIMATE.start_main_~#list~0#1.base| (* (- 1) |ULTIMATE.start_main_#t~mem15#1.base|)) 0))))} is VALID [2022-02-20 23:45:38,101 INFO L290 TraceCheckUtils]: 21: Hoare triple {6691#(and (or (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~#list~0#1.base| (* (- 1) |ULTIMATE.start_main_#t~mem15#1.base|)) 0)) (or (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|) (not (= (+ |ULTIMATE.start_main_~#list~0#1.base| (* (- 1) |ULTIMATE.start_main_#t~mem15#1.base|)) 0))))} assume 0 == main_#t~mem15#1.offset; {6691#(and (or (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~#list~0#1.base| (* (- 1) |ULTIMATE.start_main_#t~mem15#1.base|)) 0)) (or (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|) (not (= (+ |ULTIMATE.start_main_~#list~0#1.base| (* (- 1) |ULTIMATE.start_main_#t~mem15#1.base|)) 0))))} is VALID [2022-02-20 23:45:38,102 INFO L290 TraceCheckUtils]: 22: Hoare triple {6691#(and (or (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~#list~0#1.base| (* (- 1) |ULTIMATE.start_main_#t~mem15#1.base|)) 0)) (or (<= (+ |#StackHeapBarrier| 1) |ULTIMATE.start_main_~#list~0#1.base|) (not (= (+ |ULTIMATE.start_main_~#list~0#1.base| (* (- 1) |ULTIMATE.start_main_#t~mem15#1.base|)) 0))))} assume main_#t~mem15#1.base < #StackHeapBarrier; {6692#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (not (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_main_#t~mem15#1.base|)))} is VALID [2022-02-20 23:45:38,102 INFO L290 TraceCheckUtils]: 23: Hoare triple {6692#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (not (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_main_#t~mem15#1.base|)))} assume 0 == main_#t~mem15#1.base || 1 == #valid[main_#t~mem15#1.base];call ULTIMATE.dealloc(main_#t~mem15#1.base, main_#t~mem15#1.offset);havoc main_#t~mem14#1.base, main_#t~mem14#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset; {6693#(= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1)} is VALID [2022-02-20 23:45:38,103 INFO L290 TraceCheckUtils]: 24: Hoare triple {6693#(= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1)} assume !(1 == #valid[main_~#list~0#1.base]); {6687#false} is VALID [2022-02-20 23:45:38,103 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:45:38,103 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:45:38,103 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1861787557] [2022-02-20 23:45:38,103 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1861787557] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:38,103 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:38,103 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-20 23:45:38,104 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [879899516] [2022-02-20 23:45:38,104 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:38,104 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 8 states have internal predecessors, (25), 0 states have call successors, (0), 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 25 [2022-02-20 23:45:38,104 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:38,104 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 8 states have internal predecessors, (25), 0 states have call successors, (0), 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:45:38,133 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:38,133 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 23:45:38,133 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:45:38,133 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 23:45:38,134 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=37, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:45:38,134 INFO L87 Difference]: Start difference. First operand 97 states and 101 transitions. Second operand has 8 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 8 states have internal predecessors, (25), 0 states have call successors, (0), 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:45:38,359 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:38,359 INFO L93 Difference]: Finished difference Result 96 states and 100 transitions. [2022-02-20 23:45:38,359 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:45:38,359 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 8 states have internal predecessors, (25), 0 states have call successors, (0), 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 25 [2022-02-20 23:45:38,359 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:38,359 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 8 states have internal predecessors, (25), 0 states have call successors, (0), 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:45:38,360 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 70 transitions. [2022-02-20 23:45:38,360 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 8 states have internal predecessors, (25), 0 states have call successors, (0), 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:45:38,360 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 70 transitions. [2022-02-20 23:45:38,360 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 70 transitions. [2022-02-20 23:45:38,411 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:45:38,411 INFO L225 Difference]: With dead ends: 96 [2022-02-20 23:45:38,411 INFO L226 Difference]: Without dead ends: 96 [2022-02-20 23:45:38,412 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 9 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=35, Invalid=55, Unknown=0, NotChecked=0, Total=90 [2022-02-20 23:45:38,412 INFO L933 BasicCegarLoop]: 24 mSDtfsCounter, 117 mSDsluCounter, 23 mSDsCounter, 0 mSdLazyCounter, 123 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 117 SdHoareTripleChecker+Valid, 47 SdHoareTripleChecker+Invalid, 132 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 123 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:38,412 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [117 Valid, 47 Invalid, 132 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 123 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:45:38,413 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 96 states. [2022-02-20 23:45:38,413 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 96 to 96. [2022-02-20 23:45:38,413 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:38,414 INFO L82 GeneralOperation]: Start isEquivalent. First operand 96 states. Second operand has 96 states, 74 states have (on average 1.3513513513513513) internal successors, (100), 95 states have internal predecessors, (100), 0 states have call successors, (0), 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:45:38,414 INFO L74 IsIncluded]: Start isIncluded. First operand 96 states. Second operand has 96 states, 74 states have (on average 1.3513513513513513) internal successors, (100), 95 states have internal predecessors, (100), 0 states have call successors, (0), 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:45:38,414 INFO L87 Difference]: Start difference. First operand 96 states. Second operand has 96 states, 74 states have (on average 1.3513513513513513) internal successors, (100), 95 states have internal predecessors, (100), 0 states have call successors, (0), 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:45:38,415 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:38,415 INFO L93 Difference]: Finished difference Result 96 states and 100 transitions. [2022-02-20 23:45:38,415 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 100 transitions. [2022-02-20 23:45:38,415 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:38,415 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:38,415 INFO L74 IsIncluded]: Start isIncluded. First operand has 96 states, 74 states have (on average 1.3513513513513513) internal successors, (100), 95 states have internal predecessors, (100), 0 states have call successors, (0), 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 96 states. [2022-02-20 23:45:38,415 INFO L87 Difference]: Start difference. First operand has 96 states, 74 states have (on average 1.3513513513513513) internal successors, (100), 95 states have internal predecessors, (100), 0 states have call successors, (0), 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 96 states. [2022-02-20 23:45:38,416 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:38,416 INFO L93 Difference]: Finished difference Result 96 states and 100 transitions. [2022-02-20 23:45:38,416 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 100 transitions. [2022-02-20 23:45:38,416 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:38,417 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:38,417 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:38,417 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:38,417 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 96 states, 74 states have (on average 1.3513513513513513) internal successors, (100), 95 states have internal predecessors, (100), 0 states have call successors, (0), 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:45:38,417 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 96 states to 96 states and 100 transitions. [2022-02-20 23:45:38,418 INFO L78 Accepts]: Start accepts. Automaton has 96 states and 100 transitions. Word has length 25 [2022-02-20 23:45:38,418 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:38,418 INFO L470 AbstractCegarLoop]: Abstraction has 96 states and 100 transitions. [2022-02-20 23:45:38,418 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 8 states have internal predecessors, (25), 0 states have call successors, (0), 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:45:38,418 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 100 transitions. [2022-02-20 23:45:38,418 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-02-20 23:45:38,418 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:38,418 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] [2022-02-20 23:45:38,418 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable15 [2022-02-20 23:45:38,418 INFO L402 AbstractCegarLoop]: === Iteration 17 === Targeting ULTIMATE.startErr28REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:38,419 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:38,419 INFO L85 PathProgramCache]: Analyzing trace with hash 1704212734, now seen corresponding path program 1 times [2022-02-20 23:45:38,419 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:45:38,419 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [865433951] [2022-02-20 23:45:38,419 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:38,419 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:45:38,445 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:38,474 INFO L290 TraceCheckUtils]: 0: Hoare triple {7084#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(14, 2); {7084#true} is VALID [2022-02-20 23:45:38,474 INFO L290 TraceCheckUtils]: 1: Hoare triple {7084#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {7086#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} is VALID [2022-02-20 23:45:38,474 INFO L290 TraceCheckUtils]: 2: Hoare triple {7086#(= |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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {7086#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} is VALID [2022-02-20 23:45:38,475 INFO L290 TraceCheckUtils]: 3: Hoare triple {7086#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} SUMMARY for call append_#t~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L531 {7086#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} is VALID [2022-02-20 23:45:38,475 INFO L290 TraceCheckUtils]: 4: Hoare triple {7086#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} SUMMARY for call write~$Pointer$(append_#t~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L531-1 {7086#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} is VALID [2022-02-20 23:45:38,475 INFO L290 TraceCheckUtils]: 5: Hoare triple {7086#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} havoc append_#t~mem4#1.base, append_#t~mem4#1.offset; {7086#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} is VALID [2022-02-20 23:45:38,476 INFO L290 TraceCheckUtils]: 6: Hoare triple {7086#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L532 {7086#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} is VALID [2022-02-20 23:45:38,476 INFO L290 TraceCheckUtils]: 7: Hoare triple {7086#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} assume !(append_#t~mem5#1.base != 0 || append_#t~mem5#1.offset != 0);call append_#t~malloc8#1.base, append_#t~malloc8#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite9#1.base, append_#t~ite9#1.offset := append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {7086#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} is VALID [2022-02-20 23:45:38,476 INFO L290 TraceCheckUtils]: 8: Hoare triple {7086#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} SUMMARY for call write~$Pointer$(append_#t~ite9#1.base, append_#t~ite9#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L532-3 {7086#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} is VALID [2022-02-20 23:45:38,476 INFO L290 TraceCheckUtils]: 9: Hoare triple {7086#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset;havoc append_#t~ite9#1.base, append_#t~ite9#1.offset;havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {7086#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} is VALID [2022-02-20 23:45:38,477 INFO L290 TraceCheckUtils]: 10: Hoare triple {7086#(= |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: L535 {7086#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} is VALID [2022-02-20 23:45:38,477 INFO L290 TraceCheckUtils]: 11: Hoare triple {7086#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} assume { :end_inline_append } true; {7086#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} is VALID [2022-02-20 23:45:38,477 INFO L290 TraceCheckUtils]: 12: Hoare triple {7086#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647; {7086#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} is VALID [2022-02-20 23:45:38,477 INFO L290 TraceCheckUtils]: 13: Hoare triple {7086#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} assume !(0 != main_#t~nondet10#1);havoc main_#t~nondet10#1; {7086#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} is VALID [2022-02-20 23:45:38,478 INFO L290 TraceCheckUtils]: 14: Hoare triple {7086#(= |ULTIMATE.start_main_~#list~0#1.offset| 0)} SUMMARY for call main_#t~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L540-5 {7087#(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:45:38,478 INFO L290 TraceCheckUtils]: 15: Hoare triple {7087#(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~mem11#1.base != 0 || main_#t~mem11#1.offset != 0;havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {7087#(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:45:38,479 INFO L290 TraceCheckUtils]: 16: Hoare triple {7087#(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~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L544 {7087#(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:45:38,479 INFO L290 TraceCheckUtils]: 17: Hoare triple {7087#(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~mem13#1.base, main_#t~mem13#1.offset := read~$Pointer$(main_#t~mem12#1.base, main_#t~mem12#1.offset, 4); srcloc: L544-1 {7087#(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:45:38,479 INFO L290 TraceCheckUtils]: 18: Hoare triple {7087#(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~mem13#1.base, main_#t~mem13#1.offset;havoc main_#t~mem12#1.base, main_#t~mem12#1.offset;havoc main_#t~mem13#1.base, main_#t~mem13#1.offset; {7087#(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:45:38,480 INFO L290 TraceCheckUtils]: 19: Hoare triple {7087#(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~mem14#1.base, main_#t~mem14#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L545 {7087#(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:45:38,480 INFO L290 TraceCheckUtils]: 20: Hoare triple {7087#(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~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_#t~mem14#1.base, 4 + main_#t~mem14#1.offset, 4); srcloc: L545-1 {7087#(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:45:38,480 INFO L290 TraceCheckUtils]: 21: Hoare triple {7087#(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~mem15#1.offset; {7087#(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:45:38,483 INFO L290 TraceCheckUtils]: 22: Hoare triple {7087#(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~mem15#1.base < #StackHeapBarrier; {7087#(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:45:38,484 INFO L290 TraceCheckUtils]: 23: Hoare triple {7087#(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~mem15#1.base || 1 == #valid[main_#t~mem15#1.base];call ULTIMATE.dealloc(main_#t~mem15#1.base, main_#t~mem15#1.offset);havoc main_#t~mem14#1.base, main_#t~mem14#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset; {7087#(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:45:38,499 INFO L290 TraceCheckUtils]: 24: Hoare triple {7087#(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); {7085#false} is VALID [2022-02-20 23:45:38,499 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:45:38,499 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:45:38,499 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [865433951] [2022-02-20 23:45:38,499 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [865433951] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:38,500 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:38,500 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:45:38,500 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1219499368] [2022-02-20 23:45:38,500 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:38,500 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 8.333333333333334) internal successors, (25), 4 states have internal predecessors, (25), 0 states have call successors, (0), 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 25 [2022-02-20 23:45:38,500 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:38,500 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 8.333333333333334) internal successors, (25), 4 states have internal predecessors, (25), 0 states have call successors, (0), 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:45:38,515 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:38,515 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:45:38,515 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:45:38,515 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:45:38,516 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:45:38,516 INFO L87 Difference]: Start difference. First operand 96 states and 100 transitions. Second operand has 4 states, 3 states have (on average 8.333333333333334) internal successors, (25), 4 states have internal predecessors, (25), 0 states have call successors, (0), 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:45:38,590 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:38,591 INFO L93 Difference]: Finished difference Result 90 states and 94 transitions. [2022-02-20 23:45:38,591 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:45:38,591 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 8.333333333333334) internal successors, (25), 4 states have internal predecessors, (25), 0 states have call successors, (0), 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 25 [2022-02-20 23:45:38,591 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:38,591 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 8.333333333333334) internal successors, (25), 4 states have internal predecessors, (25), 0 states have call successors, (0), 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:45:38,592 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 68 transitions. [2022-02-20 23:45:38,592 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 8.333333333333334) internal successors, (25), 4 states have internal predecessors, (25), 0 states have call successors, (0), 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:45:38,592 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 68 transitions. [2022-02-20 23:45:38,592 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 68 transitions. [2022-02-20 23:45:38,647 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:38,648 INFO L225 Difference]: With dead ends: 90 [2022-02-20 23:45:38,648 INFO L226 Difference]: Without dead ends: 90 [2022-02-20 23:45:38,648 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:45:38,648 INFO L933 BasicCegarLoop]: 36 mSDtfsCounter, 56 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 29 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 56 SdHoareTripleChecker+Valid, 39 SdHoareTripleChecker+Invalid, 37 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 29 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:38,649 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [56 Valid, 39 Invalid, 37 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 29 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:45:38,649 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 90 states. [2022-02-20 23:45:38,656 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 90 to 90. [2022-02-20 23:45:38,656 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:38,656 INFO L82 GeneralOperation]: Start isEquivalent. First operand 90 states. Second operand has 90 states, 74 states have (on average 1.2702702702702702) internal successors, (94), 89 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:45:38,656 INFO L74 IsIncluded]: Start isIncluded. First operand 90 states. Second operand has 90 states, 74 states have (on average 1.2702702702702702) internal successors, (94), 89 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:45:38,657 INFO L87 Difference]: Start difference. First operand 90 states. Second operand has 90 states, 74 states have (on average 1.2702702702702702) internal successors, (94), 89 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:45:38,657 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:38,658 INFO L93 Difference]: Finished difference Result 90 states and 94 transitions. [2022-02-20 23:45:38,658 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 94 transitions. [2022-02-20 23:45:38,658 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:38,658 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:38,658 INFO L74 IsIncluded]: Start isIncluded. First operand has 90 states, 74 states have (on average 1.2702702702702702) internal successors, (94), 89 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 90 states. [2022-02-20 23:45:38,658 INFO L87 Difference]: Start difference. First operand has 90 states, 74 states have (on average 1.2702702702702702) internal successors, (94), 89 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 90 states. [2022-02-20 23:45:38,659 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:38,659 INFO L93 Difference]: Finished difference Result 90 states and 94 transitions. [2022-02-20 23:45:38,659 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 94 transitions. [2022-02-20 23:45:38,660 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:38,660 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:38,660 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:38,660 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:38,660 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 90 states, 74 states have (on average 1.2702702702702702) internal successors, (94), 89 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:45:38,661 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 90 states to 90 states and 94 transitions. [2022-02-20 23:45:38,661 INFO L78 Accepts]: Start accepts. Automaton has 90 states and 94 transitions. Word has length 25 [2022-02-20 23:45:38,661 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:38,661 INFO L470 AbstractCegarLoop]: Abstraction has 90 states and 94 transitions. [2022-02-20 23:45:38,661 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 8.333333333333334) internal successors, (25), 4 states have internal predecessors, (25), 0 states have call successors, (0), 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:45:38,661 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 94 transitions. [2022-02-20 23:45:38,662 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2022-02-20 23:45:38,662 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:38,662 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] [2022-02-20 23:45:38,662 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable16 [2022-02-20 23:45:38,662 INFO L402 AbstractCegarLoop]: === Iteration 18 === Targeting ULTIMATE.startErr29ASSERT_VIOLATIONMEMORY_FREE === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:38,662 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:38,663 INFO L85 PathProgramCache]: Analyzing trace with hash 1290987217, now seen corresponding path program 1 times [2022-02-20 23:45:38,663 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:45:38,663 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [515709627] [2022-02-20 23:45:38,663 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:38,663 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:45:38,678 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:38,701 INFO L290 TraceCheckUtils]: 0: Hoare triple {7450#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(14, 2); {7450#true} is VALID [2022-02-20 23:45:38,701 INFO L290 TraceCheckUtils]: 1: Hoare triple {7450#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {7450#true} is VALID [2022-02-20 23:45:38,702 INFO L290 TraceCheckUtils]: 2: Hoare triple {7450#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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {7452#(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:45:38,703 INFO L290 TraceCheckUtils]: 3: Hoare triple {7452#(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~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L531 {7452#(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:45:38,703 INFO L290 TraceCheckUtils]: 4: Hoare triple {7452#(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~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L531-1 {7452#(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:45:38,704 INFO L290 TraceCheckUtils]: 5: Hoare triple {7452#(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~mem4#1.base, append_#t~mem4#1.offset; {7452#(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:45:38,704 INFO L290 TraceCheckUtils]: 6: Hoare triple {7452#(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_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L532 {7452#(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:45:38,704 INFO L290 TraceCheckUtils]: 7: Hoare triple {7452#(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~mem5#1.base != 0 || append_#t~mem5#1.offset != 0);call append_#t~malloc8#1.base, append_#t~malloc8#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite9#1.base, append_#t~ite9#1.offset := append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {7452#(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:45:38,705 INFO L290 TraceCheckUtils]: 8: Hoare triple {7452#(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~ite9#1.base, append_#t~ite9#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L532-3 {7452#(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:45:38,705 INFO L290 TraceCheckUtils]: 9: Hoare triple {7452#(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;havoc append_#t~ite9#1.base, append_#t~ite9#1.offset;havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {7452#(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:45:38,706 INFO L290 TraceCheckUtils]: 10: Hoare triple {7452#(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: L535 {7453#(= (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:45:38,707 INFO L290 TraceCheckUtils]: 11: Hoare triple {7453#(= (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; {7453#(= (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:45:38,707 INFO L290 TraceCheckUtils]: 12: Hoare triple {7453#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0)} assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647; {7453#(= (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:45:38,707 INFO L290 TraceCheckUtils]: 13: Hoare triple {7453#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0)} assume !(0 != main_#t~nondet10#1);havoc main_#t~nondet10#1; {7453#(= (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:45:38,708 INFO L290 TraceCheckUtils]: 14: Hoare triple {7453#(= (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~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L540-5 {7453#(= (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:45:38,708 INFO L290 TraceCheckUtils]: 15: Hoare triple {7453#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0)} assume main_#t~mem11#1.base != 0 || main_#t~mem11#1.offset != 0;havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {7453#(= (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:45:38,708 INFO L290 TraceCheckUtils]: 16: Hoare triple {7453#(= (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~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L544 {7453#(= (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:45:38,708 INFO L290 TraceCheckUtils]: 17: Hoare triple {7453#(= (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~mem13#1.base, main_#t~mem13#1.offset := read~$Pointer$(main_#t~mem12#1.base, main_#t~mem12#1.offset, 4); srcloc: L544-1 {7453#(= (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:45:38,709 INFO L290 TraceCheckUtils]: 18: Hoare triple {7453#(= (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~mem13#1.base, main_#t~mem13#1.offset;havoc main_#t~mem12#1.base, main_#t~mem12#1.offset;havoc main_#t~mem13#1.base, main_#t~mem13#1.offset; {7453#(= (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:45:38,709 INFO L290 TraceCheckUtils]: 19: Hoare triple {7453#(= (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~mem14#1.base, main_#t~mem14#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L545 {7453#(= (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:45:38,709 INFO L290 TraceCheckUtils]: 20: Hoare triple {7453#(= (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_#t~mem14#1.base, 4 + main_#t~mem14#1.offset, 4); srcloc: L545-1 {7453#(= (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:45:38,710 INFO L290 TraceCheckUtils]: 21: Hoare triple {7453#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0)} assume 0 == main_#t~mem15#1.offset; {7453#(= (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:45:38,710 INFO L290 TraceCheckUtils]: 22: Hoare triple {7453#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0)} assume main_#t~mem15#1.base < #StackHeapBarrier; {7453#(= (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:45:38,710 INFO L290 TraceCheckUtils]: 23: Hoare triple {7453#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0)} assume 0 == main_#t~mem15#1.base || 1 == #valid[main_#t~mem15#1.base];call ULTIMATE.dealloc(main_#t~mem15#1.base, main_#t~mem15#1.offset);havoc main_#t~mem14#1.base, main_#t~mem14#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset; {7453#(= (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:45:38,711 INFO L290 TraceCheckUtils]: 24: Hoare triple {7453#(= (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_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L546 {7454#(= |ULTIMATE.start_main_#t~mem16#1.offset| 0)} is VALID [2022-02-20 23:45:38,711 INFO L290 TraceCheckUtils]: 25: Hoare triple {7454#(= |ULTIMATE.start_main_#t~mem16#1.offset| 0)} assume !(0 == main_#t~mem16#1.offset); {7451#false} is VALID [2022-02-20 23:45:38,711 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:45:38,711 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:45:38,711 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [515709627] [2022-02-20 23:45:38,711 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [515709627] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:38,712 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:38,712 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:45:38,712 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [297592672] [2022-02-20 23:45:38,712 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:38,712 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 6.5) internal successors, (26), 5 states have internal predecessors, (26), 0 states have call successors, (0), 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 26 [2022-02-20 23:45:38,712 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:38,713 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 6.5) internal successors, (26), 5 states have internal predecessors, (26), 0 states have call successors, (0), 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:45:38,729 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:38,729 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:45:38,729 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:45:38,729 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:45:38,729 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:45:38,729 INFO L87 Difference]: Start difference. First operand 90 states and 94 transitions. Second operand has 5 states, 4 states have (on average 6.5) internal successors, (26), 5 states have internal predecessors, (26), 0 states have call successors, (0), 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:45:38,863 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:38,863 INFO L93 Difference]: Finished difference Result 89 states and 93 transitions. [2022-02-20 23:45:38,863 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:45:38,863 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 6.5) internal successors, (26), 5 states have internal predecessors, (26), 0 states have call successors, (0), 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 26 [2022-02-20 23:45:38,863 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:38,863 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 6.5) internal successors, (26), 5 states have internal predecessors, (26), 0 states have call successors, (0), 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:45:38,864 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 63 transitions. [2022-02-20 23:45:38,864 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 6.5) internal successors, (26), 5 states have internal predecessors, (26), 0 states have call successors, (0), 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:45:38,864 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 63 transitions. [2022-02-20 23:45:38,864 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 63 transitions. [2022-02-20 23:45:38,918 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:38,919 INFO L225 Difference]: With dead ends: 89 [2022-02-20 23:45:38,919 INFO L226 Difference]: Without dead ends: 89 [2022-02-20 23:45:38,919 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:45:38,920 INFO L933 BasicCegarLoop]: 39 mSDtfsCounter, 65 mSDsluCounter, 56 mSDsCounter, 0 mSdLazyCounter, 61 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 65 SdHoareTripleChecker+Valid, 95 SdHoareTripleChecker+Invalid, 63 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 61 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:38,920 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [65 Valid, 95 Invalid, 63 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 61 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:45:38,920 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 89 states. [2022-02-20 23:45:38,921 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 89 to 89. [2022-02-20 23:45:38,921 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:38,921 INFO L82 GeneralOperation]: Start isEquivalent. First operand 89 states. Second operand has 89 states, 74 states have (on average 1.2567567567567568) internal successors, (93), 88 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:45:38,921 INFO L74 IsIncluded]: Start isIncluded. First operand 89 states. Second operand has 89 states, 74 states have (on average 1.2567567567567568) internal successors, (93), 88 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:45:38,922 INFO L87 Difference]: Start difference. First operand 89 states. Second operand has 89 states, 74 states have (on average 1.2567567567567568) internal successors, (93), 88 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:45:38,922 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:38,922 INFO L93 Difference]: Finished difference Result 89 states and 93 transitions. [2022-02-20 23:45:38,922 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 93 transitions. [2022-02-20 23:45:38,923 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:38,923 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:38,923 INFO L74 IsIncluded]: Start isIncluded. First operand has 89 states, 74 states have (on average 1.2567567567567568) internal successors, (93), 88 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 89 states. [2022-02-20 23:45:38,923 INFO L87 Difference]: Start difference. First operand has 89 states, 74 states have (on average 1.2567567567567568) internal successors, (93), 88 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 89 states. [2022-02-20 23:45:38,924 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:38,924 INFO L93 Difference]: Finished difference Result 89 states and 93 transitions. [2022-02-20 23:45:38,924 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 93 transitions. [2022-02-20 23:45:38,924 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:38,924 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:38,924 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:38,924 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:38,924 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 89 states, 74 states have (on average 1.2567567567567568) internal successors, (93), 88 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:45:38,925 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 89 states to 89 states and 93 transitions. [2022-02-20 23:45:38,925 INFO L78 Accepts]: Start accepts. Automaton has 89 states and 93 transitions. Word has length 26 [2022-02-20 23:45:38,925 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:38,925 INFO L470 AbstractCegarLoop]: Abstraction has 89 states and 93 transitions. [2022-02-20 23:45:38,925 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 6.5) internal successors, (26), 5 states have internal predecessors, (26), 0 states have call successors, (0), 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:45:38,925 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 93 transitions. [2022-02-20 23:45:38,925 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-02-20 23:45:38,925 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:38,925 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] [2022-02-20 23:45:38,926 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable17 [2022-02-20 23:45:38,926 INFO L402 AbstractCegarLoop]: === Iteration 19 === Targeting ULTIMATE.startErr30ASSERT_VIOLATIONMEMORY_FREE === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:38,926 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:38,926 INFO L85 PathProgramCache]: Analyzing trace with hash 1365898173, now seen corresponding path program 1 times [2022-02-20 23:45:38,926 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:45:38,926 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1251265598] [2022-02-20 23:45:38,926 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:38,926 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:45:38,943 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:38,970 INFO L290 TraceCheckUtils]: 0: Hoare triple {7817#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(14, 2); {7817#true} is VALID [2022-02-20 23:45:38,971 INFO L290 TraceCheckUtils]: 1: Hoare triple {7817#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {7817#true} is VALID [2022-02-20 23:45:38,971 INFO L290 TraceCheckUtils]: 2: Hoare triple {7817#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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {7819#(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:45:38,972 INFO L290 TraceCheckUtils]: 3: Hoare triple {7819#(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~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L531 {7819#(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:45:38,972 INFO L290 TraceCheckUtils]: 4: Hoare triple {7819#(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~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L531-1 {7819#(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:45:38,972 INFO L290 TraceCheckUtils]: 5: Hoare triple {7819#(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~mem4#1.base, append_#t~mem4#1.offset; {7819#(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:45:38,973 INFO L290 TraceCheckUtils]: 6: Hoare triple {7819#(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_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L532 {7819#(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:45:38,973 INFO L290 TraceCheckUtils]: 7: Hoare triple {7819#(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~mem5#1.base != 0 || append_#t~mem5#1.offset != 0);call append_#t~malloc8#1.base, append_#t~malloc8#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite9#1.base, append_#t~ite9#1.offset := append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {7819#(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:45:38,974 INFO L290 TraceCheckUtils]: 8: Hoare triple {7819#(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~ite9#1.base, append_#t~ite9#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L532-3 {7819#(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:45:38,974 INFO L290 TraceCheckUtils]: 9: Hoare triple {7819#(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;havoc append_#t~ite9#1.base, append_#t~ite9#1.offset;havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {7819#(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:45:38,975 INFO L290 TraceCheckUtils]: 10: Hoare triple {7819#(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: L535 {7820#(<= (+ (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:45:38,975 INFO L290 TraceCheckUtils]: 11: Hoare triple {7820#(<= (+ (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; {7820#(<= (+ (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:45:38,975 INFO L290 TraceCheckUtils]: 12: Hoare triple {7820#(<= (+ (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~nondet10#1 && main_#t~nondet10#1 <= 2147483647; {7820#(<= (+ (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:45:38,976 INFO L290 TraceCheckUtils]: 13: Hoare triple {7820#(<= (+ (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~nondet10#1);havoc main_#t~nondet10#1; {7820#(<= (+ (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:45:38,976 INFO L290 TraceCheckUtils]: 14: Hoare triple {7820#(<= (+ (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~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L540-5 {7820#(<= (+ (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:45:38,976 INFO L290 TraceCheckUtils]: 15: Hoare triple {7820#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 1) |#StackHeapBarrier|)} assume main_#t~mem11#1.base != 0 || main_#t~mem11#1.offset != 0;havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {7820#(<= (+ (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:45:38,976 INFO L290 TraceCheckUtils]: 16: Hoare triple {7820#(<= (+ (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~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L544 {7820#(<= (+ (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:45:38,977 INFO L290 TraceCheckUtils]: 17: Hoare triple {7820#(<= (+ (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~mem13#1.base, main_#t~mem13#1.offset := read~$Pointer$(main_#t~mem12#1.base, main_#t~mem12#1.offset, 4); srcloc: L544-1 {7820#(<= (+ (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:45:38,977 INFO L290 TraceCheckUtils]: 18: Hoare triple {7820#(<= (+ (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~mem13#1.base, main_#t~mem13#1.offset;havoc main_#t~mem12#1.base, main_#t~mem12#1.offset;havoc main_#t~mem13#1.base, main_#t~mem13#1.offset; {7820#(<= (+ (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:45:38,977 INFO L290 TraceCheckUtils]: 19: Hoare triple {7820#(<= (+ (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~mem14#1.base, main_#t~mem14#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L545 {7820#(<= (+ (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:45:38,977 INFO L290 TraceCheckUtils]: 20: Hoare triple {7820#(<= (+ (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_#t~mem14#1.base, 4 + main_#t~mem14#1.offset, 4); srcloc: L545-1 {7820#(<= (+ (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:45:38,977 INFO L290 TraceCheckUtils]: 21: Hoare triple {7820#(<= (+ (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~mem15#1.offset; {7820#(<= (+ (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:45:38,978 INFO L290 TraceCheckUtils]: 22: Hoare triple {7820#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 1) |#StackHeapBarrier|)} assume main_#t~mem15#1.base < #StackHeapBarrier; {7820#(<= (+ (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:45:38,979 INFO L290 TraceCheckUtils]: 23: Hoare triple {7820#(<= (+ (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~mem15#1.base || 1 == #valid[main_#t~mem15#1.base];call ULTIMATE.dealloc(main_#t~mem15#1.base, main_#t~mem15#1.offset);havoc main_#t~mem14#1.base, main_#t~mem14#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset; {7820#(<= (+ (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:45:38,979 INFO L290 TraceCheckUtils]: 24: Hoare triple {7820#(<= (+ (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_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L546 {7821#(<= (+ |ULTIMATE.start_main_#t~mem16#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:45:38,980 INFO L290 TraceCheckUtils]: 25: Hoare triple {7821#(<= (+ |ULTIMATE.start_main_#t~mem16#1.base| 1) |#StackHeapBarrier|)} assume 0 == main_#t~mem16#1.offset; {7821#(<= (+ |ULTIMATE.start_main_#t~mem16#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:45:38,980 INFO L290 TraceCheckUtils]: 26: Hoare triple {7821#(<= (+ |ULTIMATE.start_main_#t~mem16#1.base| 1) |#StackHeapBarrier|)} assume !(main_#t~mem16#1.base < #StackHeapBarrier); {7818#false} is VALID [2022-02-20 23:45:38,980 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:45:38,980 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:45:38,980 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1251265598] [2022-02-20 23:45:38,980 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1251265598] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:38,980 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:38,981 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:45:38,981 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [870026664] [2022-02-20 23:45:38,981 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:38,981 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 6.75) internal successors, (27), 5 states have internal predecessors, (27), 0 states have call successors, (0), 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 27 [2022-02-20 23:45:38,981 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:38,981 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 6.75) internal successors, (27), 5 states have internal predecessors, (27), 0 states have call successors, (0), 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:45:38,999 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:38,999 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:45:38,999 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:45:38,999 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:45:38,999 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:45:38,999 INFO L87 Difference]: Start difference. First operand 89 states and 93 transitions. Second operand has 5 states, 4 states have (on average 6.75) internal successors, (27), 5 states have internal predecessors, (27), 0 states have call successors, (0), 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:45:39,174 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:39,174 INFO L93 Difference]: Finished difference Result 88 states and 92 transitions. [2022-02-20 23:45:39,174 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:45:39,174 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 6.75) internal successors, (27), 5 states have internal predecessors, (27), 0 states have call successors, (0), 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 27 [2022-02-20 23:45:39,174 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:39,174 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 6.75) internal successors, (27), 5 states have internal predecessors, (27), 0 states have call successors, (0), 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:45:39,175 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 64 transitions. [2022-02-20 23:45:39,175 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 6.75) internal successors, (27), 5 states have internal predecessors, (27), 0 states have call successors, (0), 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:45:39,175 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 64 transitions. [2022-02-20 23:45:39,176 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 64 transitions. [2022-02-20 23:45:39,221 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:39,222 INFO L225 Difference]: With dead ends: 88 [2022-02-20 23:45:39,222 INFO L226 Difference]: Without dead ends: 88 [2022-02-20 23:45:39,222 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:45:39,223 INFO L933 BasicCegarLoop]: 32 mSDtfsCounter, 58 mSDsluCounter, 45 mSDsCounter, 0 mSdLazyCounter, 86 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 58 SdHoareTripleChecker+Valid, 77 SdHoareTripleChecker+Invalid, 90 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 86 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:39,224 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [58 Valid, 77 Invalid, 90 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 86 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:45:39,224 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 88 states. [2022-02-20 23:45:39,225 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 88 to 88. [2022-02-20 23:45:39,225 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:39,225 INFO L82 GeneralOperation]: Start isEquivalent. First operand 88 states. Second operand has 88 states, 74 states have (on average 1.2432432432432432) internal successors, (92), 87 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:45:39,225 INFO L74 IsIncluded]: Start isIncluded. First operand 88 states. Second operand has 88 states, 74 states have (on average 1.2432432432432432) internal successors, (92), 87 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:45:39,225 INFO L87 Difference]: Start difference. First operand 88 states. Second operand has 88 states, 74 states have (on average 1.2432432432432432) internal successors, (92), 87 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:45:39,226 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:39,226 INFO L93 Difference]: Finished difference Result 88 states and 92 transitions. [2022-02-20 23:45:39,226 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 92 transitions. [2022-02-20 23:45:39,226 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:39,226 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:39,226 INFO L74 IsIncluded]: Start isIncluded. First operand has 88 states, 74 states have (on average 1.2432432432432432) internal successors, (92), 87 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 88 states. [2022-02-20 23:45:39,226 INFO L87 Difference]: Start difference. First operand has 88 states, 74 states have (on average 1.2432432432432432) internal successors, (92), 87 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 88 states. [2022-02-20 23:45:39,227 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:39,227 INFO L93 Difference]: Finished difference Result 88 states and 92 transitions. [2022-02-20 23:45:39,227 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 92 transitions. [2022-02-20 23:45:39,227 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:39,227 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:39,227 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:39,227 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:39,228 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 88 states, 74 states have (on average 1.2432432432432432) internal successors, (92), 87 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:45:39,233 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 88 states to 88 states and 92 transitions. [2022-02-20 23:45:39,233 INFO L78 Accepts]: Start accepts. Automaton has 88 states and 92 transitions. Word has length 27 [2022-02-20 23:45:39,233 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:39,233 INFO L470 AbstractCegarLoop]: Abstraction has 88 states and 92 transitions. [2022-02-20 23:45:39,233 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 6.75) internal successors, (27), 5 states have internal predecessors, (27), 0 states have call successors, (0), 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:45:39,233 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 92 transitions. [2022-02-20 23:45:39,233 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-02-20 23:45:39,233 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:39,233 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:45:39,234 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable18 [2022-02-20 23:45:39,234 INFO L402 AbstractCegarLoop]: === Iteration 20 === Targeting ULTIMATE.startErr31ASSERT_VIOLATIONMEMORY_FREE === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:39,234 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:39,234 INFO L85 PathProgramCache]: Analyzing trace with hash -606829485, now seen corresponding path program 1 times [2022-02-20 23:45:39,234 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:45:39,234 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1353007865] [2022-02-20 23:45:39,234 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:39,234 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:45:39,261 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:39,466 INFO L290 TraceCheckUtils]: 0: Hoare triple {8180#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(14, 2); {8180#true} is VALID [2022-02-20 23:45:39,466 INFO L290 TraceCheckUtils]: 1: Hoare triple {8180#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {8180#true} is VALID [2022-02-20 23:45:39,467 INFO L290 TraceCheckUtils]: 2: Hoare triple {8180#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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {8182#(and (or (= |ULTIMATE.start_append_~plist#1.base| |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:45:39,467 INFO L290 TraceCheckUtils]: 3: Hoare triple {8182#(and (or (= |ULTIMATE.start_append_~plist#1.base| |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 append_#t~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L531 {8182#(and (or (= |ULTIMATE.start_append_~plist#1.base| |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:45:39,468 INFO L290 TraceCheckUtils]: 4: Hoare triple {8182#(and (or (= |ULTIMATE.start_append_~plist#1.base| |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_#t~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L531-1 {8183#(and (or (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|) (and (= (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:45:39,469 INFO L290 TraceCheckUtils]: 5: Hoare triple {8183#(and (or (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|) (and (= (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~mem4#1.base, append_#t~mem4#1.offset; {8183#(and (or (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|) (and (= (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:45:39,469 INFO L290 TraceCheckUtils]: 6: Hoare triple {8183#(and (or (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|) (and (= (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 append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L532 {8183#(and (or (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|) (and (= (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:45:39,470 INFO L290 TraceCheckUtils]: 7: Hoare triple {8183#(and (or (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|) (and (= (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|))} assume !(append_#t~mem5#1.base != 0 || append_#t~mem5#1.offset != 0);call append_#t~malloc8#1.base, append_#t~malloc8#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite9#1.base, append_#t~ite9#1.offset := append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {8184#(and (or (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|) (and (not (= |ULTIMATE.start_append_#t~ite9#1.base| |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:45:39,471 INFO L290 TraceCheckUtils]: 8: Hoare triple {8184#(and (or (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|) (and (not (= |ULTIMATE.start_append_#t~ite9#1.base| |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_#t~ite9#1.base, append_#t~ite9#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L532-3 {8185#(and (or (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|) (and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) (+ |ULTIMATE.start_append_~item~0#1.offset| 4)) |ULTIMATE.start_append_~item~0#1.base|)))) (= (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:45:39,471 INFO L290 TraceCheckUtils]: 9: Hoare triple {8185#(and (or (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|) (and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) (+ |ULTIMATE.start_append_~item~0#1.offset| 4)) |ULTIMATE.start_append_~item~0#1.base|)))) (= (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~mem5#1.base, append_#t~mem5#1.offset;havoc append_#t~ite9#1.base, append_#t~ite9#1.offset;havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {8185#(and (or (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|) (and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) (+ |ULTIMATE.start_append_~item~0#1.offset| 4)) |ULTIMATE.start_append_~item~0#1.base|)))) (= (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:45:39,472 INFO L290 TraceCheckUtils]: 10: Hoare triple {8185#(and (or (= |ULTIMATE.start_append_~plist#1.base| |ULTIMATE.start_append_~item~0#1.base|) (and (= |ULTIMATE.start_append_~item~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) (+ |ULTIMATE.start_append_~item~0#1.offset| 4)) |ULTIMATE.start_append_~item~0#1.base|)))) (= (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: L535 {8186#(and (or (= |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|)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4)))) (= (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:45:39,473 INFO L290 TraceCheckUtils]: 11: Hoare triple {8186#(and (or (= |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|)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4)))) (= (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; {8186#(and (or (= |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|)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4)))) (= (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:45:39,473 INFO L290 TraceCheckUtils]: 12: Hoare triple {8186#(and (or (= |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|)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4)))) (= (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~nondet10#1 && main_#t~nondet10#1 <= 2147483647; {8186#(and (or (= |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|)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4)))) (= (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:45:39,474 INFO L290 TraceCheckUtils]: 13: Hoare triple {8186#(and (or (= |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|)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4)))) (= (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~nondet10#1);havoc main_#t~nondet10#1; {8186#(and (or (= |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|)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4)))) (= (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:45:39,474 INFO L290 TraceCheckUtils]: 14: Hoare triple {8186#(and (or (= |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|)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4)))) (= (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~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L540-5 {8186#(and (or (= |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|)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4)))) (= (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:45:39,475 INFO L290 TraceCheckUtils]: 15: Hoare triple {8186#(and (or (= |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|)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4)))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1))} assume main_#t~mem11#1.base != 0 || main_#t~mem11#1.offset != 0;havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {8186#(and (or (= |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|)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4)))) (= (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:45:39,476 INFO L290 TraceCheckUtils]: 16: Hoare triple {8186#(and (or (= |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|)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4)))) (= (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~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L544 {8187#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1) (or (= |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|)) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~mem12#1.base|) 4))) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) |ULTIMATE.start_main_#t~mem12#1.base|))))} is VALID [2022-02-20 23:45:39,477 INFO L290 TraceCheckUtils]: 17: Hoare triple {8187#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1) (or (= |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|)) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~mem12#1.base|) 4))) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) |ULTIMATE.start_main_#t~mem12#1.base|))))} SUMMARY for call main_#t~mem13#1.base, main_#t~mem13#1.offset := read~$Pointer$(main_#t~mem12#1.base, main_#t~mem12#1.offset, 4); srcloc: L544-1 {8186#(and (or (= |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|)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4)))) (= (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:45:39,477 INFO L290 TraceCheckUtils]: 18: Hoare triple {8186#(and (or (= |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|)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4)))) (= (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~mem13#1.base, main_#t~mem13#1.offset;havoc main_#t~mem12#1.base, main_#t~mem12#1.offset;havoc main_#t~mem13#1.base, main_#t~mem13#1.offset; {8186#(and (or (= |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|)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4)))) (= (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:45:39,478 INFO L290 TraceCheckUtils]: 19: Hoare triple {8186#(and (or (= |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|)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 4)))) (= (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~mem14#1.base, main_#t~mem14#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L545 {8188#(and (or (= |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|)) (and (or (not (= 0 |ULTIMATE.start_main_#t~mem14#1.offset|)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~mem14#1.base|) (+ 4 |ULTIMATE.start_main_#t~mem14#1.offset|))))) (or (= 0 |ULTIMATE.start_main_#t~mem14#1.offset|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) |ULTIMATE.start_main_#t~mem14#1.offset|)))) (= (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:45:39,479 INFO L290 TraceCheckUtils]: 20: Hoare triple {8188#(and (or (= |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|)) (and (or (not (= 0 |ULTIMATE.start_main_#t~mem14#1.offset|)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~mem14#1.base|) (+ 4 |ULTIMATE.start_main_#t~mem14#1.offset|))))) (or (= 0 |ULTIMATE.start_main_#t~mem14#1.offset|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) |ULTIMATE.start_main_#t~mem14#1.offset|)))) (= (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_#t~mem14#1.base, 4 + main_#t~mem14#1.offset, 4); srcloc: L545-1 {8189#(or (= |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|)) (and (not (= |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|))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1)) (not (= (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:45:39,479 INFO L290 TraceCheckUtils]: 21: Hoare triple {8189#(or (= |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|)) (and (not (= |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|))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1)) (not (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0)))} assume 0 == main_#t~mem15#1.offset; {8189#(or (= |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|)) (and (not (= |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|))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1)) (not (= (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:45:39,480 INFO L290 TraceCheckUtils]: 22: Hoare triple {8189#(or (= |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|)) (and (not (= |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|))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1)) (not (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0)))} assume main_#t~mem15#1.base < #StackHeapBarrier; {8189#(or (= |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|)) (and (not (= |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|))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1)) (not (= (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:45:39,480 INFO L290 TraceCheckUtils]: 23: Hoare triple {8189#(or (= |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|)) (and (not (= |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|))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) 1)) (not (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) 0)))} assume 0 == main_#t~mem15#1.base || 1 == #valid[main_#t~mem15#1.base];call ULTIMATE.dealloc(main_#t~mem15#1.base, main_#t~mem15#1.offset);havoc main_#t~mem14#1.base, main_#t~mem14#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset; {8190#(or (= |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|)) (not (= (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:45:39,481 INFO L290 TraceCheckUtils]: 24: Hoare triple {8190#(or (= |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|)) (not (= (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))} SUMMARY for call main_#t~mem16#1.base, main_#t~mem16#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L546 {8191#(or (not (= |ULTIMATE.start_main_#t~mem16#1.offset| 0)) (= (select |#valid| |ULTIMATE.start_main_#t~mem16#1.base|) 1))} is VALID [2022-02-20 23:45:39,481 INFO L290 TraceCheckUtils]: 25: Hoare triple {8191#(or (not (= |ULTIMATE.start_main_#t~mem16#1.offset| 0)) (= (select |#valid| |ULTIMATE.start_main_#t~mem16#1.base|) 1))} assume 0 == main_#t~mem16#1.offset; {8192#(= (select |#valid| |ULTIMATE.start_main_#t~mem16#1.base|) 1)} is VALID [2022-02-20 23:45:39,482 INFO L290 TraceCheckUtils]: 26: Hoare triple {8192#(= (select |#valid| |ULTIMATE.start_main_#t~mem16#1.base|) 1)} assume main_#t~mem16#1.base < #StackHeapBarrier; {8192#(= (select |#valid| |ULTIMATE.start_main_#t~mem16#1.base|) 1)} is VALID [2022-02-20 23:45:39,482 INFO L290 TraceCheckUtils]: 27: Hoare triple {8192#(= (select |#valid| |ULTIMATE.start_main_#t~mem16#1.base|) 1)} assume !(0 == main_#t~mem16#1.base || 1 == #valid[main_#t~mem16#1.base]); {8181#false} is VALID [2022-02-20 23:45:39,482 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:45:39,482 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:45:39,483 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1353007865] [2022-02-20 23:45:39,483 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1353007865] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:39,483 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:39,483 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-02-20 23:45:39,483 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1485138508] [2022-02-20 23:45:39,483 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:39,484 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 13 states have internal predecessors, (28), 0 states have call successors, (0), 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 28 [2022-02-20 23:45:39,484 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:39,484 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 13 states have internal predecessors, (28), 0 states have call successors, (0), 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:45:39,508 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:39,508 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-02-20 23:45:39,509 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:45:39,509 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-02-20 23:45:39,509 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=123, Unknown=0, NotChecked=0, Total=156 [2022-02-20 23:45:39,509 INFO L87 Difference]: Start difference. First operand 88 states and 92 transitions. Second operand has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 13 states have internal predecessors, (28), 0 states have call successors, (0), 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:45:40,364 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:40,364 INFO L93 Difference]: Finished difference Result 92 states and 96 transitions. [2022-02-20 23:45:40,364 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-02-20 23:45:40,364 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 13 states have internal predecessors, (28), 0 states have call successors, (0), 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 28 [2022-02-20 23:45:40,364 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:40,365 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 13 states have internal predecessors, (28), 0 states have call successors, (0), 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:45:40,365 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 88 transitions. [2022-02-20 23:45:40,365 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 13 states have internal predecessors, (28), 0 states have call successors, (0), 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:45:40,366 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 88 transitions. [2022-02-20 23:45:40,366 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 88 transitions. [2022-02-20 23:45:40,453 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:45:40,454 INFO L225 Difference]: With dead ends: 92 [2022-02-20 23:45:40,454 INFO L226 Difference]: Without dead ends: 92 [2022-02-20 23:45:40,455 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 24 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 110 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=134, Invalid=466, Unknown=0, NotChecked=0, Total=600 [2022-02-20 23:45:40,455 INFO L933 BasicCegarLoop]: 31 mSDtfsCounter, 172 mSDsluCounter, 144 mSDsCounter, 0 mSdLazyCounter, 261 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 172 SdHoareTripleChecker+Valid, 175 SdHoareTripleChecker+Invalid, 276 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 261 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:40,455 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [172 Valid, 175 Invalid, 276 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 261 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:45:40,455 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 92 states. [2022-02-20 23:45:40,456 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 92 to 92. [2022-02-20 23:45:40,456 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:40,456 INFO L82 GeneralOperation]: Start isEquivalent. First operand 92 states. Second operand has 92 states, 78 states have (on average 1.2307692307692308) internal successors, (96), 91 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:45:40,457 INFO L74 IsIncluded]: Start isIncluded. First operand 92 states. Second operand has 92 states, 78 states have (on average 1.2307692307692308) internal successors, (96), 91 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:45:40,457 INFO L87 Difference]: Start difference. First operand 92 states. Second operand has 92 states, 78 states have (on average 1.2307692307692308) internal successors, (96), 91 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:45:40,457 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:40,457 INFO L93 Difference]: Finished difference Result 92 states and 96 transitions. [2022-02-20 23:45:40,457 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 96 transitions. [2022-02-20 23:45:40,458 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:40,458 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:40,458 INFO L74 IsIncluded]: Start isIncluded. First operand has 92 states, 78 states have (on average 1.2307692307692308) internal successors, (96), 91 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:45:40,458 INFO L87 Difference]: Start difference. First operand has 92 states, 78 states have (on average 1.2307692307692308) internal successors, (96), 91 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:45:40,459 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:40,459 INFO L93 Difference]: Finished difference Result 92 states and 96 transitions. [2022-02-20 23:45:40,459 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 96 transitions. [2022-02-20 23:45:40,460 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:40,460 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:40,460 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:40,460 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:40,460 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 92 states, 78 states have (on average 1.2307692307692308) internal successors, (96), 91 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:45:40,461 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 92 states to 92 states and 96 transitions. [2022-02-20 23:45:40,461 INFO L78 Accepts]: Start accepts. Automaton has 92 states and 96 transitions. Word has length 28 [2022-02-20 23:45:40,461 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:40,461 INFO L470 AbstractCegarLoop]: Abstraction has 92 states and 96 transitions. [2022-02-20 23:45:40,461 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 13 states have internal predecessors, (28), 0 states have call successors, (0), 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:45:40,461 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 96 transitions. [2022-02-20 23:45:40,462 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-02-20 23:45:40,462 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:40,462 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, 1] [2022-02-20 23:45:40,462 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable19 [2022-02-20 23:45:40,462 INFO L402 AbstractCegarLoop]: === Iteration 21 === Targeting ULTIMATE.startErr32REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:40,462 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:40,463 INFO L85 PathProgramCache]: Analyzing trace with hash -1631844736, now seen corresponding path program 1 times [2022-02-20 23:45:40,463 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:45:40,463 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1270525321] [2022-02-20 23:45:40,463 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:40,463 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:45:40,482 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:40,539 INFO L290 TraceCheckUtils]: 0: Hoare triple {8587#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(14, 2); {8587#true} is VALID [2022-02-20 23:45:40,540 INFO L290 TraceCheckUtils]: 1: Hoare triple {8587#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {8589#(= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1)} is VALID [2022-02-20 23:45:40,540 INFO L290 TraceCheckUtils]: 2: Hoare triple {8589#(= (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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {8590#(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:45:40,541 INFO L290 TraceCheckUtils]: 3: Hoare triple {8590#(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~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4); srcloc: L531 {8590#(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:45:40,541 INFO L290 TraceCheckUtils]: 4: Hoare triple {8590#(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~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L531-1 {8590#(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:45:40,542 INFO L290 TraceCheckUtils]: 5: Hoare triple {8590#(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~mem4#1.base, append_#t~mem4#1.offset; {8590#(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:45:40,542 INFO L290 TraceCheckUtils]: 6: Hoare triple {8590#(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_~item~0#1.base, append_~item~0#1.offset, 4); srcloc: L532 {8590#(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:45:40,543 INFO L290 TraceCheckUtils]: 7: Hoare triple {8590#(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~mem5#1.base != 0 || append_#t~mem5#1.offset != 0);call append_#t~malloc8#1.base, append_#t~malloc8#1.offset := #Ultimate.allocOnHeap(8);append_#t~ite9#1.base, append_#t~ite9#1.offset := append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {8590#(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:45:40,543 INFO L290 TraceCheckUtils]: 8: Hoare triple {8590#(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~ite9#1.base, append_#t~ite9#1.offset, append_~item~0#1.base, 4 + append_~item~0#1.offset, 4); srcloc: L532-3 {8590#(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:45:40,544 INFO L290 TraceCheckUtils]: 9: Hoare triple {8590#(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;havoc append_#t~ite9#1.base, append_#t~ite9#1.offset;havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {8590#(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:45:40,544 INFO L290 TraceCheckUtils]: 10: Hoare triple {8590#(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: L535 {8591#(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:45:40,545 INFO L290 TraceCheckUtils]: 11: Hoare triple {8591#(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; {8591#(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:45:40,545 INFO L290 TraceCheckUtils]: 12: Hoare triple {8591#(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~nondet10#1 && main_#t~nondet10#1 <= 2147483647; {8591#(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:45:40,545 INFO L290 TraceCheckUtils]: 13: Hoare triple {8591#(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~nondet10#1);havoc main_#t~nondet10#1; {8591#(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:45:40,546 INFO L290 TraceCheckUtils]: 14: Hoare triple {8591#(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~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L540-5 {8591#(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:45:40,546 INFO L290 TraceCheckUtils]: 15: Hoare triple {8591#(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_#t~mem11#1.base != 0 || main_#t~mem11#1.offset != 0;havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {8591#(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:45:40,546 INFO L290 TraceCheckUtils]: 16: Hoare triple {8591#(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~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L544 {8591#(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:45:40,547 INFO L290 TraceCheckUtils]: 17: Hoare triple {8591#(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~mem13#1.base, main_#t~mem13#1.offset := read~$Pointer$(main_#t~mem12#1.base, main_#t~mem12#1.offset, 4); srcloc: L544-1 {8591#(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:45:40,547 INFO L290 TraceCheckUtils]: 18: Hoare triple {8591#(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~mem13#1.base, main_#t~mem13#1.offset;havoc main_#t~mem12#1.base, main_#t~mem12#1.offset;havoc main_#t~mem13#1.base, main_#t~mem13#1.offset; {8591#(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:45:40,548 INFO L290 TraceCheckUtils]: 19: Hoare triple {8591#(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~mem14#1.base, main_#t~mem14#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L545 {8591#(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:45:40,548 INFO L290 TraceCheckUtils]: 20: Hoare triple {8591#(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_#t~mem14#1.base, 4 + main_#t~mem14#1.offset, 4); srcloc: L545-1 {8591#(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:45:40,548 INFO L290 TraceCheckUtils]: 21: Hoare triple {8591#(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~mem15#1.offset; {8591#(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:45:40,549 INFO L290 TraceCheckUtils]: 22: Hoare triple {8591#(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_#t~mem15#1.base < #StackHeapBarrier; {8591#(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:45:40,549 INFO L290 TraceCheckUtils]: 23: Hoare triple {8591#(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~mem15#1.base || 1 == #valid[main_#t~mem15#1.base];call ULTIMATE.dealloc(main_#t~mem15#1.base, main_#t~mem15#1.offset);havoc main_#t~mem14#1.base, main_#t~mem14#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset; {8591#(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:45:40,550 INFO L290 TraceCheckUtils]: 24: Hoare triple {8591#(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_~#list~0#1.base, main_~#list~0#1.offset, 4); srcloc: L546 {8592#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (not (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_main_#t~mem16#1.base|)))} is VALID [2022-02-20 23:45:40,550 INFO L290 TraceCheckUtils]: 25: Hoare triple {8592#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (not (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_main_#t~mem16#1.base|)))} assume 0 == main_#t~mem16#1.offset; {8592#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (not (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_main_#t~mem16#1.base|)))} is VALID [2022-02-20 23:45:40,550 INFO L290 TraceCheckUtils]: 26: Hoare triple {8592#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (not (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_main_#t~mem16#1.base|)))} assume main_#t~mem16#1.base < #StackHeapBarrier; {8592#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (not (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_main_#t~mem16#1.base|)))} is VALID [2022-02-20 23:45:40,551 INFO L290 TraceCheckUtils]: 27: Hoare triple {8592#(and (= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1) (not (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_main_#t~mem16#1.base|)))} assume 0 == main_#t~mem16#1.base || 1 == #valid[main_#t~mem16#1.base];call ULTIMATE.dealloc(main_#t~mem16#1.base, main_#t~mem16#1.offset);havoc main_#t~mem16#1.base, main_#t~mem16#1.offset; {8589#(= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1)} is VALID [2022-02-20 23:45:40,551 INFO L290 TraceCheckUtils]: 28: Hoare triple {8589#(= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) 1)} assume !(1 == #valid[main_~#list~0#1.base]); {8588#false} is VALID [2022-02-20 23:45:40,551 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:45:40,551 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:45:40,552 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1270525321] [2022-02-20 23:45:40,552 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1270525321] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:40,552 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:40,552 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:45:40,553 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [375076536] [2022-02-20 23:45:40,553 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:40,554 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 5.8) internal successors, (29), 6 states have internal predecessors, (29), 0 states have call successors, (0), 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 29 [2022-02-20 23:45:40,554 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:40,554 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 5.8) internal successors, (29), 6 states have internal predecessors, (29), 0 states have call successors, (0), 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:45:40,571 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 29 edges. 29 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:40,571 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:45:40,572 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:45:40,572 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:45:40,572 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:45:40,572 INFO L87 Difference]: Start difference. First operand 92 states and 96 transitions. Second operand has 6 states, 5 states have (on average 5.8) internal successors, (29), 6 states have internal predecessors, (29), 0 states have call successors, (0), 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:45:40,779 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:40,779 INFO L93 Difference]: Finished difference Result 91 states and 95 transitions. [2022-02-20 23:45:40,779 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-20 23:45:40,780 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 5.8) internal successors, (29), 6 states have internal predecessors, (29), 0 states have call successors, (0), 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 29 [2022-02-20 23:45:40,780 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:40,780 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 5.8) internal successors, (29), 6 states have internal predecessors, (29), 0 states have call successors, (0), 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:45:40,780 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 61 transitions. [2022-02-20 23:45:40,780 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 5.8) internal successors, (29), 6 states have internal predecessors, (29), 0 states have call successors, (0), 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:45:40,781 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 61 transitions. [2022-02-20 23:45:40,781 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 61 transitions. [2022-02-20 23:45:40,826 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:45:40,827 INFO L225 Difference]: With dead ends: 91 [2022-02-20 23:45:40,827 INFO L226 Difference]: Without dead ends: 91 [2022-02-20 23:45:40,827 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 11 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=40, Invalid=70, Unknown=0, NotChecked=0, Total=110 [2022-02-20 23:45:40,827 INFO L933 BasicCegarLoop]: 27 mSDtfsCounter, 103 mSDsluCounter, 35 mSDsCounter, 0 mSdLazyCounter, 85 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 103 SdHoareTripleChecker+Valid, 62 SdHoareTripleChecker+Invalid, 104 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 85 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:40,828 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [103 Valid, 62 Invalid, 104 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 85 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:45:40,828 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 91 states. [2022-02-20 23:45:40,829 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 91 to 91. [2022-02-20 23:45:40,829 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:40,829 INFO L82 GeneralOperation]: Start isEquivalent. First operand 91 states. Second operand has 91 states, 78 states have (on average 1.2179487179487178) internal successors, (95), 90 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:45:40,829 INFO L74 IsIncluded]: Start isIncluded. First operand 91 states. Second operand has 91 states, 78 states have (on average 1.2179487179487178) internal successors, (95), 90 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:45:40,829 INFO L87 Difference]: Start difference. First operand 91 states. Second operand has 91 states, 78 states have (on average 1.2179487179487178) internal successors, (95), 90 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:45:40,830 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:40,830 INFO L93 Difference]: Finished difference Result 91 states and 95 transitions. [2022-02-20 23:45:40,830 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 95 transitions. [2022-02-20 23:45:40,831 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:40,831 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:40,831 INFO L74 IsIncluded]: Start isIncluded. First operand has 91 states, 78 states have (on average 1.2179487179487178) internal successors, (95), 90 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 91 states. [2022-02-20 23:45:40,831 INFO L87 Difference]: Start difference. First operand has 91 states, 78 states have (on average 1.2179487179487178) internal successors, (95), 90 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 91 states. [2022-02-20 23:45:40,832 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:40,832 INFO L93 Difference]: Finished difference Result 91 states and 95 transitions. [2022-02-20 23:45:40,832 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 95 transitions. [2022-02-20 23:45:40,832 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:40,832 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:40,833 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:40,833 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:40,833 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 91 states, 78 states have (on average 1.2179487179487178) internal successors, (95), 90 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:45:40,833 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 91 states to 91 states and 95 transitions. [2022-02-20 23:45:40,834 INFO L78 Accepts]: Start accepts. Automaton has 91 states and 95 transitions. Word has length 29 [2022-02-20 23:45:40,834 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:40,834 INFO L470 AbstractCegarLoop]: Abstraction has 91 states and 95 transitions. [2022-02-20 23:45:40,834 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 5.8) internal successors, (29), 6 states have internal predecessors, (29), 0 states have call successors, (0), 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:45:40,834 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 95 transitions. [2022-02-20 23:45:40,834 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-02-20 23:45:40,834 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:40,834 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, 1, 1, 1, 1, 1] [2022-02-20 23:45:40,835 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable20 [2022-02-20 23:45:40,835 INFO L402 AbstractCegarLoop]: === Iteration 22 === Targeting ULTIMATE.startErr47ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:40,835 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:40,835 INFO L85 PathProgramCache]: Analyzing trace with hash 1014103174, now seen corresponding path program 1 times [2022-02-20 23:45:40,835 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:45:40,835 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1577638055] [2022-02-20 23:45:40,836 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:40,836 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:45:40,860 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:40,867 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable21 [2022-02-20 23:45:40,867 FATAL L? ?]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction has thrown an exception: java.lang.AssertionError at de.uni_freiburg.informatik.ultimate.smtinterpol.interpolate.ArrayInterpolator$WeakPathInfo$WeakPathEnd.addInterpolantClausePathSeg(ArrayInterpolator.java:2041) at de.uni_freiburg.informatik.ultimate.smtinterpol.interpolate.ArrayInterpolator$WeakPathInfo.closeWeakPath(ArrayInterpolator.java:1402) at de.uni_freiburg.informatik.ultimate.smtinterpol.interpolate.ArrayInterpolator$WeakPathInfo.interpolateWeakPathInfo(ArrayInterpolator.java:1070) at de.uni_freiburg.informatik.ultimate.smtinterpol.interpolate.ArrayInterpolator$WeakPathInfo$WeakPathEnd.buildRecursiveInterpolant(ArrayInterpolator.java:2229) at de.uni_freiburg.informatik.ultimate.smtinterpol.interpolate.ArrayInterpolator$WeakPathInfo.interpolateStorePathInfoExt(ArrayInterpolator.java:1206) at de.uni_freiburg.informatik.ultimate.smtinterpol.interpolate.ArrayInterpolator.computeWeakeqExtInterpolants(ArrayInterpolator.java:306) at de.uni_freiburg.informatik.ultimate.smtinterpol.interpolate.ArrayInterpolator.computeInterpolants(ArrayInterpolator.java:197) at de.uni_freiburg.informatik.ultimate.smtinterpol.interpolate.Interpolator.walkLeafNode(Interpolator.java:326) at de.uni_freiburg.informatik.ultimate.smtinterpol.interpolate.Interpolator$ProofTreeWalker.walk(Interpolator.java:145) at de.uni_freiburg.informatik.ultimate.logic.NonRecursive.run(NonRecursive.java:115) at de.uni_freiburg.informatik.ultimate.logic.NonRecursive.run(NonRecursive.java:106) at de.uni_freiburg.informatik.ultimate.smtinterpol.interpolate.Interpolator.interpolate(Interpolator.java:250) at de.uni_freiburg.informatik.ultimate.smtinterpol.interpolate.Interpolator.getInterpolants(Interpolator.java:227) at de.uni_freiburg.informatik.ultimate.smtinterpol.smtlib2.SMTInterpol.getInterpolants(SMTInterpol.java:879) at de.uni_freiburg.informatik.ultimate.smtinterpol.smtlib2.SMTInterpol.getInterpolants(SMTInterpol.java:803) at de.uni_freiburg.informatik.ultimate.logic.NoopScript.getInterpolants(NoopScript.java:352) at de.uni_freiburg.informatik.ultimate.logic.WrapperScript.getInterpolants(WrapperScript.java:337) at de.uni_freiburg.informatik.ultimate.logic.WrapperScript.getInterpolants(WrapperScript.java:337) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.ManagedScript.getInterpolants(ManagedScript.java:192) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.singletracecheck.NestedInterpolantsBuilder.computeCraigInterpolants(NestedInterpolantsBuilder.java:284) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.singletracecheck.NestedInterpolantsBuilder.(NestedInterpolantsBuilder.java:165) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.singletracecheck.InterpolatingTraceCheckCraig.computeInterpolantsRecursive(InterpolatingTraceCheckCraig.java:327) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.singletracecheck.InterpolatingTraceCheckCraig.computeInterpolants(InterpolatingTraceCheckCraig.java:229) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.singletracecheck.InterpolatingTraceCheckCraig.(InterpolatingTraceCheckCraig.java:97) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.IpTcStrategyModuleCraig.construct(IpTcStrategyModuleCraig.java:79) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.IpTcStrategyModuleCraig.construct(IpTcStrategyModuleCraig.java:1) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.IpTcStrategyModuleBase.getOrConstruct(IpTcStrategyModuleBase.java:100) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.IpTcStrategyModuleBase.isCorrect(IpTcStrategyModuleBase.java:56) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.AutomatonFreeRefinementEngine.checkFeasibility(AutomatonFreeRefinementEngine.java:216) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.AutomatonFreeRefinementEngine.executeStrategy(AutomatonFreeRefinementEngine.java:129) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.AutomatonFreeRefinementEngine.(AutomatonFreeRefinementEngine.java:93) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.TraceAbstractionRefinementEngine.(TraceAbstractionRefinementEngine.java:79) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.BasicCegarLoop.isCounterexampleFeasible(BasicCegarLoop.java:610) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.iterate(AbstractCegarLoop.java:413) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.startCegar(AbstractCegarLoop.java:348) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.runCegar(AbstractCegarLoop.java:330) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.CegarLoopUtils.getCegarLoopResult(CegarLoopUtils.java:56) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.executeCegarLoop(TraceAbstractionStarter.java:414) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.analyseProgram(TraceAbstractionStarter.java:304) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.analyseSequentialProgram(TraceAbstractionStarter.java:264) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.runCegarLoops(TraceAbstractionStarter.java:177) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.(TraceAbstractionStarter.java:156) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver.finish(TraceAbstractionObserver.java:123) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runObserver(PluginConnector.java:168) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runTool(PluginConnector.java:151) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.run(PluginConnector.java:128) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.executePluginConnector(ToolchainWalker.java:232) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.processPlugin(ToolchainWalker.java:226) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walkUnprotected(ToolchainWalker.java:142) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walk(ToolchainWalker.java:104) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainManager$Toolchain.processToolchain(ToolchainManager.java:320) at de.uni_freiburg.informatik.ultimate.core.coreplugin.toolchain.DefaultToolchainJob.run(DefaultToolchainJob.java:145) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63) [2022-02-20 23:45:40,874 INFO L158 Benchmark]: Toolchain (without parser) took 19636.55ms. Allocated memory was 98.6MB in the beginning and 234.9MB in the end (delta: 136.3MB). Free memory was 67.1MB in the beginning and 152.2MB in the end (delta: -85.1MB). Peak memory consumption was 51.2MB. Max. memory is 16.1GB. [2022-02-20 23:45:40,874 INFO L158 Benchmark]: CDTParser took 0.16ms. Allocated memory is still 98.6MB. Free memory was 56.2MB in the beginning and 56.1MB in the end (delta: 70.0kB). There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 23:45:40,874 INFO L158 Benchmark]: CACSL2BoogieTranslator took 358.98ms. Allocated memory was 98.6MB in the beginning and 134.2MB in the end (delta: 35.7MB). Free memory was 66.8MB in the beginning and 101.9MB in the end (delta: -35.2MB). Peak memory consumption was 10.1MB. Max. memory is 16.1GB. [2022-02-20 23:45:40,874 INFO L158 Benchmark]: Boogie Procedure Inliner took 38.84ms. Allocated memory is still 134.2MB. Free memory was 101.9MB in the beginning and 99.8MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2022-02-20 23:45:40,874 INFO L158 Benchmark]: Boogie Preprocessor took 55.96ms. Allocated memory is still 134.2MB. Free memory was 99.8MB in the beginning and 97.7MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2022-02-20 23:45:40,874 INFO L158 Benchmark]: RCFGBuilder took 554.73ms. Allocated memory is still 134.2MB. Free memory was 97.7MB in the beginning and 74.7MB in the end (delta: 23.1MB). Peak memory consumption was 23.1MB. Max. memory is 16.1GB. [2022-02-20 23:45:40,875 INFO L158 Benchmark]: TraceAbstraction took 18623.03ms. Allocated memory was 134.2MB in the beginning and 234.9MB in the end (delta: 100.7MB). Free memory was 74.0MB in the beginning and 152.2MB in the end (delta: -78.2MB). Peak memory consumption was 22.3MB. Max. memory is 16.1GB. [2022-02-20 23:45:40,876 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.16ms. Allocated memory is still 98.6MB. Free memory was 56.2MB in the beginning and 56.1MB in the end (delta: 70.0kB). There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 358.98ms. Allocated memory was 98.6MB in the beginning and 134.2MB in the end (delta: 35.7MB). Free memory was 66.8MB in the beginning and 101.9MB in the end (delta: -35.2MB). Peak memory consumption was 10.1MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 38.84ms. Allocated memory is still 134.2MB. Free memory was 101.9MB in the beginning and 99.8MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Boogie Preprocessor took 55.96ms. Allocated memory is still 134.2MB. Free memory was 99.8MB in the beginning and 97.7MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * RCFGBuilder took 554.73ms. Allocated memory is still 134.2MB. Free memory was 97.7MB in the beginning and 74.7MB in the end (delta: 23.1MB). Peak memory consumption was 23.1MB. Max. memory is 16.1GB. * TraceAbstraction took 18623.03ms. Allocated memory was 134.2MB in the beginning and 234.9MB in the end (delta: 100.7MB). Free memory was 74.0MB in the beginning and 152.2MB in the end (delta: -78.2MB). Peak memory consumption was 22.3MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - ExceptionOrErrorResult: AssertionError: null de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: AssertionError: null: de.uni_freiburg.informatik.ultimate.smtinterpol.interpolate.ArrayInterpolator$WeakPathInfo$WeakPathEnd.addInterpolantClausePathSeg(ArrayInterpolator.java:2041) RESULT: Ultimate could not prove your program: Toolchain returned no result. [2022-02-20 23:45:40,905 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/memsafety/test-0232-2.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 d7d99b84861b7e58e44833cf97c5fb5fa14d1ad6f1b87526d3144a9659451e97 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:45:42,493 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:45:42,495 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:45:42,521 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:45:42,521 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:45:42,524 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:45:42,525 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:45:42,529 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:45:42,531 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:45:42,534 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:45:42,535 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:45:42,538 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:45:42,538 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:45:42,540 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:45:42,541 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:45:42,544 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:45:42,544 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:45:42,545 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:45:42,547 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:45:42,556 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:45:42,557 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:45:42,558 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:45:42,558 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:45:42,560 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:45:42,565 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:45:42,565 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:45:42,565 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:45:42,566 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:45:42,567 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:45:42,567 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:45:42,568 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:45:42,569 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:45:42,570 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:45:42,570 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:45:42,571 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:45:42,571 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:45:42,572 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:45:42,572 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:45:42,572 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:45:42,573 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:45:42,574 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:45:42,577 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:45:42,610 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:45:42,610 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:45:42,611 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:45:42,611 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:45:42,612 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:45:42,612 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:45:42,613 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:45:42,613 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:45:42,613 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:45:42,614 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:45:42,614 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:45:42,614 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:45:42,614 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:45:42,615 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:45:42,615 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:45:42,615 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:45:42,615 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:45:42,615 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2022-02-20 23:45:42,615 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:45:42,615 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:45:42,616 INFO L138 SettingsManager]: * Use bitvectors instead of ints=true [2022-02-20 23:45:42,616 INFO L138 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2022-02-20 23:45:42,616 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:45:42,616 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:45:42,616 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:45:42,617 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:45:42,617 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:45:42,617 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:45:42,617 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:45:42,617 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:45:42,617 INFO L138 SettingsManager]: * Trace refinement strategy=WOLF [2022-02-20 23:45:42,618 INFO L138 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2022-02-20 23:45:42,618 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-02-20 23:45:42,618 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 -> d7d99b84861b7e58e44833cf97c5fb5fa14d1ad6f1b87526d3144a9659451e97 [2022-02-20 23:45:42,886 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:45:42,906 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:45:42,908 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:45:42,909 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:45:42,909 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:45:42,910 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/memsafety/test-0232-2.i [2022-02-20 23:45:42,981 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/48777eb57/95a38cb89a014753ab44c8d5958a52ac/FLAGd780372e1 [2022-02-20 23:45:43,372 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:45:43,372 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/memsafety/test-0232-2.i [2022-02-20 23:45:43,384 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/48777eb57/95a38cb89a014753ab44c8d5958a52ac/FLAGd780372e1 [2022-02-20 23:45:43,394 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/48777eb57/95a38cb89a014753ab44c8d5958a52ac [2022-02-20 23:45:43,396 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:45:43,398 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:45:43,400 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:45:43,400 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:45:43,402 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:45:43,403 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:45:43" (1/1) ... [2022-02-20 23:45:43,404 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2108de6f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:45:43, skipping insertion in model container [2022-02-20 23:45:43,404 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:45:43" (1/1) ... [2022-02-20 23:45:43,408 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:45:43,437 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:45:43,741 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:45:43,752 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 23:45:43,778 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:45:43,815 INFO L208 MainTranslator]: Completed translation [2022-02-20 23:45:43,815 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:45:43 WrapperNode [2022-02-20 23:45:43,816 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:45:43,817 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 23:45:43,818 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 23:45:43,818 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 23:45:43,823 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:45:43" (1/1) ... [2022-02-20 23:45:43,847 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:45:43" (1/1) ... [2022-02-20 23:45:43,878 INFO L137 Inliner]: procedures = 127, calls = 35, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 89 [2022-02-20 23:45:43,878 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 23:45:43,879 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 23:45:43,879 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 23:45:43,879 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 23:45:43,884 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:45:43" (1/1) ... [2022-02-20 23:45:43,884 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:45:43" (1/1) ... [2022-02-20 23:45:43,888 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:45:43" (1/1) ... [2022-02-20 23:45:43,888 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:45:43" (1/1) ... [2022-02-20 23:45:43,894 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:45:43" (1/1) ... [2022-02-20 23:45:43,896 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:45:43" (1/1) ... [2022-02-20 23:45:43,907 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:45:43" (1/1) ... [2022-02-20 23:45:43,909 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 23:45:43,915 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 23:45:43,915 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 23:45:43,915 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 23:45:43,916 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:45:43" (1/1) ... [2022-02-20 23:45:43,921 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:45:43,927 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:45:43,935 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:45:43,941 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:45:43,959 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2022-02-20 23:45:43,959 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 23:45:43,959 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-02-20 23:45:43,959 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2022-02-20 23:45:43,960 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2022-02-20 23:45:43,960 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 23:45:43,960 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~$Pointer$ [2022-02-20 23:45:43,960 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1 [2022-02-20 23:45:43,960 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 23:45:43,960 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 23:45:44,038 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 23:45:44,039 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 23:45:44,480 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 23:45:44,485 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 23:45:44,487 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-02-20 23:45:44,489 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:45:44 BoogieIcfgContainer [2022-02-20 23:45:44,490 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 23:45:44,492 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 23:45:44,493 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 23:45:44,495 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 23:45:44,495 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 11:45:43" (1/3) ... [2022-02-20 23:45:44,496 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@434578d9 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:45:44, skipping insertion in model container [2022-02-20 23:45:44,496 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:45:43" (2/3) ... [2022-02-20 23:45:44,496 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@434578d9 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:45:44, skipping insertion in model container [2022-02-20 23:45:44,496 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:45:44" (3/3) ... [2022-02-20 23:45:44,499 INFO L111 eAbstractionObserver]: Analyzing ICFG test-0232-2.i [2022-02-20 23:45:44,502 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 23:45:44,503 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 48 error locations. [2022-02-20 23:45:44,538 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 23:45:44,543 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:45:44,544 INFO L340 AbstractCegarLoop]: Starting to check reachability of 48 error locations. [2022-02-20 23:45:44,559 INFO L276 IsEmpty]: Start isEmpty. Operand has 93 states, 44 states have (on average 2.227272727272727) internal successors, (98), 92 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:45:44,562 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2022-02-20 23:45:44,562 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:44,563 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2022-02-20 23:45:44,563 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:44,568 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:44,568 INFO L85 PathProgramCache]: Analyzing trace with hash 925637, now seen corresponding path program 1 times [2022-02-20 23:45:44,577 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:45:44,577 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [2132837235] [2022-02-20 23:45:44,578 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:44,578 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:45:44,578 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:45:44,579 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:45:44,582 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:45:44,654 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:44,656 INFO L263 TraceCheckSpWp]: Trace formula consists of 37 conjuncts, 7 conjunts are in the unsatisfiable core [2022-02-20 23:45:44,684 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:44,686 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:44,746 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:45:44,792 INFO L356 Elim1Store]: treesize reduction 12, result has 40.0 percent of original size [2022-02-20 23:45:44,793 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:45:44,820 INFO L290 TraceCheckUtils]: 0: Hoare triple {96#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(14bv32, 2bv32); {96#true} is VALID [2022-02-20 23:45:44,821 INFO L290 TraceCheckUtils]: 1: Hoare triple {96#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {104#(= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:45:44,822 INFO L290 TraceCheckUtils]: 2: Hoare triple {104#(= (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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {108#(= (_ bv0 1) (bvadd (bvneg (select |#valid| |ULTIMATE.start_append_~plist#1.base|)) (_ bv1 1)))} is VALID [2022-02-20 23:45:44,823 INFO L290 TraceCheckUtils]: 3: Hoare triple {108#(= (_ bv0 1) (bvadd (bvneg (select |#valid| |ULTIMATE.start_append_~plist#1.base|)) (_ bv1 1)))} assume !(1bv1 == #valid[append_~plist#1.base]); {97#false} is VALID [2022-02-20 23:45:44,824 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:45:44,824 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:45:44,824 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:45:44,824 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [2132837235] [2022-02-20 23:45:44,825 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [2132837235] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:44,825 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:44,825 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:45:44,826 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [530691918] [2022-02-20 23:45:44,827 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:44,829 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:45:44,830 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:44,832 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:45:44,837 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:45:44,837 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:45:44,838 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:45:44,849 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:45:44,850 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:45:44,852 INFO L87 Difference]: Start difference. First operand has 93 states, 44 states have (on average 2.227272727272727) internal successors, (98), 92 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 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:45:45,323 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:45,323 INFO L93 Difference]: Finished difference Result 104 states and 108 transitions. [2022-02-20 23:45:45,323 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:45:45,324 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:45:45,324 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:45,325 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:45:45,330 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 123 transitions. [2022-02-20 23:45:45,330 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:45:45,332 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 123 transitions. [2022-02-20 23:45:45,332 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 123 transitions. [2022-02-20 23:45:45,454 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 123 edges. 123 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:45,462 INFO L225 Difference]: With dead ends: 104 [2022-02-20 23:45:45,462 INFO L226 Difference]: Without dead ends: 102 [2022-02-20 23:45:45,463 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:45:45,466 INFO L933 BasicCegarLoop]: 47 mSDtfsCounter, 148 mSDsluCounter, 17 mSDsCounter, 0 mSdLazyCounter, 79 mSolverCounterSat, 16 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 148 SdHoareTripleChecker+Valid, 64 SdHoareTripleChecker+Invalid, 95 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 79 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:45,466 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [148 Valid, 64 Invalid, 95 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 79 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:45:45,477 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 102 states. [2022-02-20 23:45:45,484 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 102 to 83. [2022-02-20 23:45:45,485 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:45,485 INFO L82 GeneralOperation]: Start isEquivalent. First operand 102 states. Second operand has 83 states, 43 states have (on average 2.0) internal successors, (86), 82 states have internal predecessors, (86), 0 states have call successors, (0), 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:45:45,486 INFO L74 IsIncluded]: Start isIncluded. First operand 102 states. Second operand has 83 states, 43 states have (on average 2.0) internal successors, (86), 82 states have internal predecessors, (86), 0 states have call successors, (0), 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:45:45,487 INFO L87 Difference]: Start difference. First operand 102 states. Second operand has 83 states, 43 states have (on average 2.0) internal successors, (86), 82 states have internal predecessors, (86), 0 states have call successors, (0), 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:45:45,491 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:45,491 INFO L93 Difference]: Finished difference Result 102 states and 106 transitions. [2022-02-20 23:45:45,491 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 106 transitions. [2022-02-20 23:45:45,492 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:45,492 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:45,492 INFO L74 IsIncluded]: Start isIncluded. First operand has 83 states, 43 states have (on average 2.0) internal successors, (86), 82 states have internal predecessors, (86), 0 states have call successors, (0), 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:45:45,493 INFO L87 Difference]: Start difference. First operand has 83 states, 43 states have (on average 2.0) internal successors, (86), 82 states have internal predecessors, (86), 0 states have call successors, (0), 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:45:45,496 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:45,496 INFO L93 Difference]: Finished difference Result 102 states and 106 transitions. [2022-02-20 23:45:45,496 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 106 transitions. [2022-02-20 23:45:45,497 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:45,497 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:45,497 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:45,497 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:45,498 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 83 states, 43 states have (on average 2.0) internal successors, (86), 82 states have internal predecessors, (86), 0 states have call successors, (0), 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:45:45,500 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 83 states to 83 states and 86 transitions. [2022-02-20 23:45:45,501 INFO L78 Accepts]: Start accepts. Automaton has 83 states and 86 transitions. Word has length 4 [2022-02-20 23:45:45,501 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:45,501 INFO L470 AbstractCegarLoop]: Abstraction has 83 states and 86 transitions. [2022-02-20 23:45:45,501 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:45:45,501 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 86 transitions. [2022-02-20 23:45:45,501 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2022-02-20 23:45:45,501 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:45,501 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2022-02-20 23:45:45,514 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:45:45,702 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:45:45,702 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:45,703 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:45,703 INFO L85 PathProgramCache]: Analyzing trace with hash 925638, now seen corresponding path program 1 times [2022-02-20 23:45:45,703 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:45:45,703 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1626850270] [2022-02-20 23:45:45,703 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:45,704 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:45:45,704 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:45:45,705 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:45:45,707 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:45:45,741 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:45,742 INFO L263 TraceCheckSpWp]: Trace formula consists of 37 conjuncts, 12 conjunts are in the unsatisfiable core [2022-02-20 23:45:45,749 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:45,750 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:45,782 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:45:45,803 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:45:45,865 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:45:45,866 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:45:45,873 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:45:45,879 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:45:45,894 INFO L290 TraceCheckUtils]: 0: Hoare triple {504#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(14bv32, 2bv32); {504#true} is VALID [2022-02-20 23:45:45,896 INFO L290 TraceCheckUtils]: 1: Hoare triple {504#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {512#(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:45:45,897 INFO L290 TraceCheckUtils]: 2: Hoare triple {512#(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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {516#(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:45:45,897 INFO L290 TraceCheckUtils]: 3: Hoare triple {516#(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)); {505#false} is VALID [2022-02-20 23:45:45,897 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:45:45,898 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:45:45,898 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:45:45,898 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1626850270] [2022-02-20 23:45:45,898 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1626850270] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:45,898 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:45,898 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:45:45,899 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1864030482] [2022-02-20 23:45:45,899 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:45,900 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:45:45,900 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:45,900 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:45:45,911 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:45:45,911 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:45:45,912 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:45:45,912 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:45:45,913 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:45:45,913 INFO L87 Difference]: Start difference. First operand 83 states and 86 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:45:46,876 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:46,876 INFO L93 Difference]: Finished difference Result 169 states and 176 transitions. [2022-02-20 23:45:46,876 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:45:46,876 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:45:46,877 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:46,877 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:45:46,884 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 190 transitions. [2022-02-20 23:45:46,885 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:45:46,887 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 190 transitions. [2022-02-20 23:45:46,887 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 190 transitions. [2022-02-20 23:45:47,107 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 190 edges. 190 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:47,110 INFO L225 Difference]: With dead ends: 169 [2022-02-20 23:45:47,110 INFO L226 Difference]: Without dead ends: 169 [2022-02-20 23:45:47,110 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:45:47,111 INFO L933 BasicCegarLoop]: 70 mSDtfsCounter, 146 mSDsluCounter, 50 mSDsCounter, 0 mSdLazyCounter, 162 mSolverCounterSat, 12 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 146 SdHoareTripleChecker+Valid, 120 SdHoareTripleChecker+Invalid, 174 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 12 IncrementalHoareTripleChecker+Valid, 162 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:47,111 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [146 Valid, 120 Invalid, 174 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [12 Valid, 162 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-02-20 23:45:47,112 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 169 states. [2022-02-20 23:45:47,115 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 169 to 88. [2022-02-20 23:45:47,115 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:47,115 INFO L82 GeneralOperation]: Start isEquivalent. First operand 169 states. Second operand has 88 states, 52 states have (on average 1.8461538461538463) internal successors, (96), 87 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:45:47,116 INFO L74 IsIncluded]: Start isIncluded. First operand 169 states. Second operand has 88 states, 52 states have (on average 1.8461538461538463) internal successors, (96), 87 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:45:47,116 INFO L87 Difference]: Start difference. First operand 169 states. Second operand has 88 states, 52 states have (on average 1.8461538461538463) internal successors, (96), 87 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:45:47,121 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:47,122 INFO L93 Difference]: Finished difference Result 169 states and 176 transitions. [2022-02-20 23:45:47,122 INFO L276 IsEmpty]: Start isEmpty. Operand 169 states and 176 transitions. [2022-02-20 23:45:47,123 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:47,123 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:47,124 INFO L74 IsIncluded]: Start isIncluded. First operand has 88 states, 52 states have (on average 1.8461538461538463) internal successors, (96), 87 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 169 states. [2022-02-20 23:45:47,124 INFO L87 Difference]: Start difference. First operand has 88 states, 52 states have (on average 1.8461538461538463) internal successors, (96), 87 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 169 states. [2022-02-20 23:45:47,127 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:47,128 INFO L93 Difference]: Finished difference Result 169 states and 176 transitions. [2022-02-20 23:45:47,128 INFO L276 IsEmpty]: Start isEmpty. Operand 169 states and 176 transitions. [2022-02-20 23:45:47,128 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:47,129 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:47,129 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:47,129 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:47,129 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 88 states, 52 states have (on average 1.8461538461538463) internal successors, (96), 87 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:45:47,131 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 88 states to 88 states and 96 transitions. [2022-02-20 23:45:47,131 INFO L78 Accepts]: Start accepts. Automaton has 88 states and 96 transitions. Word has length 4 [2022-02-20 23:45:47,131 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:47,131 INFO L470 AbstractCegarLoop]: Abstraction has 88 states and 96 transitions. [2022-02-20 23:45:47,131 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:45:47,132 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 96 transitions. [2022-02-20 23:45:47,132 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 6 [2022-02-20 23:45:47,132 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:47,132 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1] [2022-02-20 23:45:47,138 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (3)] Ended with exit code 0 [2022-02-20 23:45:47,338 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:45:47,340 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr2REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:47,341 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:47,341 INFO L85 PathProgramCache]: Analyzing trace with hash 28694727, now seen corresponding path program 1 times [2022-02-20 23:45:47,343 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:45:47,343 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1683844376] [2022-02-20 23:45:47,343 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:47,343 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:45:47,343 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:45:47,344 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:45:47,345 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:45:47,381 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:47,382 INFO L263 TraceCheckSpWp]: Trace formula consists of 43 conjuncts, 3 conjunts are in the unsatisfiable core [2022-02-20 23:45:47,386 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:47,386 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:47,394 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:45:47,400 INFO L290 TraceCheckUtils]: 0: Hoare triple {1116#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(14bv32, 2bv32); {1116#true} is VALID [2022-02-20 23:45:47,401 INFO L290 TraceCheckUtils]: 1: Hoare triple {1116#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {1116#true} is VALID [2022-02-20 23:45:47,402 INFO L290 TraceCheckUtils]: 2: Hoare triple {1116#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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {1127#(= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:45:47,402 INFO L290 TraceCheckUtils]: 3: Hoare triple {1127#(= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1))} SUMMARY for call append_#t~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L531 {1127#(= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:45:47,403 INFO L290 TraceCheckUtils]: 4: Hoare triple {1127#(= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[append_~item~0#1.base]); {1117#false} is VALID [2022-02-20 23:45:47,403 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:45:47,403 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:45:47,403 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:45:47,403 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1683844376] [2022-02-20 23:45:47,403 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1683844376] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:47,403 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:47,404 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:45:47,404 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1227989099] [2022-02-20 23:45:47,404 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:47,404 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:45:47,404 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:47,404 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:45:47,409 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:45:47,409 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:45:47,409 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:45:47,410 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:45:47,410 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:45:47,410 INFO L87 Difference]: Start difference. First operand 88 states and 96 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:45:47,679 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:47,679 INFO L93 Difference]: Finished difference Result 94 states and 99 transitions. [2022-02-20 23:45:47,679 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:45:47,679 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:45:47,679 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:47,680 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:45:47,680 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 99 transitions. [2022-02-20 23:45:47,681 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:45:47,682 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 99 transitions. [2022-02-20 23:45:47,682 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 99 transitions. [2022-02-20 23:45:47,771 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 99 edges. 99 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:47,772 INFO L225 Difference]: With dead ends: 94 [2022-02-20 23:45:47,772 INFO L226 Difference]: Without dead ends: 94 [2022-02-20 23:45:47,772 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:45:47,773 INFO L933 BasicCegarLoop]: 48 mSDtfsCounter, 51 mSDsluCounter, 18 mSDsCounter, 0 mSdLazyCounter, 51 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 51 SdHoareTripleChecker+Valid, 66 SdHoareTripleChecker+Invalid, 55 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 51 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:47,773 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [51 Valid, 66 Invalid, 55 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 51 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:45:47,773 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 94 states. [2022-02-20 23:45:47,776 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 94 to 84. [2022-02-20 23:45:47,776 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:47,776 INFO L82 GeneralOperation]: Start isEquivalent. First operand 94 states. Second operand has 84 states, 52 states have (on average 1.75) internal successors, (91), 83 states have internal predecessors, (91), 0 states have call successors, (0), 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:45:47,776 INFO L74 IsIncluded]: Start isIncluded. First operand 94 states. Second operand has 84 states, 52 states have (on average 1.75) internal successors, (91), 83 states have internal predecessors, (91), 0 states have call successors, (0), 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:45:47,777 INFO L87 Difference]: Start difference. First operand 94 states. Second operand has 84 states, 52 states have (on average 1.75) internal successors, (91), 83 states have internal predecessors, (91), 0 states have call successors, (0), 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:45:47,779 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:47,779 INFO L93 Difference]: Finished difference Result 94 states and 99 transitions. [2022-02-20 23:45:47,779 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 99 transitions. [2022-02-20 23:45:47,779 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:47,779 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:47,780 INFO L74 IsIncluded]: Start isIncluded. First operand has 84 states, 52 states have (on average 1.75) internal successors, (91), 83 states have internal predecessors, (91), 0 states have call successors, (0), 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 94 states. [2022-02-20 23:45:47,780 INFO L87 Difference]: Start difference. First operand has 84 states, 52 states have (on average 1.75) internal successors, (91), 83 states have internal predecessors, (91), 0 states have call successors, (0), 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 94 states. [2022-02-20 23:45:47,782 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:47,782 INFO L93 Difference]: Finished difference Result 94 states and 99 transitions. [2022-02-20 23:45:47,782 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 99 transitions. [2022-02-20 23:45:47,782 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:47,783 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:47,783 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:47,783 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:47,783 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 84 states, 52 states have (on average 1.75) internal successors, (91), 83 states have internal predecessors, (91), 0 states have call successors, (0), 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:45:47,785 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 84 states to 84 states and 91 transitions. [2022-02-20 23:45:47,785 INFO L78 Accepts]: Start accepts. Automaton has 84 states and 91 transitions. Word has length 5 [2022-02-20 23:45:47,785 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:47,785 INFO L470 AbstractCegarLoop]: Abstraction has 84 states and 91 transitions. [2022-02-20 23:45:47,785 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:45:47,785 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 91 transitions. [2022-02-20 23:45:47,786 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 6 [2022-02-20 23:45:47,786 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:47,786 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1] [2022-02-20 23:45:47,805 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:45:47,995 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:45:47,995 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr3REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:47,996 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:47,996 INFO L85 PathProgramCache]: Analyzing trace with hash 28694728, now seen corresponding path program 1 times [2022-02-20 23:45:47,996 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:45:47,996 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [231279042] [2022-02-20 23:45:47,996 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:47,996 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:45:47,996 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:45:47,997 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:45:47,999 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:45:48,029 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:48,031 INFO L263 TraceCheckSpWp]: Trace formula consists of 43 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 23:45:48,035 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:48,036 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:48,053 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:45:48,065 INFO L290 TraceCheckUtils]: 0: Hoare triple {1499#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(14bv32, 2bv32); {1499#true} is VALID [2022-02-20 23:45:48,066 INFO L290 TraceCheckUtils]: 1: Hoare triple {1499#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {1499#true} is VALID [2022-02-20 23:45:48,067 INFO L290 TraceCheckUtils]: 2: Hoare triple {1499#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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {1510#(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:45:48,067 INFO L290 TraceCheckUtils]: 3: Hoare triple {1510#(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~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L531 {1510#(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:45:48,067 INFO L290 TraceCheckUtils]: 4: Hoare triple {1510#(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)); {1500#false} is VALID [2022-02-20 23:45:48,068 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:45:48,068 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:45:48,068 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:45:48,068 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [231279042] [2022-02-20 23:45:48,068 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [231279042] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:48,068 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:48,068 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:45:48,069 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1625962018] [2022-02-20 23:45:48,069 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:48,069 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:45:48,069 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:48,069 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:45:48,076 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:45:48,076 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:45:48,076 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:45:48,077 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:45:48,077 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:45:48,077 INFO L87 Difference]: Start difference. First operand 84 states and 91 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:45:48,278 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:48,278 INFO L93 Difference]: Finished difference Result 81 states and 87 transitions. [2022-02-20 23:45:48,278 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:45:48,278 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:45:48,279 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:48,279 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:45:48,279 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 79 transitions. [2022-02-20 23:45:48,280 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:45:48,280 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 79 transitions. [2022-02-20 23:45:48,280 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 79 transitions. [2022-02-20 23:45:48,391 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:48,392 INFO L225 Difference]: With dead ends: 81 [2022-02-20 23:45:48,392 INFO L226 Difference]: Without dead ends: 81 [2022-02-20 23:45:48,393 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:45:48,393 INFO L933 BasicCegarLoop]: 43 mSDtfsCounter, 69 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 34 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 69 SdHoareTripleChecker+Valid, 43 SdHoareTripleChecker+Invalid, 38 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 34 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:48,393 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [69 Valid, 43 Invalid, 38 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 34 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:45:48,394 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 81 states. [2022-02-20 23:45:48,396 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 81 to 80. [2022-02-20 23:45:48,396 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:48,396 INFO L82 GeneralOperation]: Start isEquivalent. First operand 81 states. Second operand has 80 states, 52 states have (on average 1.6538461538461537) internal successors, (86), 79 states have internal predecessors, (86), 0 states have call successors, (0), 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:45:48,396 INFO L74 IsIncluded]: Start isIncluded. First operand 81 states. Second operand has 80 states, 52 states have (on average 1.6538461538461537) internal successors, (86), 79 states have internal predecessors, (86), 0 states have call successors, (0), 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:45:48,397 INFO L87 Difference]: Start difference. First operand 81 states. Second operand has 80 states, 52 states have (on average 1.6538461538461537) internal successors, (86), 79 states have internal predecessors, (86), 0 states have call successors, (0), 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:45:48,398 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:48,398 INFO L93 Difference]: Finished difference Result 81 states and 87 transitions. [2022-02-20 23:45:48,398 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 87 transitions. [2022-02-20 23:45:48,398 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:48,398 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:48,399 INFO L74 IsIncluded]: Start isIncluded. First operand has 80 states, 52 states have (on average 1.6538461538461537) internal successors, (86), 79 states have internal predecessors, (86), 0 states have call successors, (0), 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 81 states. [2022-02-20 23:45:48,399 INFO L87 Difference]: Start difference. First operand has 80 states, 52 states have (on average 1.6538461538461537) internal successors, (86), 79 states have internal predecessors, (86), 0 states have call successors, (0), 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 81 states. [2022-02-20 23:45:48,400 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:48,400 INFO L93 Difference]: Finished difference Result 81 states and 87 transitions. [2022-02-20 23:45:48,400 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 87 transitions. [2022-02-20 23:45:48,400 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:48,400 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:48,401 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:48,401 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:48,401 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 80 states, 52 states have (on average 1.6538461538461537) internal successors, (86), 79 states have internal predecessors, (86), 0 states have call successors, (0), 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:45:48,402 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 80 states to 80 states and 86 transitions. [2022-02-20 23:45:48,402 INFO L78 Accepts]: Start accepts. Automaton has 80 states and 86 transitions. Word has length 5 [2022-02-20 23:45:48,402 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:48,402 INFO L470 AbstractCegarLoop]: Abstraction has 80 states and 86 transitions. [2022-02-20 23:45:48,403 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:45:48,403 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 86 transitions. [2022-02-20 23:45:48,403 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 11 [2022-02-20 23:45:48,403 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:48,403 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:45:48,417 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (5)] Forceful destruction successful, exit code 0 [2022-02-20 23:45:48,609 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:45:48,609 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr8REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:48,609 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:48,610 INFO L85 PathProgramCache]: Analyzing trace with hash -1328641136, now seen corresponding path program 1 times [2022-02-20 23:45:48,610 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:45:48,610 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [2135456100] [2022-02-20 23:45:48,610 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:48,610 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:45:48,610 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:45:48,613 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:45:48,615 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:45:48,655 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:48,657 INFO L263 TraceCheckSpWp]: Trace formula consists of 70 conjuncts, 17 conjunts are in the unsatisfiable core [2022-02-20 23:45:48,668 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:48,669 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:48,813 INFO L356 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2022-02-20 23:45:48,813 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:45:48,830 INFO L356 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2022-02-20 23:45:48,830 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:45:48,925 INFO L356 Elim1Store]: treesize reduction 11, result has 8.3 percent of original size [2022-02-20 23:45:48,925 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:45:48,931 INFO L356 Elim1Store]: treesize reduction 11, result has 8.3 percent of original size [2022-02-20 23:45:48,931 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:45:48,950 INFO L290 TraceCheckUtils]: 0: Hoare triple {1839#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(14bv32, 2bv32); {1839#true} is VALID [2022-02-20 23:45:48,950 INFO L290 TraceCheckUtils]: 1: Hoare triple {1839#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {1847#(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:45:48,951 INFO L290 TraceCheckUtils]: 2: Hoare triple {1847#(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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {1851#(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:45:48,953 INFO L290 TraceCheckUtils]: 3: Hoare triple {1851#(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~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L531 {1855#(exists ((|ULTIMATE.start_append_~plist#1.base| (_ BitVec 32)) (|ULTIMATE.start_append_~plist#1.offset| (_ BitVec 32))) (and (= |ULTIMATE.start_append_#t~mem4#1.offset| (select (select |#memory_$Pointer$.offset| |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)) (= (select (select |#memory_$Pointer$.base| |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|) |ULTIMATE.start_append_#t~mem4#1.base|)))} is VALID [2022-02-20 23:45:48,954 INFO L290 TraceCheckUtils]: 4: Hoare triple {1855#(exists ((|ULTIMATE.start_append_~plist#1.base| (_ BitVec 32)) (|ULTIMATE.start_append_~plist#1.offset| (_ BitVec 32))) (and (= |ULTIMATE.start_append_#t~mem4#1.offset| (select (select |#memory_$Pointer$.offset| |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)) (= (select (select |#memory_$Pointer$.base| |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|) |ULTIMATE.start_append_#t~mem4#1.base|)))} SUMMARY for call write~$Pointer$(append_#t~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L531-1 {1859#(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:45:48,955 INFO L290 TraceCheckUtils]: 5: Hoare triple {1859#(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~mem4#1.base, append_#t~mem4#1.offset; {1859#(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:45:48,957 INFO L290 TraceCheckUtils]: 6: Hoare triple {1859#(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~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L532 {1866#(and (= |ULTIMATE.start_append_#t~mem5#1.offset| (_ bv0 32)) (= (_ bv0 32) |ULTIMATE.start_append_#t~mem5#1.base|))} is VALID [2022-02-20 23:45:48,958 INFO L290 TraceCheckUtils]: 7: Hoare triple {1866#(and (= |ULTIMATE.start_append_#t~mem5#1.offset| (_ bv0 32)) (= (_ bv0 32) |ULTIMATE.start_append_#t~mem5#1.base|))} assume append_#t~mem5#1.base != 0bv32 || append_#t~mem5#1.offset != 0bv32; {1840#false} is VALID [2022-02-20 23:45:48,958 INFO L290 TraceCheckUtils]: 8: Hoare triple {1840#false} 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: L533 {1840#false} is VALID [2022-02-20 23:45:48,958 INFO L290 TraceCheckUtils]: 9: Hoare triple {1840#false} assume !(1bv1 == #valid[append_#t~mem6#1.base]); {1840#false} is VALID [2022-02-20 23:45:48,958 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:45:48,958 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:45:48,959 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:45:48,959 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [2135456100] [2022-02-20 23:45:48,959 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [2135456100] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:48,959 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:48,959 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-20 23:45:48,959 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1974189582] [2022-02-20 23:45:48,959 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:48,960 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:45:48,960 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:48,960 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:45:48,972 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:45:48,972 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 23:45:48,972 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:45:48,973 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 23:45:48,973 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:45:48,973 INFO L87 Difference]: Start difference. First operand 80 states and 86 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:45:49,769 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:49,769 INFO L93 Difference]: Finished difference Result 86 states and 92 transitions. [2022-02-20 23:45:49,769 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:45:49,769 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:45:49,769 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:49,770 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:45:49,770 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 83 transitions. [2022-02-20 23:45:49,770 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:45:49,771 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 83 transitions. [2022-02-20 23:45:49,771 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 83 transitions. [2022-02-20 23:45:49,864 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 83 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:49,865 INFO L225 Difference]: With dead ends: 86 [2022-02-20 23:45:49,866 INFO L226 Difference]: Without dead ends: 86 [2022-02-20 23:45:49,866 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:45:49,866 INFO L933 BasicCegarLoop]: 69 mSDtfsCounter, 5 mSDsluCounter, 263 mSDsCounter, 0 mSdLazyCounter, 57 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 5 SdHoareTripleChecker+Valid, 332 SdHoareTripleChecker+Invalid, 102 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 57 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 44 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:49,867 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [5 Valid, 332 Invalid, 102 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 57 Invalid, 0 Unknown, 44 Unchecked, 0.1s Time] [2022-02-20 23:45:49,867 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 86 states. [2022-02-20 23:45:49,869 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 86 to 86. [2022-02-20 23:45:49,869 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:49,869 INFO L82 GeneralOperation]: Start isEquivalent. First operand 86 states. Second operand has 86 states, 58 states have (on average 1.5862068965517242) internal successors, (92), 85 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:45:49,870 INFO L74 IsIncluded]: Start isIncluded. First operand 86 states. Second operand has 86 states, 58 states have (on average 1.5862068965517242) internal successors, (92), 85 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:45:49,870 INFO L87 Difference]: Start difference. First operand 86 states. Second operand has 86 states, 58 states have (on average 1.5862068965517242) internal successors, (92), 85 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:45:49,871 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:49,871 INFO L93 Difference]: Finished difference Result 86 states and 92 transitions. [2022-02-20 23:45:49,871 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 92 transitions. [2022-02-20 23:45:49,872 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:49,872 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:49,872 INFO L74 IsIncluded]: Start isIncluded. First operand has 86 states, 58 states have (on average 1.5862068965517242) internal successors, (92), 85 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 86 states. [2022-02-20 23:45:49,872 INFO L87 Difference]: Start difference. First operand has 86 states, 58 states have (on average 1.5862068965517242) internal successors, (92), 85 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 86 states. [2022-02-20 23:45:49,873 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:49,873 INFO L93 Difference]: Finished difference Result 86 states and 92 transitions. [2022-02-20 23:45:49,873 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 92 transitions. [2022-02-20 23:45:49,874 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:49,874 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:49,874 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:49,874 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:49,874 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 86 states, 58 states have (on average 1.5862068965517242) internal successors, (92), 85 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:45:49,875 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 86 states to 86 states and 92 transitions. [2022-02-20 23:45:49,875 INFO L78 Accepts]: Start accepts. Automaton has 86 states and 92 transitions. Word has length 10 [2022-02-20 23:45:49,875 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:49,876 INFO L470 AbstractCegarLoop]: Abstraction has 86 states and 92 transitions. [2022-02-20 23:45:49,876 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:45:49,876 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 92 transitions. [2022-02-20 23:45:49,876 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2022-02-20 23:45:49,876 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:49,876 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:45:49,890 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:45:50,082 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:45:50,083 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr13REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:50,083 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:50,083 INFO L85 PathProgramCache]: Analyzing trace with hash 1762075788, now seen corresponding path program 1 times [2022-02-20 23:45:50,083 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:45:50,083 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1880669113] [2022-02-20 23:45:50,083 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:50,084 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:45:50,084 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:45:50,085 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:45:50,086 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:45:50,137 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:50,140 INFO L263 TraceCheckSpWp]: Trace formula consists of 89 conjuncts, 8 conjunts are in the unsatisfiable core [2022-02-20 23:45:50,146 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:50,147 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:50,232 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:45:50,233 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:45:50,240 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:45:50,240 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:45:50,271 INFO L290 TraceCheckUtils]: 0: Hoare triple {2223#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(14bv32, 2bv32); {2223#true} is VALID [2022-02-20 23:45:50,271 INFO L290 TraceCheckUtils]: 1: Hoare triple {2223#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {2231#(= |ULTIMATE.start_main_~#list~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:45:50,272 INFO L290 TraceCheckUtils]: 2: Hoare triple {2231#(= |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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {2235#(= |ULTIMATE.start_append_~plist#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:45:50,272 INFO L290 TraceCheckUtils]: 3: Hoare triple {2235#(= |ULTIMATE.start_append_~plist#1.offset| (_ bv0 32))} SUMMARY for call append_#t~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L531 {2239#(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:45:50,273 INFO L290 TraceCheckUtils]: 4: Hoare triple {2239#(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~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L531-1 {2239#(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:45:50,273 INFO L290 TraceCheckUtils]: 5: Hoare triple {2239#(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~mem4#1.base, append_#t~mem4#1.offset; {2239#(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:45:50,274 INFO L290 TraceCheckUtils]: 6: Hoare triple {2239#(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~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L532 {2239#(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:45:50,276 INFO L290 TraceCheckUtils]: 7: Hoare triple {2239#(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~mem5#1.base != 0bv32 || append_#t~mem5#1.offset != 0bv32);call append_#t~malloc8#1.base, append_#t~malloc8#1.offset := #Ultimate.allocOnHeap(8bv32);append_#t~ite9#1.base, append_#t~ite9#1.offset := append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {2252#(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:45:50,277 INFO L290 TraceCheckUtils]: 8: Hoare triple {2252#(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~ite9#1.base, append_#t~ite9#1.offset, append_~item~0#1.base, ~bvadd32(4bv32, append_~item~0#1.offset), 4bv32); srcloc: L532-3 {2252#(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:45:50,277 INFO L290 TraceCheckUtils]: 9: Hoare triple {2252#(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~mem5#1.base, append_#t~mem5#1.offset;havoc append_#t~ite9#1.base, append_#t~ite9#1.offset;havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {2252#(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:45:50,277 INFO L290 TraceCheckUtils]: 10: Hoare triple {2252#(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)); {2224#false} is VALID [2022-02-20 23:45:50,278 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:45:50,278 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:45:50,278 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:45:50,278 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1880669113] [2022-02-20 23:45:50,278 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1880669113] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:50,278 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:50,278 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:45:50,279 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [970106297] [2022-02-20 23:45:50,279 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:50,279 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:45:50,279 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:50,279 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:45:50,291 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:45:50,291 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:45:50,292 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:45:50,292 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:45:50,292 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:45:50,292 INFO L87 Difference]: Start difference. First operand 86 states and 92 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:45:50,686 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:50,686 INFO L93 Difference]: Finished difference Result 94 states and 98 transitions. [2022-02-20 23:45:50,686 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:45:50,686 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:45:50,686 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:50,686 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:45:50,687 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 91 transitions. [2022-02-20 23:45:50,687 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:45:50,688 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 91 transitions. [2022-02-20 23:45:50,688 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 91 transitions. [2022-02-20 23:45:50,787 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 91 edges. 91 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:50,788 INFO L225 Difference]: With dead ends: 94 [2022-02-20 23:45:50,788 INFO L226 Difference]: Without dead ends: 94 [2022-02-20 23:45:50,788 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 13 GetRequests, 6 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=30, Invalid=42, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:45:50,789 INFO L933 BasicCegarLoop]: 33 mSDtfsCounter, 244 mSDsluCounter, 15 mSDsCounter, 0 mSdLazyCounter, 71 mSolverCounterSat, 12 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 244 SdHoareTripleChecker+Valid, 48 SdHoareTripleChecker+Invalid, 83 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 12 IncrementalHoareTripleChecker+Valid, 71 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:50,789 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [244 Valid, 48 Invalid, 83 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [12 Valid, 71 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:45:50,790 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 94 states. [2022-02-20 23:45:50,791 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 94 to 82. [2022-02-20 23:45:50,792 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:50,792 INFO L82 GeneralOperation]: Start isEquivalent. First operand 94 states. Second operand has 82 states, 55 states have (on average 1.6) internal successors, (88), 81 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:45:50,792 INFO L74 IsIncluded]: Start isIncluded. First operand 94 states. Second operand has 82 states, 55 states have (on average 1.6) internal successors, (88), 81 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:45:50,792 INFO L87 Difference]: Start difference. First operand 94 states. Second operand has 82 states, 55 states have (on average 1.6) internal successors, (88), 81 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:45:50,793 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:50,793 INFO L93 Difference]: Finished difference Result 94 states and 98 transitions. [2022-02-20 23:45:50,793 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 98 transitions. [2022-02-20 23:45:50,793 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:50,794 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:50,794 INFO L74 IsIncluded]: Start isIncluded. First operand has 82 states, 55 states have (on average 1.6) internal successors, (88), 81 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 94 states. [2022-02-20 23:45:50,794 INFO L87 Difference]: Start difference. First operand has 82 states, 55 states have (on average 1.6) internal successors, (88), 81 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 94 states. [2022-02-20 23:45:50,795 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:50,795 INFO L93 Difference]: Finished difference Result 94 states and 98 transitions. [2022-02-20 23:45:50,796 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 98 transitions. [2022-02-20 23:45:50,796 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:50,796 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:50,796 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:50,796 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:50,796 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 82 states, 55 states have (on average 1.6) internal successors, (88), 81 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:45:50,797 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 82 states to 82 states and 88 transitions. [2022-02-20 23:45:50,798 INFO L78 Accepts]: Start accepts. Automaton has 82 states and 88 transitions. Word has length 11 [2022-02-20 23:45:50,798 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:50,798 INFO L470 AbstractCegarLoop]: Abstraction has 82 states and 88 transitions. [2022-02-20 23:45:50,798 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:45:50,798 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 88 transitions. [2022-02-20 23:45:50,798 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-02-20 23:45:50,798 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:50,799 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:45:50,823 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:45:51,007 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:45:51,007 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr18REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:51,008 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:51,008 INFO L85 PathProgramCache]: Analyzing trace with hash 1870051159, now seen corresponding path program 1 times [2022-02-20 23:45:51,008 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:45:51,008 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [713885070] [2022-02-20 23:45:51,008 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:51,008 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:45:51,008 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:45:51,009 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:45:51,011 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:45:51,066 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:51,070 INFO L263 TraceCheckSpWp]: Trace formula consists of 117 conjuncts, 10 conjunts are in the unsatisfiable core [2022-02-20 23:45:51,077 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:51,078 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:51,166 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:45:51,194 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:45:51,200 INFO L290 TraceCheckUtils]: 0: Hoare triple {2631#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(14bv32, 2bv32); {2631#true} is VALID [2022-02-20 23:45:51,201 INFO L290 TraceCheckUtils]: 1: Hoare triple {2631#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {2631#true} is VALID [2022-02-20 23:45:51,201 INFO L290 TraceCheckUtils]: 2: Hoare triple {2631#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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {2642#(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:45:51,202 INFO L290 TraceCheckUtils]: 3: Hoare triple {2642#(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~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L531 {2642#(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:45:51,202 INFO L290 TraceCheckUtils]: 4: Hoare triple {2642#(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~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L531-1 {2642#(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:45:51,203 INFO L290 TraceCheckUtils]: 5: Hoare triple {2642#(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~mem4#1.base, append_#t~mem4#1.offset; {2642#(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:45:51,203 INFO L290 TraceCheckUtils]: 6: Hoare triple {2642#(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_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L532 {2642#(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:45:51,204 INFO L290 TraceCheckUtils]: 7: Hoare triple {2642#(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~mem5#1.base != 0bv32 || append_#t~mem5#1.offset != 0bv32);call append_#t~malloc8#1.base, append_#t~malloc8#1.offset := #Ultimate.allocOnHeap(8bv32);append_#t~ite9#1.base, append_#t~ite9#1.offset := append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {2642#(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:45:51,205 INFO L290 TraceCheckUtils]: 8: Hoare triple {2642#(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~ite9#1.base, append_#t~ite9#1.offset, append_~item~0#1.base, ~bvadd32(4bv32, append_~item~0#1.offset), 4bv32); srcloc: L532-3 {2661#(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:45:51,205 INFO L290 TraceCheckUtils]: 9: Hoare triple {2661#(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~mem5#1.base, append_#t~mem5#1.offset;havoc append_#t~ite9#1.base, append_#t~ite9#1.offset;havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {2661#(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:45:51,206 INFO L290 TraceCheckUtils]: 10: Hoare triple {2661#(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: L535 {2668#(= (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:45:51,209 INFO L290 TraceCheckUtils]: 11: Hoare triple {2668#(= (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; {2668#(= (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:45:51,209 INFO L290 TraceCheckUtils]: 12: Hoare triple {2668#(= (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~nondet10#1);havoc main_#t~nondet10#1; {2668#(= (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:45:51,209 INFO L290 TraceCheckUtils]: 13: Hoare triple {2668#(= (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~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32); srcloc: L540-4 {2668#(= (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:45:51,210 INFO L290 TraceCheckUtils]: 14: Hoare triple {2668#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (_ bv1 1))} assume main_#t~mem11#1.base != 0bv32 || main_#t~mem11#1.offset != 0bv32;havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {2668#(= (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:45:51,211 INFO L290 TraceCheckUtils]: 15: Hoare triple {2668#(= (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~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32); srcloc: L544 {2684#(= (select |#valid| |ULTIMATE.start_main_#t~mem12#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:45:51,212 INFO L290 TraceCheckUtils]: 16: Hoare triple {2684#(= (select |#valid| |ULTIMATE.start_main_#t~mem12#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[main_#t~mem12#1.base]); {2632#false} is VALID [2022-02-20 23:45:51,213 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:45:51,213 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:45:51,213 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:45:51,213 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [713885070] [2022-02-20 23:45:51,213 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [713885070] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:51,213 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:51,213 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:45:51,213 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [745071837] [2022-02-20 23:45:51,214 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:51,214 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:45:51,214 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:51,214 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:45:51,230 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:45:51,230 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:45:51,231 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:45:51,231 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:45:51,231 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:45:51,231 INFO L87 Difference]: Start difference. First operand 82 states and 88 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:45:51,941 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:51,942 INFO L93 Difference]: Finished difference Result 90 states and 94 transitions. [2022-02-20 23:45:51,942 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:45:51,942 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:45:51,942 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:51,942 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:45:51,943 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 92 transitions. [2022-02-20 23:45:51,943 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:45:51,944 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 92 transitions. [2022-02-20 23:45:51,944 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 92 transitions. [2022-02-20 23:45:52,033 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 92 edges. 92 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:52,034 INFO L225 Difference]: With dead ends: 90 [2022-02-20 23:45:52,034 INFO L226 Difference]: Without dead ends: 90 [2022-02-20 23:45:52,035 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 12 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=22, Invalid=34, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:45:52,035 INFO L933 BasicCegarLoop]: 34 mSDtfsCounter, 151 mSDsluCounter, 58 mSDsCounter, 0 mSdLazyCounter, 146 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 151 SdHoareTripleChecker+Valid, 92 SdHoareTripleChecker+Invalid, 151 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 146 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:52,035 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [151 Valid, 92 Invalid, 151 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 146 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:45:52,036 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 90 states. [2022-02-20 23:45:52,037 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 90 to 81. [2022-02-20 23:45:52,037 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:52,038 INFO L82 GeneralOperation]: Start isEquivalent. First operand 90 states. Second operand has 81 states, 55 states have (on average 1.5818181818181818) internal successors, (87), 80 states have internal predecessors, (87), 0 states have call successors, (0), 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:45:52,038 INFO L74 IsIncluded]: Start isIncluded. First operand 90 states. Second operand has 81 states, 55 states have (on average 1.5818181818181818) internal successors, (87), 80 states have internal predecessors, (87), 0 states have call successors, (0), 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:45:52,038 INFO L87 Difference]: Start difference. First operand 90 states. Second operand has 81 states, 55 states have (on average 1.5818181818181818) internal successors, (87), 80 states have internal predecessors, (87), 0 states have call successors, (0), 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:45:52,039 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:52,039 INFO L93 Difference]: Finished difference Result 90 states and 94 transitions. [2022-02-20 23:45:52,039 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 94 transitions. [2022-02-20 23:45:52,039 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:52,040 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:52,040 INFO L74 IsIncluded]: Start isIncluded. First operand has 81 states, 55 states have (on average 1.5818181818181818) internal successors, (87), 80 states have internal predecessors, (87), 0 states have call successors, (0), 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:45:52,040 INFO L87 Difference]: Start difference. First operand has 81 states, 55 states have (on average 1.5818181818181818) internal successors, (87), 80 states have internal predecessors, (87), 0 states have call successors, (0), 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:45:52,041 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:52,041 INFO L93 Difference]: Finished difference Result 90 states and 94 transitions. [2022-02-20 23:45:52,041 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 94 transitions. [2022-02-20 23:45:52,041 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:52,041 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:52,042 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:52,042 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:52,042 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 81 states, 55 states have (on average 1.5818181818181818) internal successors, (87), 80 states have internal predecessors, (87), 0 states have call successors, (0), 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:45:52,043 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 81 states to 81 states and 87 transitions. [2022-02-20 23:45:52,043 INFO L78 Accepts]: Start accepts. Automaton has 81 states and 87 transitions. Word has length 17 [2022-02-20 23:45:52,043 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:52,043 INFO L470 AbstractCegarLoop]: Abstraction has 81 states and 87 transitions. [2022-02-20 23:45:52,043 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:45:52,043 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 87 transitions. [2022-02-20 23:45:52,044 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-02-20 23:45:52,044 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:52,044 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:45:52,068 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (8)] Ended with exit code 0 [2022-02-20 23:45:52,249 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:45:52,250 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr19REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:52,250 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:52,250 INFO L85 PathProgramCache]: Analyzing trace with hash 1870051160, now seen corresponding path program 1 times [2022-02-20 23:45:52,250 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:45:52,250 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [540795771] [2022-02-20 23:45:52,250 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:52,251 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:45:52,251 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:45:52,251 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:45:52,252 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:45:52,312 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:52,315 INFO L263 TraceCheckSpWp]: Trace formula consists of 117 conjuncts, 15 conjunts are in the unsatisfiable core [2022-02-20 23:45:52,324 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:52,325 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:52,483 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:45:52,488 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:45:52,554 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:45:52,559 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:45:52,571 INFO L290 TraceCheckUtils]: 0: Hoare triple {3042#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(14bv32, 2bv32); {3042#true} is VALID [2022-02-20 23:45:52,571 INFO L290 TraceCheckUtils]: 1: Hoare triple {3042#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {3042#true} is VALID [2022-02-20 23:45:52,572 INFO L290 TraceCheckUtils]: 2: Hoare triple {3042#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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {3053#(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:45:52,573 INFO L290 TraceCheckUtils]: 3: Hoare triple {3053#(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~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L531 {3053#(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:45:52,574 INFO L290 TraceCheckUtils]: 4: Hoare triple {3053#(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~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L531-1 {3053#(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:45:52,574 INFO L290 TraceCheckUtils]: 5: Hoare triple {3053#(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~mem4#1.base, append_#t~mem4#1.offset; {3053#(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:45:52,575 INFO L290 TraceCheckUtils]: 6: Hoare triple {3053#(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_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L532 {3053#(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:45:52,575 INFO L290 TraceCheckUtils]: 7: Hoare triple {3053#(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~mem5#1.base != 0bv32 || append_#t~mem5#1.offset != 0bv32);call append_#t~malloc8#1.base, append_#t~malloc8#1.offset := #Ultimate.allocOnHeap(8bv32);append_#t~ite9#1.base, append_#t~ite9#1.offset := append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {3053#(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:45:52,576 INFO L290 TraceCheckUtils]: 8: Hoare triple {3053#(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~ite9#1.base, append_#t~ite9#1.offset, append_~item~0#1.base, ~bvadd32(4bv32, append_~item~0#1.offset), 4bv32); srcloc: L532-3 {3072#(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:45:52,576 INFO L290 TraceCheckUtils]: 9: Hoare triple {3072#(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~mem5#1.base, append_#t~mem5#1.offset;havoc append_#t~ite9#1.base, append_#t~ite9#1.offset;havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {3072#(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:45:52,578 INFO L290 TraceCheckUtils]: 10: Hoare triple {3072#(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: L535 {3079#(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:45:52,579 INFO L290 TraceCheckUtils]: 11: Hoare triple {3079#(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; {3079#(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:45:52,579 INFO L290 TraceCheckUtils]: 12: Hoare triple {3079#(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~nondet10#1);havoc main_#t~nondet10#1; {3079#(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:45:52,580 INFO L290 TraceCheckUtils]: 13: Hoare triple {3079#(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~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32); srcloc: L540-4 {3079#(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:45:52,580 INFO L290 TraceCheckUtils]: 14: Hoare triple {3079#(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 main_#t~mem11#1.base != 0bv32 || main_#t~mem11#1.offset != 0bv32;havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {3079#(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:45:52,580 INFO L290 TraceCheckUtils]: 15: Hoare triple {3079#(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~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32); srcloc: L544 {3095#(and (bvule (_ bv8 32) (select |#length| |ULTIMATE.start_main_#t~mem12#1.base|)) (= |ULTIMATE.start_main_#t~mem12#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:52,581 INFO L290 TraceCheckUtils]: 16: Hoare triple {3095#(and (bvule (_ bv8 32) (select |#length| |ULTIMATE.start_main_#t~mem12#1.base|)) (= |ULTIMATE.start_main_#t~mem12#1.offset| (_ bv0 32)))} assume !((~bvule32(~bvadd32(4bv32, main_#t~mem12#1.offset), #length[main_#t~mem12#1.base]) && ~bvule32(main_#t~mem12#1.offset, ~bvadd32(4bv32, main_#t~mem12#1.offset))) && ~bvule32(0bv32, main_#t~mem12#1.offset)); {3043#false} is VALID [2022-02-20 23:45:52,581 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:45:52,581 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:45:52,581 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:45:52,582 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [540795771] [2022-02-20 23:45:52,582 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [540795771] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:52,582 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:52,582 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:45:52,582 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [582637782] [2022-02-20 23:45:52,582 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:52,582 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:45:52,582 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:52,582 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:45:52,601 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:45:52,601 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:45:52,602 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:45:52,602 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:45:52,602 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:45:52,602 INFO L87 Difference]: Start difference. First operand 81 states and 87 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:45:53,268 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:53,268 INFO L93 Difference]: Finished difference Result 92 states and 96 transitions. [2022-02-20 23:45:53,269 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:45:53,269 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:45:53,269 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:53,269 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:45:53,273 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 94 transitions. [2022-02-20 23:45:53,273 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:45:53,274 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 94 transitions. [2022-02-20 23:45:53,274 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 94 transitions. [2022-02-20 23:45:53,387 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:45:53,388 INFO L225 Difference]: With dead ends: 92 [2022-02-20 23:45:53,388 INFO L226 Difference]: Without dead ends: 92 [2022-02-20 23:45:53,388 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:45:53,389 INFO L933 BasicCegarLoop]: 38 mSDtfsCounter, 126 mSDsluCounter, 53 mSDsCounter, 0 mSdLazyCounter, 104 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 126 SdHoareTripleChecker+Valid, 91 SdHoareTripleChecker+Invalid, 109 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 104 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:53,389 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [126 Valid, 91 Invalid, 109 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 104 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:45:53,389 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 92 states. [2022-02-20 23:45:53,391 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 92 to 80. [2022-02-20 23:45:53,391 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:53,391 INFO L82 GeneralOperation]: Start isEquivalent. First operand 92 states. Second operand has 80 states, 55 states have (on average 1.5636363636363637) internal successors, (86), 79 states have internal predecessors, (86), 0 states have call successors, (0), 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:45:53,391 INFO L74 IsIncluded]: Start isIncluded. First operand 92 states. Second operand has 80 states, 55 states have (on average 1.5636363636363637) internal successors, (86), 79 states have internal predecessors, (86), 0 states have call successors, (0), 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:45:53,391 INFO L87 Difference]: Start difference. First operand 92 states. Second operand has 80 states, 55 states have (on average 1.5636363636363637) internal successors, (86), 79 states have internal predecessors, (86), 0 states have call successors, (0), 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:45:53,394 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:53,394 INFO L93 Difference]: Finished difference Result 92 states and 96 transitions. [2022-02-20 23:45:53,394 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 96 transitions. [2022-02-20 23:45:53,394 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:53,394 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:53,394 INFO L74 IsIncluded]: Start isIncluded. First operand has 80 states, 55 states have (on average 1.5636363636363637) internal successors, (86), 79 states have internal predecessors, (86), 0 states have call successors, (0), 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:45:53,395 INFO L87 Difference]: Start difference. First operand has 80 states, 55 states have (on average 1.5636363636363637) internal successors, (86), 79 states have internal predecessors, (86), 0 states have call successors, (0), 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:45:53,396 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:53,396 INFO L93 Difference]: Finished difference Result 92 states and 96 transitions. [2022-02-20 23:45:53,396 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 96 transitions. [2022-02-20 23:45:53,397 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:53,397 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:53,397 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:53,397 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:53,397 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 80 states, 55 states have (on average 1.5636363636363637) internal successors, (86), 79 states have internal predecessors, (86), 0 states have call successors, (0), 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:45:53,398 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 80 states to 80 states and 86 transitions. [2022-02-20 23:45:53,398 INFO L78 Accepts]: Start accepts. Automaton has 80 states and 86 transitions. Word has length 17 [2022-02-20 23:45:53,398 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:53,398 INFO L470 AbstractCegarLoop]: Abstraction has 80 states and 86 transitions. [2022-02-20 23:45:53,398 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:45:53,399 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 86 transitions. [2022-02-20 23:45:53,399 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-02-20 23:45:53,399 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:53,399 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:45:53,419 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:45:53,605 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:45:53,606 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting ULTIMATE.startErr47ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:53,606 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:53,606 INFO L85 PathProgramCache]: Analyzing trace with hash 1854452923, now seen corresponding path program 1 times [2022-02-20 23:45:53,607 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:45:53,607 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [281016842] [2022-02-20 23:45:53,607 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:53,607 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:45:53,607 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:45:53,608 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:45:53,609 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:45:53,677 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:53,681 INFO L263 TraceCheckSpWp]: Trace formula consists of 123 conjuncts, 10 conjunts are in the unsatisfiable core [2022-02-20 23:45:53,692 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:53,693 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:53,826 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:45:53,847 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 16 treesize of output 8 [2022-02-20 23:45:53,858 INFO L290 TraceCheckUtils]: 0: Hoare triple {3458#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(14bv32, 2bv32); {3458#true} is VALID [2022-02-20 23:45:53,858 INFO L290 TraceCheckUtils]: 1: Hoare triple {3458#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {3458#true} is VALID [2022-02-20 23:45:53,859 INFO L290 TraceCheckUtils]: 2: Hoare triple {3458#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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {3469#(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|) (not (= |ULTIMATE.start_append_~item~0#1.base| (_ bv0 32))))} is VALID [2022-02-20 23:45:53,859 INFO L290 TraceCheckUtils]: 3: Hoare triple {3469#(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|) (not (= |ULTIMATE.start_append_~item~0#1.base| (_ bv0 32))))} SUMMARY for call append_#t~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L531 {3469#(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|) (not (= |ULTIMATE.start_append_~item~0#1.base| (_ bv0 32))))} is VALID [2022-02-20 23:45:53,860 INFO L290 TraceCheckUtils]: 4: Hoare triple {3469#(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|) (not (= |ULTIMATE.start_append_~item~0#1.base| (_ bv0 32))))} SUMMARY for call write~$Pointer$(append_#t~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L531-1 {3469#(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|) (not (= |ULTIMATE.start_append_~item~0#1.base| (_ bv0 32))))} is VALID [2022-02-20 23:45:53,860 INFO L290 TraceCheckUtils]: 5: Hoare triple {3469#(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|) (not (= |ULTIMATE.start_append_~item~0#1.base| (_ bv0 32))))} havoc append_#t~mem4#1.base, append_#t~mem4#1.offset; {3469#(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|) (not (= |ULTIMATE.start_append_~item~0#1.base| (_ bv0 32))))} is VALID [2022-02-20 23:45:53,861 INFO L290 TraceCheckUtils]: 6: Hoare triple {3469#(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|) (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_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L532 {3469#(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|) (not (= |ULTIMATE.start_append_~item~0#1.base| (_ bv0 32))))} is VALID [2022-02-20 23:45:53,861 INFO L290 TraceCheckUtils]: 7: Hoare triple {3469#(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|) (not (= |ULTIMATE.start_append_~item~0#1.base| (_ bv0 32))))} assume !(append_#t~mem5#1.base != 0bv32 || append_#t~mem5#1.offset != 0bv32);call append_#t~malloc8#1.base, append_#t~malloc8#1.offset := #Ultimate.allocOnHeap(8bv32);append_#t~ite9#1.base, append_#t~ite9#1.offset := append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {3469#(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|) (not (= |ULTIMATE.start_append_~item~0#1.base| (_ bv0 32))))} is VALID [2022-02-20 23:45:53,862 INFO L290 TraceCheckUtils]: 8: Hoare triple {3469#(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|) (not (= |ULTIMATE.start_append_~item~0#1.base| (_ bv0 32))))} SUMMARY for call write~$Pointer$(append_#t~ite9#1.base, append_#t~ite9#1.offset, append_~item~0#1.base, ~bvadd32(4bv32, append_~item~0#1.offset), 4bv32); srcloc: L532-3 {3469#(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|) (not (= |ULTIMATE.start_append_~item~0#1.base| (_ bv0 32))))} is VALID [2022-02-20 23:45:53,862 INFO L290 TraceCheckUtils]: 9: Hoare triple {3469#(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|) (not (= |ULTIMATE.start_append_~item~0#1.base| (_ bv0 32))))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset;havoc append_#t~ite9#1.base, append_#t~ite9#1.offset;havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {3469#(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|) (not (= |ULTIMATE.start_append_~item~0#1.base| (_ bv0 32))))} is VALID [2022-02-20 23:45:53,863 INFO L290 TraceCheckUtils]: 10: Hoare triple {3469#(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|) (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: L535 {3494#(not (= (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:45:53,864 INFO L290 TraceCheckUtils]: 11: Hoare triple {3494#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (_ bv0 32)))} assume { :end_inline_append } true; {3494#(not (= (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:45:53,864 INFO L290 TraceCheckUtils]: 12: Hoare triple {3494#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (_ bv0 32)))} assume !(0bv32 != main_#t~nondet10#1);havoc main_#t~nondet10#1; {3494#(not (= (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:45:53,865 INFO L290 TraceCheckUtils]: 13: Hoare triple {3494#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|) (_ bv0 32)))} SUMMARY for call main_#t~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32); srcloc: L540-4 {3504#(not (= |ULTIMATE.start_main_#t~mem11#1.base| (_ bv0 32)))} is VALID [2022-02-20 23:45:53,865 INFO L290 TraceCheckUtils]: 14: Hoare triple {3504#(not (= |ULTIMATE.start_main_#t~mem11#1.base| (_ bv0 32)))} assume !(main_#t~mem11#1.base != 0bv32 || main_#t~mem11#1.offset != 0bv32);havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {3459#false} is VALID [2022-02-20 23:45:53,865 INFO L290 TraceCheckUtils]: 15: Hoare triple {3459#false} SUMMARY for call main_#t~mem20#1.base, main_#t~mem20#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32); srcloc: L552-1 {3459#false} is VALID [2022-02-20 23:45:53,865 INFO L290 TraceCheckUtils]: 16: Hoare triple {3459#false} assume !(main_#t~mem20#1.base != 0bv32 || main_#t~mem20#1.offset != 0bv32);havoc main_#t~mem20#1.base, main_#t~mem20#1.offset; {3459#false} is VALID [2022-02-20 23:45:53,866 INFO L290 TraceCheckUtils]: 17: Hoare triple {3459#false} main_#res#1 := 0bv32;call ULTIMATE.dealloc(main_~#list~0#1.base, main_~#list~0#1.offset);havoc main_~#list~0#1.base, main_~#list~0#1.offset; {3459#false} is VALID [2022-02-20 23:45:53,866 INFO L290 TraceCheckUtils]: 18: Hoare triple {3459#false} assume !(#valid == main_old_#valid#1); {3459#false} is VALID [2022-02-20 23:45:53,866 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:45:53,866 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:45:53,866 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:45:53,866 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [281016842] [2022-02-20 23:45:53,866 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [281016842] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:53,866 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:53,866 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:45:53,867 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [589549599] [2022-02-20 23:45:53,867 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:53,867 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 5 states have internal predecessors, (19), 0 states have call successors, (0), 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 19 [2022-02-20 23:45:53,868 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:53,868 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.8) internal successors, (19), 5 states have internal predecessors, (19), 0 states have call successors, (0), 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:45:53,885 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 19 edges. 19 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:53,885 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:45:53,886 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:45:53,886 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:45:53,886 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:45:53,886 INFO L87 Difference]: Start difference. First operand 80 states and 86 transitions. Second operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 5 states have internal predecessors, (19), 0 states have call successors, (0), 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:45:54,354 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:54,354 INFO L93 Difference]: Finished difference Result 74 states and 76 transitions. [2022-02-20 23:45:54,354 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:45:54,354 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 5 states have internal predecessors, (19), 0 states have call successors, (0), 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 19 [2022-02-20 23:45:54,354 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:54,354 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 5 states have internal predecessors, (19), 0 states have call successors, (0), 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:45:54,355 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 74 transitions. [2022-02-20 23:45:54,355 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 5 states have internal predecessors, (19), 0 states have call successors, (0), 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:45:54,356 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 74 transitions. [2022-02-20 23:45:54,356 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 74 transitions. [2022-02-20 23:45:54,429 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:54,430 INFO L225 Difference]: With dead ends: 74 [2022-02-20 23:45:54,430 INFO L226 Difference]: Without dead ends: 74 [2022-02-20 23:45:54,430 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 20 GetRequests, 15 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:45:54,431 INFO L933 BasicCegarLoop]: 42 mSDtfsCounter, 83 mSDsluCounter, 63 mSDsCounter, 0 mSdLazyCounter, 85 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 83 SdHoareTripleChecker+Valid, 105 SdHoareTripleChecker+Invalid, 89 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 85 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:54,431 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [83 Valid, 105 Invalid, 89 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 85 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:45:54,431 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states. [2022-02-20 23:45:54,432 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 74. [2022-02-20 23:45:54,432 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:54,433 INFO L82 GeneralOperation]: Start isEquivalent. First operand 74 states. Second operand has 74 states, 49 states have (on average 1.5510204081632653) internal successors, (76), 73 states have internal predecessors, (76), 0 states have call successors, (0), 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:45:54,433 INFO L74 IsIncluded]: Start isIncluded. First operand 74 states. Second operand has 74 states, 49 states have (on average 1.5510204081632653) internal successors, (76), 73 states have internal predecessors, (76), 0 states have call successors, (0), 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:45:54,433 INFO L87 Difference]: Start difference. First operand 74 states. Second operand has 74 states, 49 states have (on average 1.5510204081632653) internal successors, (76), 73 states have internal predecessors, (76), 0 states have call successors, (0), 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:45:54,434 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:54,435 INFO L93 Difference]: Finished difference Result 74 states and 76 transitions. [2022-02-20 23:45:54,435 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 76 transitions. [2022-02-20 23:45:54,435 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:54,435 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:54,435 INFO L74 IsIncluded]: Start isIncluded. First operand has 74 states, 49 states have (on average 1.5510204081632653) internal successors, (76), 73 states have internal predecessors, (76), 0 states have call successors, (0), 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:45:54,435 INFO L87 Difference]: Start difference. First operand has 74 states, 49 states have (on average 1.5510204081632653) internal successors, (76), 73 states have internal predecessors, (76), 0 states have call successors, (0), 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:45:54,436 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:54,436 INFO L93 Difference]: Finished difference Result 74 states and 76 transitions. [2022-02-20 23:45:54,436 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 76 transitions. [2022-02-20 23:45:54,437 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:54,437 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:54,437 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:54,437 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:54,437 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 74 states, 49 states have (on average 1.5510204081632653) internal successors, (76), 73 states have internal predecessors, (76), 0 states have call successors, (0), 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:45:54,438 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 76 transitions. [2022-02-20 23:45:54,438 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 76 transitions. Word has length 19 [2022-02-20 23:45:54,438 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:54,438 INFO L470 AbstractCegarLoop]: Abstraction has 74 states and 76 transitions. [2022-02-20 23:45:54,438 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 5 states have internal predecessors, (19), 0 states have call successors, (0), 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:45:54,438 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 76 transitions. [2022-02-20 23:45:54,439 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 21 [2022-02-20 23:45:54,439 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:54,439 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:45:54,446 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:45:54,646 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:45:54,646 INFO L402 AbstractCegarLoop]: === Iteration 10 === Targeting ULTIMATE.startErr22REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:54,646 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:54,646 INFO L85 PathProgramCache]: Analyzing trace with hash 673311178, now seen corresponding path program 1 times [2022-02-20 23:45:54,647 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:45:54,647 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [791427897] [2022-02-20 23:45:54,647 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:54,647 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:45:54,647 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:45:54,648 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:45:54,648 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:45:54,715 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:54,718 INFO L263 TraceCheckSpWp]: Trace formula consists of 131 conjuncts, 10 conjunts are in the unsatisfiable core [2022-02-20 23:45:54,726 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:54,727 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:54,804 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:45:54,853 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:45:54,859 INFO L290 TraceCheckUtils]: 0: Hoare triple {3819#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(14bv32, 2bv32); {3819#true} is VALID [2022-02-20 23:45:54,860 INFO L290 TraceCheckUtils]: 1: Hoare triple {3819#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {3819#true} is VALID [2022-02-20 23:45:54,860 INFO L290 TraceCheckUtils]: 2: Hoare triple {3819#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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {3830#(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:45:54,861 INFO L290 TraceCheckUtils]: 3: Hoare triple {3830#(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~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L531 {3830#(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:45:54,861 INFO L290 TraceCheckUtils]: 4: Hoare triple {3830#(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~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L531-1 {3830#(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:45:54,862 INFO L290 TraceCheckUtils]: 5: Hoare triple {3830#(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~mem4#1.base, append_#t~mem4#1.offset; {3830#(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:45:54,862 INFO L290 TraceCheckUtils]: 6: Hoare triple {3830#(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_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L532 {3830#(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:45:54,863 INFO L290 TraceCheckUtils]: 7: Hoare triple {3830#(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~mem5#1.base != 0bv32 || append_#t~mem5#1.offset != 0bv32);call append_#t~malloc8#1.base, append_#t~malloc8#1.offset := #Ultimate.allocOnHeap(8bv32);append_#t~ite9#1.base, append_#t~ite9#1.offset := append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {3830#(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:45:54,863 INFO L290 TraceCheckUtils]: 8: Hoare triple {3830#(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~ite9#1.base, append_#t~ite9#1.offset, append_~item~0#1.base, ~bvadd32(4bv32, append_~item~0#1.offset), 4bv32); srcloc: L532-3 {3849#(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:45:54,864 INFO L290 TraceCheckUtils]: 9: Hoare triple {3849#(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~mem5#1.base, append_#t~mem5#1.offset;havoc append_#t~ite9#1.base, append_#t~ite9#1.offset;havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {3849#(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:45:54,865 INFO L290 TraceCheckUtils]: 10: Hoare triple {3849#(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: L535 {3856#(= (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:45:54,866 INFO L290 TraceCheckUtils]: 11: Hoare triple {3856#(= (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; {3856#(= (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:45:54,866 INFO L290 TraceCheckUtils]: 12: Hoare triple {3856#(= (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~nondet10#1);havoc main_#t~nondet10#1; {3856#(= (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:45:54,866 INFO L290 TraceCheckUtils]: 13: Hoare triple {3856#(= (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~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32); srcloc: L540-4 {3856#(= (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:45:54,869 INFO L290 TraceCheckUtils]: 14: Hoare triple {3856#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (_ bv1 1))} assume main_#t~mem11#1.base != 0bv32 || main_#t~mem11#1.offset != 0bv32;havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {3856#(= (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:45:54,869 INFO L290 TraceCheckUtils]: 15: Hoare triple {3856#(= (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~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32); srcloc: L544 {3856#(= (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:45:54,870 INFO L290 TraceCheckUtils]: 16: Hoare triple {3856#(= (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~mem13#1.base, main_#t~mem13#1.offset := read~$Pointer$(main_#t~mem12#1.base, main_#t~mem12#1.offset, 4bv32); srcloc: L544-1 {3856#(= (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:45:54,870 INFO L290 TraceCheckUtils]: 17: Hoare triple {3856#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (_ bv1 1))} main_~next~0#1.base, main_~next~0#1.offset := main_#t~mem13#1.base, main_#t~mem13#1.offset;havoc main_#t~mem12#1.base, main_#t~mem12#1.offset;havoc main_#t~mem13#1.base, main_#t~mem13#1.offset; {3856#(= (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:45:54,871 INFO L290 TraceCheckUtils]: 18: Hoare triple {3856#(= (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~mem14#1.base, main_#t~mem14#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32); srcloc: L545 {3881#(= (select |#valid| |ULTIMATE.start_main_#t~mem14#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:45:54,871 INFO L290 TraceCheckUtils]: 19: Hoare triple {3881#(= (select |#valid| |ULTIMATE.start_main_#t~mem14#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[main_#t~mem14#1.base]); {3820#false} is VALID [2022-02-20 23:45:54,871 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:45:54,871 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:45:54,871 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:45:54,872 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [791427897] [2022-02-20 23:45:54,872 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [791427897] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:54,872 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:54,872 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:45:54,872 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1488013872] [2022-02-20 23:45:54,872 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:54,872 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 4.0) internal successors, (20), 6 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:45:54,873 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:54,873 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 4.0) internal successors, (20), 6 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:45:54,892 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:45:54,892 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:45:54,893 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:45:54,893 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:45:54,893 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:45:54,893 INFO L87 Difference]: Start difference. First operand 74 states and 76 transitions. Second operand has 6 states, 5 states have (on average 4.0) internal successors, (20), 6 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:45:55,536 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:55,536 INFO L93 Difference]: Finished difference Result 73 states and 75 transitions. [2022-02-20 23:45:55,536 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:45:55,536 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 4.0) internal successors, (20), 6 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:45:55,536 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:55,536 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 4.0) internal successors, (20), 6 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:45:55,537 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 73 transitions. [2022-02-20 23:45:55,537 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 4.0) internal successors, (20), 6 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:45:55,538 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 73 transitions. [2022-02-20 23:45:55,538 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 73 transitions. [2022-02-20 23:45:55,605 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 73 edges. 73 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:55,606 INFO L225 Difference]: With dead ends: 73 [2022-02-20 23:45:55,606 INFO L226 Difference]: Without dead ends: 73 [2022-02-20 23:45:55,606 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 21 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=22, Invalid=34, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:45:55,606 INFO L933 BasicCegarLoop]: 36 mSDtfsCounter, 79 mSDsluCounter, 53 mSDsCounter, 0 mSdLazyCounter, 142 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 79 SdHoareTripleChecker+Valid, 89 SdHoareTripleChecker+Invalid, 146 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 142 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:55,606 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [79 Valid, 89 Invalid, 146 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 142 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:45:55,607 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 73 states. [2022-02-20 23:45:55,608 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 73 to 73. [2022-02-20 23:45:55,608 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:55,608 INFO L82 GeneralOperation]: Start isEquivalent. First operand 73 states. Second operand has 73 states, 49 states have (on average 1.530612244897959) internal successors, (75), 72 states have internal predecessors, (75), 0 states have call successors, (0), 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:45:55,608 INFO L74 IsIncluded]: Start isIncluded. First operand 73 states. Second operand has 73 states, 49 states have (on average 1.530612244897959) internal successors, (75), 72 states have internal predecessors, (75), 0 states have call successors, (0), 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:45:55,608 INFO L87 Difference]: Start difference. First operand 73 states. Second operand has 73 states, 49 states have (on average 1.530612244897959) internal successors, (75), 72 states have internal predecessors, (75), 0 states have call successors, (0), 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:45:55,609 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:55,610 INFO L93 Difference]: Finished difference Result 73 states and 75 transitions. [2022-02-20 23:45:55,610 INFO L276 IsEmpty]: Start isEmpty. Operand 73 states and 75 transitions. [2022-02-20 23:45:55,610 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:55,610 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:55,610 INFO L74 IsIncluded]: Start isIncluded. First operand has 73 states, 49 states have (on average 1.530612244897959) internal successors, (75), 72 states have internal predecessors, (75), 0 states have call successors, (0), 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:45:55,610 INFO L87 Difference]: Start difference. First operand has 73 states, 49 states have (on average 1.530612244897959) internal successors, (75), 72 states have internal predecessors, (75), 0 states have call successors, (0), 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:45:55,611 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:55,614 INFO L93 Difference]: Finished difference Result 73 states and 75 transitions. [2022-02-20 23:45:55,614 INFO L276 IsEmpty]: Start isEmpty. Operand 73 states and 75 transitions. [2022-02-20 23:45:55,614 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:55,614 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:55,614 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:55,614 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:55,615 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 73 states, 49 states have (on average 1.530612244897959) internal successors, (75), 72 states have internal predecessors, (75), 0 states have call successors, (0), 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:45:55,615 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 73 states to 73 states and 75 transitions. [2022-02-20 23:45:55,615 INFO L78 Accepts]: Start accepts. Automaton has 73 states and 75 transitions. Word has length 20 [2022-02-20 23:45:55,615 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:55,616 INFO L470 AbstractCegarLoop]: Abstraction has 73 states and 75 transitions. [2022-02-20 23:45:55,616 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 4.0) internal successors, (20), 6 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:45:55,616 INFO L276 IsEmpty]: Start isEmpty. Operand 73 states and 75 transitions. [2022-02-20 23:45:55,616 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 21 [2022-02-20 23:45:55,616 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:55,616 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:45:55,623 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:45:55,823 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:45:55,824 INFO L402 AbstractCegarLoop]: === Iteration 11 === Targeting ULTIMATE.startErr23REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:55,824 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:55,824 INFO L85 PathProgramCache]: Analyzing trace with hash 673311179, now seen corresponding path program 1 times [2022-02-20 23:45:55,824 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:45:55,824 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [121172891] [2022-02-20 23:45:55,825 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:55,825 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:45:55,825 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:45:55,826 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:45:55,826 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:45:55,888 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:55,891 INFO L263 TraceCheckSpWp]: Trace formula consists of 131 conjuncts, 15 conjunts are in the unsatisfiable core [2022-02-20 23:45:55,901 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:55,902 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:56,040 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:45:56,045 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:45:56,120 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:45:56,123 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:45:56,134 INFO L290 TraceCheckUtils]: 0: Hoare triple {4180#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(14bv32, 2bv32); {4180#true} is VALID [2022-02-20 23:45:56,134 INFO L290 TraceCheckUtils]: 1: Hoare triple {4180#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {4180#true} is VALID [2022-02-20 23:45:56,135 INFO L290 TraceCheckUtils]: 2: Hoare triple {4180#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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {4191#(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:45:56,136 INFO L290 TraceCheckUtils]: 3: Hoare triple {4191#(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~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L531 {4191#(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:45:56,137 INFO L290 TraceCheckUtils]: 4: Hoare triple {4191#(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~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L531-1 {4191#(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:45:56,137 INFO L290 TraceCheckUtils]: 5: Hoare triple {4191#(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~mem4#1.base, append_#t~mem4#1.offset; {4191#(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:45:56,139 INFO L290 TraceCheckUtils]: 6: Hoare triple {4191#(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_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L532 {4191#(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:45:56,140 INFO L290 TraceCheckUtils]: 7: Hoare triple {4191#(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~mem5#1.base != 0bv32 || append_#t~mem5#1.offset != 0bv32);call append_#t~malloc8#1.base, append_#t~malloc8#1.offset := #Ultimate.allocOnHeap(8bv32);append_#t~ite9#1.base, append_#t~ite9#1.offset := append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {4191#(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:45:56,150 INFO L290 TraceCheckUtils]: 8: Hoare triple {4191#(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~ite9#1.base, append_#t~ite9#1.offset, append_~item~0#1.base, ~bvadd32(4bv32, append_~item~0#1.offset), 4bv32); srcloc: L532-3 {4210#(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:45:56,155 INFO L290 TraceCheckUtils]: 9: Hoare triple {4210#(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~mem5#1.base, append_#t~mem5#1.offset;havoc append_#t~ite9#1.base, append_#t~ite9#1.offset;havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {4210#(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:45:56,157 INFO L290 TraceCheckUtils]: 10: Hoare triple {4210#(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: L535 {4217#(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:45:56,158 INFO L290 TraceCheckUtils]: 11: Hoare triple {4217#(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; {4217#(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:45:56,158 INFO L290 TraceCheckUtils]: 12: Hoare triple {4217#(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~nondet10#1);havoc main_#t~nondet10#1; {4217#(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:45:56,159 INFO L290 TraceCheckUtils]: 13: Hoare triple {4217#(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~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32); srcloc: L540-4 {4217#(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:45:56,160 INFO L290 TraceCheckUtils]: 14: Hoare triple {4217#(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 main_#t~mem11#1.base != 0bv32 || main_#t~mem11#1.offset != 0bv32;havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {4217#(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:45:56,160 INFO L290 TraceCheckUtils]: 15: Hoare triple {4217#(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~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32); srcloc: L544 {4217#(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:45:56,161 INFO L290 TraceCheckUtils]: 16: Hoare triple {4217#(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~mem13#1.base, main_#t~mem13#1.offset := read~$Pointer$(main_#t~mem12#1.base, main_#t~mem12#1.offset, 4bv32); srcloc: L544-1 {4217#(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:45:56,162 INFO L290 TraceCheckUtils]: 17: Hoare triple {4217#(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|)))} main_~next~0#1.base, main_~next~0#1.offset := main_#t~mem13#1.base, main_#t~mem13#1.offset;havoc main_#t~mem12#1.base, main_#t~mem12#1.offset;havoc main_#t~mem13#1.base, main_#t~mem13#1.offset; {4217#(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:45:56,162 INFO L290 TraceCheckUtils]: 18: Hoare triple {4217#(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~mem14#1.base, main_#t~mem14#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32); srcloc: L545 {4242#(and (bvule (_ bv8 32) (select |#length| |ULTIMATE.start_main_#t~mem14#1.base|)) (= |ULTIMATE.start_main_#t~mem14#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:56,163 INFO L290 TraceCheckUtils]: 19: Hoare triple {4242#(and (bvule (_ bv8 32) (select |#length| |ULTIMATE.start_main_#t~mem14#1.base|)) (= |ULTIMATE.start_main_#t~mem14#1.offset| (_ bv0 32)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(4bv32, main_#t~mem14#1.offset)), #length[main_#t~mem14#1.base]) && ~bvule32(~bvadd32(4bv32, main_#t~mem14#1.offset), ~bvadd32(4bv32, ~bvadd32(4bv32, main_#t~mem14#1.offset)))) && ~bvule32(0bv32, ~bvadd32(4bv32, main_#t~mem14#1.offset))); {4181#false} is VALID [2022-02-20 23:45:56,163 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:45:56,163 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:45:56,163 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:45:56,163 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [121172891] [2022-02-20 23:45:56,163 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [121172891] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:56,163 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:56,163 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:45:56,163 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1513654138] [2022-02-20 23:45:56,163 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:56,164 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 4.0) internal successors, (20), 6 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:45:56,164 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:56,164 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 4.0) internal successors, (20), 6 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:45:56,191 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:45:56,191 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:45:56,191 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:45:56,192 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:45:56,192 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:45:56,192 INFO L87 Difference]: Start difference. First operand 73 states and 75 transitions. Second operand has 6 states, 5 states have (on average 4.0) internal successors, (20), 6 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:45:56,857 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:56,857 INFO L93 Difference]: Finished difference Result 72 states and 74 transitions. [2022-02-20 23:45:56,857 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:45:56,857 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 4.0) internal successors, (20), 6 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:45:56,857 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:56,857 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 4.0) internal successors, (20), 6 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:45:56,858 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 72 transitions. [2022-02-20 23:45:56,858 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 4.0) internal successors, (20), 6 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:45:56,858 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 72 transitions. [2022-02-20 23:45:56,858 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 72 transitions. [2022-02-20 23:45:56,941 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:56,942 INFO L225 Difference]: With dead ends: 72 [2022-02-20 23:45:56,942 INFO L226 Difference]: Without dead ends: 72 [2022-02-20 23:45:56,942 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 21 GetRequests, 15 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:45:56,942 INFO L933 BasicCegarLoop]: 36 mSDtfsCounter, 88 mSDsluCounter, 46 mSDsCounter, 0 mSdLazyCounter, 102 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 88 SdHoareTripleChecker+Valid, 82 SdHoareTripleChecker+Invalid, 106 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 102 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:56,942 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [88 Valid, 82 Invalid, 106 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 102 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:45:56,943 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 72 states. [2022-02-20 23:45:56,944 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 72 to 72. [2022-02-20 23:45:56,944 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:56,944 INFO L82 GeneralOperation]: Start isEquivalent. First operand 72 states. Second operand has 72 states, 49 states have (on average 1.510204081632653) internal successors, (74), 71 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:45:56,944 INFO L74 IsIncluded]: Start isIncluded. First operand 72 states. Second operand has 72 states, 49 states have (on average 1.510204081632653) internal successors, (74), 71 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:45:56,944 INFO L87 Difference]: Start difference. First operand 72 states. Second operand has 72 states, 49 states have (on average 1.510204081632653) internal successors, (74), 71 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:45:56,945 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:56,945 INFO L93 Difference]: Finished difference Result 72 states and 74 transitions. [2022-02-20 23:45:56,945 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 74 transitions. [2022-02-20 23:45:56,945 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:56,945 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:56,945 INFO L74 IsIncluded]: Start isIncluded. First operand has 72 states, 49 states have (on average 1.510204081632653) internal successors, (74), 71 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 72 states. [2022-02-20 23:45:56,946 INFO L87 Difference]: Start difference. First operand has 72 states, 49 states have (on average 1.510204081632653) internal successors, (74), 71 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 72 states. [2022-02-20 23:45:56,946 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:56,946 INFO L93 Difference]: Finished difference Result 72 states and 74 transitions. [2022-02-20 23:45:56,946 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 74 transitions. [2022-02-20 23:45:56,947 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:56,947 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:56,947 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:56,947 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:56,947 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 72 states, 49 states have (on average 1.510204081632653) internal successors, (74), 71 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:45:56,947 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 72 states to 72 states and 74 transitions. [2022-02-20 23:45:56,948 INFO L78 Accepts]: Start accepts. Automaton has 72 states and 74 transitions. Word has length 20 [2022-02-20 23:45:56,948 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:56,948 INFO L470 AbstractCegarLoop]: Abstraction has 72 states and 74 transitions. [2022-02-20 23:45:56,948 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 4.0) internal successors, (20), 6 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:45:56,948 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 74 transitions. [2022-02-20 23:45:56,948 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2022-02-20 23:45:56,948 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:56,948 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:45:56,960 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:45:57,155 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:45:57,155 INFO L402 AbstractCegarLoop]: === Iteration 12 === Targeting ULTIMATE.startErr24ASSERT_VIOLATIONMEMORY_FREE === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:57,155 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:57,155 INFO L85 PathProgramCache]: Analyzing trace with hash -602189926, now seen corresponding path program 1 times [2022-02-20 23:45:57,156 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:45:57,156 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1524320539] [2022-02-20 23:45:57,156 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:57,156 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:45:57,156 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:45:57,157 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:45:57,157 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:45:57,248 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:57,252 INFO L263 TraceCheckSpWp]: Trace formula consists of 137 conjuncts, 23 conjunts are in the unsatisfiable core [2022-02-20 23:45:57,274 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:57,275 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:57,282 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:45:57,308 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:45:57,308 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:45:57,398 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 13 treesize of output 9 [2022-02-20 23:45:57,465 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:45:57,469 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 0 case distinctions, treesize of input 25 treesize of output 24 [2022-02-20 23:45:57,557 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 33 treesize of output 21 [2022-02-20 23:45:57,656 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 3 new quantified variables, introduced 0 case distinctions, treesize of input 27 treesize of output 12 [2022-02-20 23:45:57,680 INFO L290 TraceCheckUtils]: 0: Hoare triple {4537#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(14bv32, 2bv32); {4537#true} is VALID [2022-02-20 23:45:57,681 INFO L290 TraceCheckUtils]: 1: Hoare triple {4537#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {4545#(= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:45:57,682 INFO L290 TraceCheckUtils]: 2: Hoare triple {4545#(= (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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {4549#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:45:57,682 INFO L290 TraceCheckUtils]: 3: Hoare triple {4549#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} SUMMARY for call append_#t~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L531 {4549#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:45:57,683 INFO L290 TraceCheckUtils]: 4: Hoare triple {4549#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} SUMMARY for call write~$Pointer$(append_#t~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L531-1 {4549#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:45:57,683 INFO L290 TraceCheckUtils]: 5: Hoare triple {4549#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} havoc append_#t~mem4#1.base, append_#t~mem4#1.offset; {4549#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:45:57,683 INFO L290 TraceCheckUtils]: 6: Hoare triple {4549#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#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_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L532 {4549#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:45:57,684 INFO L290 TraceCheckUtils]: 7: Hoare triple {4549#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} assume !(append_#t~mem5#1.base != 0bv32 || append_#t~mem5#1.offset != 0bv32);call append_#t~malloc8#1.base, append_#t~malloc8#1.offset := #Ultimate.allocOnHeap(8bv32);append_#t~ite9#1.base, append_#t~ite9#1.offset := append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {4565#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_append_#t~ite9#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:45:57,685 INFO L290 TraceCheckUtils]: 8: Hoare triple {4565#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_append_#t~ite9#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} SUMMARY for call write~$Pointer$(append_#t~ite9#1.base, append_#t~ite9#1.offset, append_~item~0#1.base, ~bvadd32(4bv32, append_~item~0#1.offset), 4bv32); srcloc: L532-3 {4569#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv4 32))) (_ bv0 32)))} is VALID [2022-02-20 23:45:57,686 INFO L290 TraceCheckUtils]: 9: Hoare triple {4569#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv4 32))) (_ bv0 32)))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset;havoc append_#t~ite9#1.base, append_#t~ite9#1.offset;havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {4569#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv4 32))) (_ bv0 32)))} is VALID [2022-02-20 23:45:58,113 INFO L290 TraceCheckUtils]: 10: Hoare triple {4569#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv4 32))) (_ 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: L535 {4576#(and (not (= (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.base|)) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (_ bv0 32)))} is VALID [2022-02-20 23:45:58,114 INFO L290 TraceCheckUtils]: 11: Hoare triple {4576#(and (not (= (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.base|)) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (_ bv0 32)))} assume { :end_inline_append } true; {4576#(and (not (= (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.base|)) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (_ bv0 32)))} is VALID [2022-02-20 23:45:58,114 INFO L290 TraceCheckUtils]: 12: Hoare triple {4576#(and (not (= (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.base|)) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (_ bv0 32)))} assume !(0bv32 != main_#t~nondet10#1);havoc main_#t~nondet10#1; {4576#(and (not (= (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.base|)) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (_ bv0 32)))} is VALID [2022-02-20 23:45:58,115 INFO L290 TraceCheckUtils]: 13: Hoare triple {4576#(and (not (= (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.base|)) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (_ bv0 32)))} SUMMARY for call main_#t~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32); srcloc: L540-4 {4576#(and (not (= (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.base|)) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (_ bv0 32)))} is VALID [2022-02-20 23:45:58,115 INFO L290 TraceCheckUtils]: 14: Hoare triple {4576#(and (not (= (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.base|)) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (_ bv0 32)))} assume main_#t~mem11#1.base != 0bv32 || main_#t~mem11#1.offset != 0bv32;havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {4576#(and (not (= (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.base|)) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (_ bv0 32)))} is VALID [2022-02-20 23:45:58,116 INFO L290 TraceCheckUtils]: 15: Hoare triple {4576#(and (not (= (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.base|)) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (_ bv0 32)))} SUMMARY for call main_#t~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32); srcloc: L544 {4576#(and (not (= (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.base|)) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (_ bv0 32)))} is VALID [2022-02-20 23:45:58,116 INFO L290 TraceCheckUtils]: 16: Hoare triple {4576#(and (not (= (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.base|)) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (_ bv0 32)))} SUMMARY for call main_#t~mem13#1.base, main_#t~mem13#1.offset := read~$Pointer$(main_#t~mem12#1.base, main_#t~mem12#1.offset, 4bv32); srcloc: L544-1 {4576#(and (not (= (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.base|)) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (_ bv0 32)))} is VALID [2022-02-20 23:45:58,117 INFO L290 TraceCheckUtils]: 17: Hoare triple {4576#(and (not (= (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.base|)) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (_ bv0 32)))} main_~next~0#1.base, main_~next~0#1.offset := main_#t~mem13#1.base, main_#t~mem13#1.offset;havoc main_#t~mem12#1.base, main_#t~mem12#1.offset;havoc main_#t~mem13#1.base, main_#t~mem13#1.offset; {4576#(and (not (= (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.base|)) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (_ bv0 32)))} is VALID [2022-02-20 23:45:58,391 INFO L290 TraceCheckUtils]: 18: Hoare triple {4576#(and (not (= (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.base|)) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (_ bv0 32)))} SUMMARY for call main_#t~mem14#1.base, main_#t~mem14#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32); srcloc: L545 {4601#(exists ((|ULTIMATE.start_main_~#list~0#1.base| (_ BitVec 32)) (|ULTIMATE.start_main_~#list~0#1.offset| (_ BitVec 32))) (and (= |ULTIMATE.start_main_#t~mem14#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (not (= |ULTIMATE.start_main_#t~mem14#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_#t~mem14#1.base|) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (_ bv0 32))))} is VALID [2022-02-20 23:45:58,759 INFO L290 TraceCheckUtils]: 19: Hoare triple {4601#(exists ((|ULTIMATE.start_main_~#list~0#1.base| (_ BitVec 32)) (|ULTIMATE.start_main_~#list~0#1.offset| (_ BitVec 32))) (and (= |ULTIMATE.start_main_#t~mem14#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (not (= |ULTIMATE.start_main_#t~mem14#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_#t~mem14#1.base|) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) (_ bv0 32))))} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_#t~mem14#1.base, ~bvadd32(4bv32, main_#t~mem14#1.offset), 4bv32); srcloc: L545-1 {4605#(= |ULTIMATE.start_main_#t~mem15#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:45:58,759 INFO L290 TraceCheckUtils]: 20: Hoare triple {4605#(= |ULTIMATE.start_main_#t~mem15#1.offset| (_ bv0 32))} assume !(0bv32 == main_#t~mem15#1.offset); {4538#false} is VALID [2022-02-20 23:45:58,759 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:45:58,759 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:45:58,760 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:45:58,760 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1524320539] [2022-02-20 23:45:58,760 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1524320539] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:58,760 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:58,760 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-02-20 23:45:58,760 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1328622996] [2022-02-20 23:45:58,760 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:58,760 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.625) internal successors, (21), 9 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:45:58,760 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:58,760 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.625) internal successors, (21), 9 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:46:01,015 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:46:01,015 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 23:46:01,015 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:46:01,015 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 23:46:01,015 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:46:01,015 INFO L87 Difference]: Start difference. First operand 72 states and 74 transitions. Second operand has 9 states, 8 states have (on average 2.625) internal successors, (21), 9 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:46:02,360 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:02,360 INFO L93 Difference]: Finished difference Result 88 states and 91 transitions. [2022-02-20 23:46:02,360 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-02-20 23:46:02,361 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.625) internal successors, (21), 9 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:46:02,361 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:02,361 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.625) internal successors, (21), 9 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:46:02,361 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 87 transitions. [2022-02-20 23:46:02,361 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.625) internal successors, (21), 9 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:46:02,362 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 87 transitions. [2022-02-20 23:46:02,362 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 87 transitions. [2022-02-20 23:46:04,661 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 87 edges. 87 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:04,661 INFO L225 Difference]: With dead ends: 88 [2022-02-20 23:46:04,662 INFO L226 Difference]: Without dead ends: 88 [2022-02-20 23:46:04,662 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 27 GetRequests, 13 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 17 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=68, Invalid=172, Unknown=0, NotChecked=0, Total=240 [2022-02-20 23:46:04,662 INFO L933 BasicCegarLoop]: 39 mSDtfsCounter, 91 mSDsluCounter, 175 mSDsCounter, 0 mSdLazyCounter, 225 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 91 SdHoareTripleChecker+Valid, 214 SdHoareTripleChecker+Invalid, 273 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 225 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 38 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:04,663 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [91 Valid, 214 Invalid, 273 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 225 Invalid, 0 Unknown, 38 Unchecked, 0.4s Time] [2022-02-20 23:46:04,663 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 88 states. [2022-02-20 23:46:04,664 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 88 to 85. [2022-02-20 23:46:04,664 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:04,664 INFO L82 GeneralOperation]: Start isEquivalent. First operand 88 states. Second operand has 85 states, 62 states have (on average 1.4193548387096775) internal successors, (88), 84 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:46:04,664 INFO L74 IsIncluded]: Start isIncluded. First operand 88 states. Second operand has 85 states, 62 states have (on average 1.4193548387096775) internal successors, (88), 84 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:46:04,665 INFO L87 Difference]: Start difference. First operand 88 states. Second operand has 85 states, 62 states have (on average 1.4193548387096775) internal successors, (88), 84 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:46:04,665 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:04,665 INFO L93 Difference]: Finished difference Result 88 states and 91 transitions. [2022-02-20 23:46:04,666 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 91 transitions. [2022-02-20 23:46:04,666 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:04,666 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:04,666 INFO L74 IsIncluded]: Start isIncluded. First operand has 85 states, 62 states have (on average 1.4193548387096775) internal successors, (88), 84 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 88 states. [2022-02-20 23:46:04,666 INFO L87 Difference]: Start difference. First operand has 85 states, 62 states have (on average 1.4193548387096775) internal successors, (88), 84 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 88 states. [2022-02-20 23:46:04,667 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:04,667 INFO L93 Difference]: Finished difference Result 88 states and 91 transitions. [2022-02-20 23:46:04,667 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 91 transitions. [2022-02-20 23:46:04,667 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:04,667 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:04,668 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:04,668 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:04,668 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 85 states, 62 states have (on average 1.4193548387096775) internal successors, (88), 84 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:46:04,668 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 85 states to 85 states and 88 transitions. [2022-02-20 23:46:04,669 INFO L78 Accepts]: Start accepts. Automaton has 85 states and 88 transitions. Word has length 21 [2022-02-20 23:46:04,669 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:04,669 INFO L470 AbstractCegarLoop]: Abstraction has 85 states and 88 transitions. [2022-02-20 23:46:04,669 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.625) internal successors, (21), 9 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:46:04,669 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 88 transitions. [2022-02-20 23:46:04,669 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2022-02-20 23:46:04,669 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:04,670 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:46:04,677 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (13)] Forceful destruction successful, exit code 0 [2022-02-20 23:46:04,871 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:46:04,871 INFO L402 AbstractCegarLoop]: === Iteration 13 === Targeting ULTIMATE.startErr8REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:46:04,872 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:04,872 INFO L85 PathProgramCache]: Analyzing trace with hash 717052317, now seen corresponding path program 1 times [2022-02-20 23:46:04,872 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:46:04,872 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1634779204] [2022-02-20 23:46:04,872 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:04,872 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:46:04,872 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:46:04,873 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:46:04,875 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:46:04,958 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:04,962 INFO L263 TraceCheckSpWp]: Trace formula consists of 149 conjuncts, 20 conjunts are in the unsatisfiable core [2022-02-20 23:46:04,972 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:04,973 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:46:05,058 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:46:05,093 INFO L356 Elim1Store]: treesize reduction 24, result has 33.3 percent of original size [2022-02-20 23:46:05,093 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:46:05,187 INFO L356 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2022-02-20 23:46:05,187 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:46:05,267 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 19 treesize of output 11 [2022-02-20 23:46:05,284 INFO L290 TraceCheckUtils]: 0: Hoare triple {4971#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(14bv32, 2bv32); {4971#true} is VALID [2022-02-20 23:46:05,284 INFO L290 TraceCheckUtils]: 1: Hoare triple {4971#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {4971#true} is VALID [2022-02-20 23:46:05,285 INFO L290 TraceCheckUtils]: 2: Hoare triple {4971#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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {4982#(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:46:05,285 INFO L290 TraceCheckUtils]: 3: Hoare triple {4982#(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~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L531 {4982#(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:46:05,286 INFO L290 TraceCheckUtils]: 4: Hoare triple {4982#(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~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L531-1 {4982#(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:46:05,286 INFO L290 TraceCheckUtils]: 5: Hoare triple {4982#(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~mem4#1.base, append_#t~mem4#1.offset; {4982#(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:46:05,287 INFO L290 TraceCheckUtils]: 6: Hoare triple {4982#(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_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L532 {4982#(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:46:05,287 INFO L290 TraceCheckUtils]: 7: Hoare triple {4982#(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~mem5#1.base != 0bv32 || append_#t~mem5#1.offset != 0bv32);call append_#t~malloc8#1.base, append_#t~malloc8#1.offset := #Ultimate.allocOnHeap(8bv32);append_#t~ite9#1.base, append_#t~ite9#1.offset := append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {4982#(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:46:05,288 INFO L290 TraceCheckUtils]: 8: Hoare triple {4982#(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~ite9#1.base, append_#t~ite9#1.offset, append_~item~0#1.base, ~bvadd32(4bv32, append_~item~0#1.offset), 4bv32); srcloc: L532-3 {5001#(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:46:05,288 INFO L290 TraceCheckUtils]: 9: Hoare triple {5001#(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~mem5#1.base, append_#t~mem5#1.offset;havoc append_#t~ite9#1.base, append_#t~ite9#1.offset;havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {5001#(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:46:05,290 INFO L290 TraceCheckUtils]: 10: Hoare triple {5001#(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: L535 {5008#(= (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:46:05,290 INFO L290 TraceCheckUtils]: 11: Hoare triple {5008#(= (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; {5008#(= (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:46:05,290 INFO L290 TraceCheckUtils]: 12: Hoare triple {5008#(= (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~nondet10#1);havoc main_#t~nondet10#1; {5008#(= (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:46:05,291 INFO L290 TraceCheckUtils]: 13: Hoare triple {5008#(= (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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {5018#(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:46:05,293 INFO L290 TraceCheckUtils]: 14: Hoare triple {5018#(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~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L531 {5022#(and (exists ((|ULTIMATE.start_append_~plist#1.base| (_ BitVec 32)) (|ULTIMATE.start_append_~plist#1.offset| (_ BitVec 32))) (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 (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) |ULTIMATE.start_append_#t~mem4#1.base|))) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:46:05,295 INFO L290 TraceCheckUtils]: 15: Hoare triple {5022#(and (exists ((|ULTIMATE.start_append_~plist#1.base| (_ BitVec 32)) (|ULTIMATE.start_append_~plist#1.offset| (_ BitVec 32))) (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 (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) |ULTIMATE.start_append_#t~mem4#1.base|))) (= (select |#valid| |ULTIMATE.start_append_~item~0#1.base|) (_ bv1 1)))} SUMMARY for call write~$Pointer$(append_#t~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L531-1 {5026#(and (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| |ULTIMATE.start_append_~item~0#1.base|)))) (= (_ 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:46:05,295 INFO L290 TraceCheckUtils]: 16: Hoare triple {5026#(and (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| |ULTIMATE.start_append_~item~0#1.base|)))) (= (_ 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~mem4#1.base, append_#t~mem4#1.offset; {5026#(and (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| |ULTIMATE.start_append_~item~0#1.base|)))) (= (_ 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:46:05,296 INFO L290 TraceCheckUtils]: 17: Hoare triple {5026#(and (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| |ULTIMATE.start_append_~item~0#1.base|)))) (= (_ 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~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L532 {5026#(and (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| |ULTIMATE.start_append_~item~0#1.base|)))) (= (_ 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:46:05,296 INFO L290 TraceCheckUtils]: 18: Hoare triple {5026#(and (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| |ULTIMATE.start_append_~item~0#1.base|)))) (= (_ 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~mem5#1.base != 0bv32 || append_#t~mem5#1.offset != 0bv32; {5026#(and (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| |ULTIMATE.start_append_~item~0#1.base|)))) (= (_ 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:46:05,297 INFO L290 TraceCheckUtils]: 19: Hoare triple {5026#(and (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| |ULTIMATE.start_append_~item~0#1.base|)))) (= (_ 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: L533 {5039#(= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| |ULTIMATE.start_append_#t~mem6#1.base|)))} is VALID [2022-02-20 23:46:05,297 INFO L290 TraceCheckUtils]: 20: Hoare triple {5039#(= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| |ULTIMATE.start_append_#t~mem6#1.base|)))} assume !(1bv1 == #valid[append_#t~mem6#1.base]); {4972#false} is VALID [2022-02-20 23:46:05,297 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:46:05,297 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:46:05,425 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:46:05,536 INFO L356 Elim1Store]: treesize reduction 5, result has 37.5 percent of original size [2022-02-20 23:46:05,536 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 30 treesize of output 27 [2022-02-20 23:46:05,594 INFO L290 TraceCheckUtils]: 20: Hoare triple {5039#(= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| |ULTIMATE.start_append_#t~mem6#1.base|)))} assume !(1bv1 == #valid[append_#t~mem6#1.base]); {4972#false} is VALID [2022-02-20 23:46:05,594 INFO L290 TraceCheckUtils]: 19: Hoare triple {5046#(= (_ 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: L533 {5039#(= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| |ULTIMATE.start_append_#t~mem6#1.base|)))} is VALID [2022-02-20 23:46:05,595 INFO L290 TraceCheckUtils]: 18: Hoare triple {5046#(= (_ 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~mem5#1.base != 0bv32 || append_#t~mem5#1.offset != 0bv32; {5046#(= (_ 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:46:05,595 INFO L290 TraceCheckUtils]: 17: Hoare triple {5046#(= (_ 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~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L532 {5046#(= (_ 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:46:05,596 INFO L290 TraceCheckUtils]: 16: Hoare triple {5046#(= (_ 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~mem4#1.base, append_#t~mem4#1.offset; {5046#(= (_ 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:46:05,598 INFO L290 TraceCheckUtils]: 15: Hoare triple {5059#(= (bvadd (_ bv1 1) (select |#valid| |ULTIMATE.start_append_#t~mem4#1.base|)) (_ bv0 1))} SUMMARY for call write~$Pointer$(append_#t~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L531-1 {5046#(= (_ 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:46:05,599 INFO L290 TraceCheckUtils]: 14: Hoare triple {5063#(= (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~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L531 {5059#(= (bvadd (_ bv1 1) (select |#valid| |ULTIMATE.start_append_#t~mem4#1.base|)) (_ bv0 1))} is VALID [2022-02-20 23:46:05,600 INFO L290 TraceCheckUtils]: 13: Hoare triple {5008#(= (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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {5063#(= (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:46:05,600 INFO L290 TraceCheckUtils]: 12: Hoare triple {5008#(= (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~nondet10#1);havoc main_#t~nondet10#1; {5008#(= (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:46:05,601 INFO L290 TraceCheckUtils]: 11: Hoare triple {5008#(= (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; {5008#(= (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:46:05,603 INFO L290 TraceCheckUtils]: 10: Hoare triple {5076#(or (forall ((v_arrayElimCell_30 (_ BitVec 32))) (= (_ bv0 1) (bvadd (bvneg (select |#valid| v_arrayElimCell_30)) (_ bv1 1)))) (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: L535 {5008#(= (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:46:05,603 INFO L290 TraceCheckUtils]: 9: Hoare triple {5076#(or (forall ((v_arrayElimCell_30 (_ BitVec 32))) (= (_ bv0 1) (bvadd (bvneg (select |#valid| v_arrayElimCell_30)) (_ bv1 1)))) (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~mem5#1.base, append_#t~mem5#1.offset;havoc append_#t~ite9#1.base, append_#t~ite9#1.offset;havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {5076#(or (forall ((v_arrayElimCell_30 (_ BitVec 32))) (= (_ bv0 1) (bvadd (bvneg (select |#valid| v_arrayElimCell_30)) (_ bv1 1)))) (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:46:05,604 INFO L290 TraceCheckUtils]: 8: Hoare triple {4982#(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~ite9#1.base, append_#t~ite9#1.offset, append_~item~0#1.base, ~bvadd32(4bv32, append_~item~0#1.offset), 4bv32); srcloc: L532-3 {5076#(or (forall ((v_arrayElimCell_30 (_ BitVec 32))) (= (_ bv0 1) (bvadd (bvneg (select |#valid| v_arrayElimCell_30)) (_ bv1 1)))) (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:46:05,605 INFO L290 TraceCheckUtils]: 7: Hoare triple {4982#(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~mem5#1.base != 0bv32 || append_#t~mem5#1.offset != 0bv32);call append_#t~malloc8#1.base, append_#t~malloc8#1.offset := #Ultimate.allocOnHeap(8bv32);append_#t~ite9#1.base, append_#t~ite9#1.offset := append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {4982#(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:46:05,605 INFO L290 TraceCheckUtils]: 6: Hoare triple {4982#(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_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L532 {4982#(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:46:05,606 INFO L290 TraceCheckUtils]: 5: Hoare triple {4982#(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~mem4#1.base, append_#t~mem4#1.offset; {4982#(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:46:05,606 INFO L290 TraceCheckUtils]: 4: Hoare triple {4982#(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~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L531-1 {4982#(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:46:05,607 INFO L290 TraceCheckUtils]: 3: Hoare triple {4982#(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~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L531 {4982#(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:46:05,608 INFO L290 TraceCheckUtils]: 2: Hoare triple {4971#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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {4982#(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:46:05,608 INFO L290 TraceCheckUtils]: 1: Hoare triple {4971#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {4971#true} is VALID [2022-02-20 23:46:05,608 INFO L290 TraceCheckUtils]: 0: Hoare triple {4971#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(14bv32, 2bv32); {4971#true} is VALID [2022-02-20 23:46:05,609 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:46:05,610 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:46:05,610 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1634779204] [2022-02-20 23:46:05,610 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1634779204] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:46:05,610 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:46:05,610 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 12 [2022-02-20 23:46:05,610 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [622157926] [2022-02-20 23:46:05,610 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:46:05,611 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 13 states have internal predecessors, (31), 0 states have call successors, (0), 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:46:05,611 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:05,611 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 13 states have internal predecessors, (31), 0 states have call successors, (0), 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:46:05,652 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:05,652 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-02-20 23:46:05,652 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:46:05,652 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-02-20 23:46:05,652 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=28, Invalid=128, Unknown=0, NotChecked=0, Total=156 [2022-02-20 23:46:05,653 INFO L87 Difference]: Start difference. First operand 85 states and 88 transitions. Second operand has 13 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 13 states have internal predecessors, (31), 0 states have call successors, (0), 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:46:07,435 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:07,435 INFO L93 Difference]: Finished difference Result 102 states and 106 transitions. [2022-02-20 23:46:07,435 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 23:46:07,435 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 13 states have internal predecessors, (31), 0 states have call successors, (0), 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:46:07,436 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:07,436 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 13 states have internal predecessors, (31), 0 states have call successors, (0), 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:46:07,436 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 95 transitions. [2022-02-20 23:46:07,436 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 13 states have internal predecessors, (31), 0 states have call successors, (0), 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:46:07,437 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 95 transitions. [2022-02-20 23:46:07,437 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 95 transitions. [2022-02-20 23:46:07,531 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 95 edges. 95 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:07,532 INFO L225 Difference]: With dead ends: 102 [2022-02-20 23:46:07,532 INFO L226 Difference]: Without dead ends: 102 [2022-02-20 23:46:07,533 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 47 GetRequests, 28 SyntacticMatches, 3 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 26 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=75, Invalid=231, Unknown=0, NotChecked=0, Total=306 [2022-02-20 23:46:07,533 INFO L933 BasicCegarLoop]: 50 mSDtfsCounter, 177 mSDsluCounter, 160 mSDsCounter, 0 mSdLazyCounter, 345 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 177 SdHoareTripleChecker+Valid, 210 SdHoareTripleChecker+Invalid, 391 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 345 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 36 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:07,533 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [177 Valid, 210 Invalid, 391 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 345 Invalid, 0 Unknown, 36 Unchecked, 0.6s Time] [2022-02-20 23:46:07,534 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 102 states. [2022-02-20 23:46:07,537 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 102 to 84. [2022-02-20 23:46:07,537 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:07,538 INFO L82 GeneralOperation]: Start isEquivalent. First operand 102 states. Second operand has 84 states, 62 states have (on average 1.403225806451613) internal successors, (87), 83 states have internal predecessors, (87), 0 states have call successors, (0), 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:46:07,538 INFO L74 IsIncluded]: Start isIncluded. First operand 102 states. Second operand has 84 states, 62 states have (on average 1.403225806451613) internal successors, (87), 83 states have internal predecessors, (87), 0 states have call successors, (0), 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:46:07,538 INFO L87 Difference]: Start difference. First operand 102 states. Second operand has 84 states, 62 states have (on average 1.403225806451613) internal successors, (87), 83 states have internal predecessors, (87), 0 states have call successors, (0), 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:46:07,539 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:07,539 INFO L93 Difference]: Finished difference Result 102 states and 106 transitions. [2022-02-20 23:46:07,539 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 106 transitions. [2022-02-20 23:46:07,539 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:07,539 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:07,540 INFO L74 IsIncluded]: Start isIncluded. First operand has 84 states, 62 states have (on average 1.403225806451613) internal successors, (87), 83 states have internal predecessors, (87), 0 states have call successors, (0), 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:46:07,540 INFO L87 Difference]: Start difference. First operand has 84 states, 62 states have (on average 1.403225806451613) internal successors, (87), 83 states have internal predecessors, (87), 0 states have call successors, (0), 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:46:07,541 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:07,541 INFO L93 Difference]: Finished difference Result 102 states and 106 transitions. [2022-02-20 23:46:07,541 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 106 transitions. [2022-02-20 23:46:07,541 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:07,541 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:07,541 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:07,541 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:07,542 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 84 states, 62 states have (on average 1.403225806451613) internal successors, (87), 83 states have internal predecessors, (87), 0 states have call successors, (0), 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:46:07,542 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 84 states to 84 states and 87 transitions. [2022-02-20 23:46:07,542 INFO L78 Accepts]: Start accepts. Automaton has 84 states and 87 transitions. Word has length 21 [2022-02-20 23:46:07,543 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:07,543 INFO L470 AbstractCegarLoop]: Abstraction has 84 states and 87 transitions. [2022-02-20 23:46:07,543 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 13 states have internal predecessors, (31), 0 states have call successors, (0), 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:46:07,543 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 87 transitions. [2022-02-20 23:46:07,543 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2022-02-20 23:46:07,543 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:07,543 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:46:07,551 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (14)] Forceful destruction successful, exit code 0 [2022-02-20 23:46:07,751 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 14 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:46:07,751 INFO L402 AbstractCegarLoop]: === Iteration 14 === Targeting ULTIMATE.startErr9REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:46:07,751 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:07,751 INFO L85 PathProgramCache]: Analyzing trace with hash 717052318, now seen corresponding path program 1 times [2022-02-20 23:46:07,752 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:46:07,752 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1140038974] [2022-02-20 23:46:07,752 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:07,752 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:46:07,752 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:46:07,753 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:46:07,755 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (15)] Waiting until timeout for monitored process [2022-02-20 23:46:07,840 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:07,844 INFO L263 TraceCheckSpWp]: Trace formula consists of 149 conjuncts, 31 conjunts are in the unsatisfiable core [2022-02-20 23:46:07,856 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:07,857 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:46:07,945 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:46:08,015 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:46:08,021 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:46:08,088 INFO L356 Elim1Store]: treesize reduction 4, result has 66.7 percent of original size [2022-02-20 23:46:08,088 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:46:08,095 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:46:08,184 INFO L356 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2022-02-20 23:46:08,185 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:46:08,201 INFO L356 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2022-02-20 23:46:08,201 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:46:08,351 INFO L356 Elim1Store]: treesize reduction 11, result has 8.3 percent of original size [2022-02-20 23:46:08,352 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:46:08,364 INFO L356 Elim1Store]: treesize reduction 11, result has 8.3 percent of original size [2022-02-20 23:46:08,364 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:46:08,385 INFO L290 TraceCheckUtils]: 0: Hoare triple {5508#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(14bv32, 2bv32); {5508#true} is VALID [2022-02-20 23:46:08,385 INFO L290 TraceCheckUtils]: 1: Hoare triple {5508#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {5508#true} is VALID [2022-02-20 23:46:08,390 INFO L290 TraceCheckUtils]: 2: Hoare triple {5508#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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {5519#(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:46:08,390 INFO L290 TraceCheckUtils]: 3: Hoare triple {5519#(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~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L531 {5519#(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:46:08,391 INFO L290 TraceCheckUtils]: 4: Hoare triple {5519#(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~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L531-1 {5519#(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:46:08,391 INFO L290 TraceCheckUtils]: 5: Hoare triple {5519#(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~mem4#1.base, append_#t~mem4#1.offset; {5519#(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:46:08,392 INFO L290 TraceCheckUtils]: 6: Hoare triple {5519#(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_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L532 {5519#(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:46:08,392 INFO L290 TraceCheckUtils]: 7: Hoare triple {5519#(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~mem5#1.base != 0bv32 || append_#t~mem5#1.offset != 0bv32);call append_#t~malloc8#1.base, append_#t~malloc8#1.offset := #Ultimate.allocOnHeap(8bv32);append_#t~ite9#1.base, append_#t~ite9#1.offset := append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {5519#(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:46:08,393 INFO L290 TraceCheckUtils]: 8: Hoare triple {5519#(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~ite9#1.base, append_#t~ite9#1.offset, append_~item~0#1.base, ~bvadd32(4bv32, append_~item~0#1.offset), 4bv32); srcloc: L532-3 {5538#(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:46:08,393 INFO L290 TraceCheckUtils]: 9: Hoare triple {5538#(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~mem5#1.base, append_#t~mem5#1.offset;havoc append_#t~ite9#1.base, append_#t~ite9#1.offset;havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {5538#(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:46:08,398 INFO L290 TraceCheckUtils]: 10: Hoare triple {5538#(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: L535 {5545#(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:46:08,398 INFO L290 TraceCheckUtils]: 11: Hoare triple {5545#(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; {5545#(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:46:08,399 INFO L290 TraceCheckUtils]: 12: Hoare triple {5545#(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~nondet10#1);havoc main_#t~nondet10#1; {5545#(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:46:08,401 INFO L290 TraceCheckUtils]: 13: Hoare triple {5545#(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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {5555#(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:46:08,403 INFO L290 TraceCheckUtils]: 14: Hoare triple {5555#(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~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L531 {5559#(exists ((|ULTIMATE.start_append_~plist#1.base| (_ BitVec 32)) (|ULTIMATE.start_append_~plist#1.offset| (_ BitVec 32))) (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|))) (= |ULTIMATE.start_append_#t~mem4#1.offset| (select (select |#memory_$Pointer$.offset| |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)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) |ULTIMATE.start_append_#t~mem4#1.base|)))} is VALID [2022-02-20 23:46:08,404 INFO L290 TraceCheckUtils]: 15: Hoare triple {5559#(exists ((|ULTIMATE.start_append_~plist#1.base| (_ BitVec 32)) (|ULTIMATE.start_append_~plist#1.offset| (_ BitVec 32))) (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|))) (= |ULTIMATE.start_append_#t~mem4#1.offset| (select (select |#memory_$Pointer$.offset| |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)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|) |ULTIMATE.start_append_#t~mem4#1.base|)))} SUMMARY for call write~$Pointer$(append_#t~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L531-1 {5563#(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|)) (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|)) (= (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|)) (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:46:08,405 INFO L290 TraceCheckUtils]: 16: Hoare triple {5563#(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|)) (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|)) (= (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|)) (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))))} havoc append_#t~mem4#1.base, append_#t~mem4#1.offset; {5563#(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|)) (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|)) (= (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|)) (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:46:08,412 INFO L290 TraceCheckUtils]: 17: Hoare triple {5563#(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|)) (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|)) (= (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|)) (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_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L532 {5563#(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|)) (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|)) (= (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|)) (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:46:08,414 INFO L290 TraceCheckUtils]: 18: Hoare triple {5563#(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|)) (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|)) (= (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|)) (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))))} assume append_#t~mem5#1.base != 0bv32 || append_#t~mem5#1.offset != 0bv32; {5563#(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|)) (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|)) (= (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|)) (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:46:08,415 INFO L290 TraceCheckUtils]: 19: Hoare triple {5563#(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|)) (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|)) (= (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|)) (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~mem6#1.base, append_#t~mem6#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L533 {5576#(and (= |ULTIMATE.start_append_#t~mem6#1.offset| (_ bv0 32)) (bvule (_ bv8 32) (select |#length| |ULTIMATE.start_append_#t~mem6#1.base|)))} is VALID [2022-02-20 23:46:08,416 INFO L290 TraceCheckUtils]: 20: Hoare triple {5576#(and (= |ULTIMATE.start_append_#t~mem6#1.offset| (_ bv0 32)) (bvule (_ bv8 32) (select |#length| |ULTIMATE.start_append_#t~mem6#1.base|)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(4bv32, append_#t~mem6#1.offset)), #length[append_#t~mem6#1.base]) && ~bvule32(~bvadd32(4bv32, append_#t~mem6#1.offset), ~bvadd32(4bv32, ~bvadd32(4bv32, append_#t~mem6#1.offset)))) && ~bvule32(0bv32, ~bvadd32(4bv32, append_#t~mem6#1.offset))); {5509#false} is VALID [2022-02-20 23:46:08,416 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:46:08,416 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:46:08,941 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:46:09,076 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 [2022-02-20 23:46:09,332 INFO L356 Elim1Store]: treesize reduction 5, result has 37.5 percent of original size [2022-02-20 23:46:09,332 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 13 treesize of output 12 [2022-02-20 23:46:09,539 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 24 treesize of output 22 [2022-02-20 23:46:09,656 INFO L290 TraceCheckUtils]: 20: Hoare triple {5580#(and (bvule (bvadd (_ bv8 32) |ULTIMATE.start_append_#t~mem6#1.offset|) (select |#length| |ULTIMATE.start_append_#t~mem6#1.base|)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_append_#t~mem6#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_append_#t~mem6#1.offset|)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(4bv32, append_#t~mem6#1.offset)), #length[append_#t~mem6#1.base]) && ~bvule32(~bvadd32(4bv32, append_#t~mem6#1.offset), ~bvadd32(4bv32, ~bvadd32(4bv32, append_#t~mem6#1.offset)))) && ~bvule32(0bv32, ~bvadd32(4bv32, append_#t~mem6#1.offset))); {5509#false} is VALID [2022-02-20 23:46:09,657 INFO L290 TraceCheckUtils]: 19: Hoare triple {5584#(and (bvule (bvadd (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv4 32)) (bvadd (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv8 32))) (bvule (bvadd (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv8 32)) (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, 4bv32); srcloc: L533 {5580#(and (bvule (bvadd (_ bv8 32) |ULTIMATE.start_append_#t~mem6#1.offset|) (select |#length| |ULTIMATE.start_append_#t~mem6#1.base|)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_append_#t~mem6#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_append_#t~mem6#1.offset|)))} is VALID [2022-02-20 23:46:09,657 INFO L290 TraceCheckUtils]: 18: Hoare triple {5584#(and (bvule (bvadd (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv4 32)) (bvadd (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv8 32))) (bvule (bvadd (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv8 32)) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))))} assume append_#t~mem5#1.base != 0bv32 || append_#t~mem5#1.offset != 0bv32; {5584#(and (bvule (bvadd (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv4 32)) (bvadd (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv8 32))) (bvule (bvadd (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv8 32)) (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:46:09,658 INFO L290 TraceCheckUtils]: 17: Hoare triple {5584#(and (bvule (bvadd (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv4 32)) (bvadd (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv8 32))) (bvule (bvadd (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv8 32)) (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~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L532 {5584#(and (bvule (bvadd (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv4 32)) (bvadd (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv8 32))) (bvule (bvadd (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv8 32)) (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:46:09,658 INFO L290 TraceCheckUtils]: 16: Hoare triple {5584#(and (bvule (bvadd (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv4 32)) (bvadd (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv8 32))) (bvule (bvadd (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv8 32)) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|))))} havoc append_#t~mem4#1.base, append_#t~mem4#1.offset; {5584#(and (bvule (bvadd (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv4 32)) (bvadd (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv8 32))) (bvule (bvadd (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv8 32)) (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:46:09,682 INFO L290 TraceCheckUtils]: 15: Hoare triple {5597#(and (bvule (bvadd (_ bv8 32) |ULTIMATE.start_append_#t~mem4#1.offset|) (select |#length| |ULTIMATE.start_append_#t~mem4#1.base|)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_append_#t~mem4#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_append_#t~mem4#1.offset|)))} SUMMARY for call write~$Pointer$(append_#t~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L531-1 {5584#(and (bvule (bvadd (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv4 32)) (bvadd (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv8 32))) (bvule (bvadd (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~item~0#1.base|) |ULTIMATE.start_append_~item~0#1.offset|) (_ bv8 32)) (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:46:09,707 INFO L290 TraceCheckUtils]: 14: Hoare triple {5601#(and (bvule (bvadd (_ bv8 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|)) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|))) (bvule (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|)) (bvadd (_ bv8 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|))))} SUMMARY for call append_#t~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L531 {5597#(and (bvule (bvadd (_ bv8 32) |ULTIMATE.start_append_#t~mem4#1.offset|) (select |#length| |ULTIMATE.start_append_#t~mem4#1.base|)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_append_#t~mem4#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_append_#t~mem4#1.offset|)))} is VALID [2022-02-20 23:46:09,715 INFO L290 TraceCheckUtils]: 13: Hoare triple {5605#(forall ((|v_ULTIMATE.start_append_~item~0#1.base_18| (_ BitVec 32))) (or (and (forall ((v_ArrVal_297 (_ BitVec 32))) (bvule (bvadd (_ bv8 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (select (store |#length| |v_ULTIMATE.start_append_~item~0#1.base_18| v_ArrVal_297) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))) (bvule (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv8 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))) (not (= (select |#valid| |v_ULTIMATE.start_append_~item~0#1.base_18|) (_ bv0 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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {5601#(and (bvule (bvadd (_ bv8 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|)) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|))) (bvule (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|)) (bvadd (_ bv8 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_append_~plist#1.base|) |ULTIMATE.start_append_~plist#1.offset|))))} is VALID [2022-02-20 23:46:09,717 INFO L290 TraceCheckUtils]: 12: Hoare triple {5605#(forall ((|v_ULTIMATE.start_append_~item~0#1.base_18| (_ BitVec 32))) (or (and (forall ((v_ArrVal_297 (_ BitVec 32))) (bvule (bvadd (_ bv8 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (select (store |#length| |v_ULTIMATE.start_append_~item~0#1.base_18| v_ArrVal_297) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))) (bvule (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv8 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))) (not (= (select |#valid| |v_ULTIMATE.start_append_~item~0#1.base_18|) (_ bv0 1)))))} assume !!(0bv32 != main_#t~nondet10#1);havoc main_#t~nondet10#1; {5605#(forall ((|v_ULTIMATE.start_append_~item~0#1.base_18| (_ BitVec 32))) (or (and (forall ((v_ArrVal_297 (_ BitVec 32))) (bvule (bvadd (_ bv8 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (select (store |#length| |v_ULTIMATE.start_append_~item~0#1.base_18| v_ArrVal_297) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))) (bvule (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv8 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))) (not (= (select |#valid| |v_ULTIMATE.start_append_~item~0#1.base_18|) (_ bv0 1)))))} is VALID [2022-02-20 23:46:09,718 INFO L290 TraceCheckUtils]: 11: Hoare triple {5605#(forall ((|v_ULTIMATE.start_append_~item~0#1.base_18| (_ BitVec 32))) (or (and (forall ((v_ArrVal_297 (_ BitVec 32))) (bvule (bvadd (_ bv8 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (select (store |#length| |v_ULTIMATE.start_append_~item~0#1.base_18| v_ArrVal_297) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))) (bvule (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv8 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))) (not (= (select |#valid| |v_ULTIMATE.start_append_~item~0#1.base_18|) (_ bv0 1)))))} assume { :end_inline_append } true; {5605#(forall ((|v_ULTIMATE.start_append_~item~0#1.base_18| (_ BitVec 32))) (or (and (forall ((v_ArrVal_297 (_ BitVec 32))) (bvule (bvadd (_ bv8 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (select (store |#length| |v_ULTIMATE.start_append_~item~0#1.base_18| v_ArrVal_297) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))) (bvule (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv8 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))) (not (= (select |#valid| |v_ULTIMATE.start_append_~item~0#1.base_18|) (_ bv0 1)))))} is VALID [2022-02-20 23:46:09,756 INFO L290 TraceCheckUtils]: 10: Hoare triple {5615#(forall ((|v_ULTIMATE.start_append_~item~0#1.base_18| (_ BitVec 32))) (or (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|) (forall ((v_ArrVal_297 (_ BitVec 32))) (bvule (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv8 32)) (select (store |#length| |v_ULTIMATE.start_append_~item~0#1.base_18| v_ArrVal_297) |ULTIMATE.start_append_~item~0#1.base|))) (bvule (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv4 32)) (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv8 32)))) (not (= (select |#valid| |v_ULTIMATE.start_append_~item~0#1.base_18|) (_ bv0 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: L535 {5605#(forall ((|v_ULTIMATE.start_append_~item~0#1.base_18| (_ BitVec 32))) (or (and (forall ((v_ArrVal_297 (_ BitVec 32))) (bvule (bvadd (_ bv8 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (select (store |#length| |v_ULTIMATE.start_append_~item~0#1.base_18| v_ArrVal_297) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))) (bvule (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv8 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)))) (not (= (select |#valid| |v_ULTIMATE.start_append_~item~0#1.base_18|) (_ bv0 1)))))} is VALID [2022-02-20 23:46:09,758 INFO L290 TraceCheckUtils]: 9: Hoare triple {5615#(forall ((|v_ULTIMATE.start_append_~item~0#1.base_18| (_ BitVec 32))) (or (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|) (forall ((v_ArrVal_297 (_ BitVec 32))) (bvule (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv8 32)) (select (store |#length| |v_ULTIMATE.start_append_~item~0#1.base_18| v_ArrVal_297) |ULTIMATE.start_append_~item~0#1.base|))) (bvule (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv4 32)) (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv8 32)))) (not (= (select |#valid| |v_ULTIMATE.start_append_~item~0#1.base_18|) (_ bv0 1)))))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset;havoc append_#t~ite9#1.base, append_#t~ite9#1.offset;havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {5615#(forall ((|v_ULTIMATE.start_append_~item~0#1.base_18| (_ BitVec 32))) (or (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|) (forall ((v_ArrVal_297 (_ BitVec 32))) (bvule (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv8 32)) (select (store |#length| |v_ULTIMATE.start_append_~item~0#1.base_18| v_ArrVal_297) |ULTIMATE.start_append_~item~0#1.base|))) (bvule (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv4 32)) (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv8 32)))) (not (= (select |#valid| |v_ULTIMATE.start_append_~item~0#1.base_18|) (_ bv0 1)))))} is VALID [2022-02-20 23:46:09,766 INFO L290 TraceCheckUtils]: 8: Hoare triple {5622#(or (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|) (bvule (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv4 32)) (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv8 32)))) (forall ((|ULTIMATE.start_append_~item~0#1.base| (_ BitVec 32))) (not (bvule (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_append_~item~0#1.base|)))))} SUMMARY for call write~$Pointer$(append_#t~ite9#1.base, append_#t~ite9#1.offset, append_~item~0#1.base, ~bvadd32(4bv32, append_~item~0#1.offset), 4bv32); srcloc: L532-3 {5615#(forall ((|v_ULTIMATE.start_append_~item~0#1.base_18| (_ BitVec 32))) (or (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|) (forall ((v_ArrVal_297 (_ BitVec 32))) (bvule (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv8 32)) (select (store |#length| |v_ULTIMATE.start_append_~item~0#1.base_18| v_ArrVal_297) |ULTIMATE.start_append_~item~0#1.base|))) (bvule (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv4 32)) (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv8 32)))) (not (= (select |#valid| |v_ULTIMATE.start_append_~item~0#1.base_18|) (_ bv0 1)))))} is VALID [2022-02-20 23:46:09,767 INFO L290 TraceCheckUtils]: 7: Hoare triple {5626#(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|) (bvule (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv4 32)) (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv8 32))))} assume !(append_#t~mem5#1.base != 0bv32 || append_#t~mem5#1.offset != 0bv32);call append_#t~malloc8#1.base, append_#t~malloc8#1.offset := #Ultimate.allocOnHeap(8bv32);append_#t~ite9#1.base, append_#t~ite9#1.offset := append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {5622#(or (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|) (bvule (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv4 32)) (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv8 32)))) (forall ((|ULTIMATE.start_append_~item~0#1.base| (_ BitVec 32))) (not (bvule (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_append_~item~0#1.base|)))))} is VALID [2022-02-20 23:46:09,767 INFO L290 TraceCheckUtils]: 6: Hoare triple {5626#(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|) (bvule (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv4 32)) (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv8 32))))} SUMMARY for call append_#t~mem5#1.base, append_#t~mem5#1.offset := read~$Pointer$(append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L532 {5626#(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|) (bvule (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv4 32)) (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv8 32))))} is VALID [2022-02-20 23:46:09,768 INFO L290 TraceCheckUtils]: 5: Hoare triple {5626#(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|) (bvule (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv4 32)) (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv8 32))))} havoc append_#t~mem4#1.base, append_#t~mem4#1.offset; {5626#(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|) (bvule (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv4 32)) (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv8 32))))} is VALID [2022-02-20 23:46:09,768 INFO L290 TraceCheckUtils]: 4: Hoare triple {5626#(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|) (bvule (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv4 32)) (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv8 32))))} SUMMARY for call write~$Pointer$(append_#t~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L531-1 {5626#(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|) (bvule (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv4 32)) (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv8 32))))} is VALID [2022-02-20 23:46:09,769 INFO L290 TraceCheckUtils]: 3: Hoare triple {5626#(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|) (bvule (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv4 32)) (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv8 32))))} SUMMARY for call append_#t~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L531 {5626#(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|) (bvule (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv4 32)) (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv8 32))))} is VALID [2022-02-20 23:46:09,769 INFO L290 TraceCheckUtils]: 2: Hoare triple {5508#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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {5626#(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|) (bvule (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv4 32)) (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv8 32))))} is VALID [2022-02-20 23:46:09,770 INFO L290 TraceCheckUtils]: 1: Hoare triple {5508#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {5508#true} is VALID [2022-02-20 23:46:09,770 INFO L290 TraceCheckUtils]: 0: Hoare triple {5508#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(14bv32, 2bv32); {5508#true} is VALID [2022-02-20 23:46:09,770 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:46:09,770 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:46:09,770 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1140038974] [2022-02-20 23:46:09,770 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1140038974] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:46:09,770 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:46:09,770 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 9] total 16 [2022-02-20 23:46:09,770 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [556073708] [2022-02-20 23:46:09,770 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:46:09,771 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 16 states have (on average 2.5) internal successors, (40), 17 states have internal predecessors, (40), 0 states have call successors, (0), 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:46:09,772 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:09,772 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 17 states, 16 states have (on average 2.5) internal successors, (40), 17 states have internal predecessors, (40), 0 states have call successors, (0), 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:46:09,890 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:09,890 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-02-20 23:46:09,891 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:46:09,891 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-02-20 23:46:09,891 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=43, Invalid=229, Unknown=0, NotChecked=0, Total=272 [2022-02-20 23:46:09,891 INFO L87 Difference]: Start difference. First operand 84 states and 87 transitions. Second operand has 17 states, 16 states have (on average 2.5) internal successors, (40), 17 states have internal predecessors, (40), 0 states have call successors, (0), 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:46:13,201 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:13,202 INFO L93 Difference]: Finished difference Result 132 states and 137 transitions. [2022-02-20 23:46:13,202 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-02-20 23:46:13,202 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 16 states have (on average 2.5) internal successors, (40), 17 states have internal predecessors, (40), 0 states have call successors, (0), 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:46:13,202 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:13,202 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 16 states have (on average 2.5) internal successors, (40), 17 states have internal predecessors, (40), 0 states have call successors, (0), 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:46:13,203 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 132 transitions. [2022-02-20 23:46:13,203 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 16 states have (on average 2.5) internal successors, (40), 17 states have internal predecessors, (40), 0 states have call successors, (0), 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:46:13,203 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 132 transitions. [2022-02-20 23:46:13,204 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 132 transitions. [2022-02-20 23:46:13,554 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 132 edges. 132 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:13,555 INFO L225 Difference]: With dead ends: 132 [2022-02-20 23:46:13,555 INFO L226 Difference]: Without dead ends: 132 [2022-02-20 23:46:13,556 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 45 GetRequests, 25 SyntacticMatches, 0 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 50 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=90, Invalid=372, Unknown=0, NotChecked=0, Total=462 [2022-02-20 23:46:13,556 INFO L933 BasicCegarLoop]: 39 mSDtfsCounter, 181 mSDsluCounter, 361 mSDsCounter, 0 mSdLazyCounter, 349 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 181 SdHoareTripleChecker+Valid, 400 SdHoareTripleChecker+Invalid, 578 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 349 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 221 IncrementalHoareTripleChecker+Unchecked, 1.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:13,556 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [181 Valid, 400 Invalid, 578 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 349 Invalid, 0 Unknown, 221 Unchecked, 1.0s Time] [2022-02-20 23:46:13,556 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 132 states. [2022-02-20 23:46:13,557 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 132 to 92. [2022-02-20 23:46:13,557 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:13,558 INFO L82 GeneralOperation]: Start isEquivalent. First operand 132 states. Second operand has 92 states, 70 states have (on average 1.3714285714285714) internal successors, (96), 91 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:46:13,558 INFO L74 IsIncluded]: Start isIncluded. First operand 132 states. Second operand has 92 states, 70 states have (on average 1.3714285714285714) internal successors, (96), 91 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:46:13,558 INFO L87 Difference]: Start difference. First operand 132 states. Second operand has 92 states, 70 states have (on average 1.3714285714285714) internal successors, (96), 91 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:46:13,559 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:13,559 INFO L93 Difference]: Finished difference Result 132 states and 137 transitions. [2022-02-20 23:46:13,559 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 137 transitions. [2022-02-20 23:46:13,559 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:13,559 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:13,559 INFO L74 IsIncluded]: Start isIncluded. First operand has 92 states, 70 states have (on average 1.3714285714285714) internal successors, (96), 91 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 132 states. [2022-02-20 23:46:13,560 INFO L87 Difference]: Start difference. First operand has 92 states, 70 states have (on average 1.3714285714285714) internal successors, (96), 91 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 132 states. [2022-02-20 23:46:13,561 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:13,561 INFO L93 Difference]: Finished difference Result 132 states and 137 transitions. [2022-02-20 23:46:13,561 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 137 transitions. [2022-02-20 23:46:13,561 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:13,561 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:13,561 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:13,561 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:13,562 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 92 states, 70 states have (on average 1.3714285714285714) internal successors, (96), 91 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:46:13,562 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 92 states to 92 states and 96 transitions. [2022-02-20 23:46:13,562 INFO L78 Accepts]: Start accepts. Automaton has 92 states and 96 transitions. Word has length 21 [2022-02-20 23:46:13,563 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:13,563 INFO L470 AbstractCegarLoop]: Abstraction has 92 states and 96 transitions. [2022-02-20 23:46:13,563 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 16 states have (on average 2.5) internal successors, (40), 17 states have internal predecessors, (40), 0 states have call successors, (0), 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:46:13,563 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 96 transitions. [2022-02-20 23:46:13,563 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-02-20 23:46:13,563 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:13,563 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:46:13,571 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (15)] Forceful destruction successful, exit code 0 [2022-02-20 23:46:13,770 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:46:13,770 INFO L402 AbstractCegarLoop]: === Iteration 15 === Targeting ULTIMATE.startErr25ASSERT_VIOLATIONMEMORY_FREE === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:46:13,771 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:13,771 INFO L85 PathProgramCache]: Analyzing trace with hash -1488018422, now seen corresponding path program 1 times [2022-02-20 23:46:13,771 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:46:13,771 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [821275488] [2022-02-20 23:46:13,771 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:13,771 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:46:13,771 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:46:13,773 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:46:13,773 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (16)] Waiting until timeout for monitored process [2022-02-20 23:46:13,868 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:13,872 INFO L263 TraceCheckSpWp]: Trace formula consists of 138 conjuncts, 23 conjunts are in the unsatisfiable core [2022-02-20 23:46:14,311 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:14,313 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:46:14,320 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:46:14,340 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:46:14,340 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:46:14,448 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 13 treesize of output 9 [2022-02-20 23:46:14,520 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 0 case distinctions, treesize of input 21 treesize of output 20 [2022-02-20 23:46:14,524 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:46:14,618 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 17 [2022-02-20 23:46:14,660 INFO L356 Elim1Store]: treesize reduction 13, result has 7.1 percent of original size [2022-02-20 23:46:14,660 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 3 new quantified variables, introduced 1 case distinctions, treesize of input 35 treesize of output 14 [2022-02-20 23:46:14,686 INFO L290 TraceCheckUtils]: 0: Hoare triple {6145#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(14bv32, 2bv32); {6145#true} is VALID [2022-02-20 23:46:14,687 INFO L290 TraceCheckUtils]: 1: Hoare triple {6145#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {6153#(= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:46:14,688 INFO L290 TraceCheckUtils]: 2: Hoare triple {6153#(= (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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {6157#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:46:14,688 INFO L290 TraceCheckUtils]: 3: Hoare triple {6157#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} SUMMARY for call append_#t~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L531 {6157#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:46:14,688 INFO L290 TraceCheckUtils]: 4: Hoare triple {6157#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} SUMMARY for call write~$Pointer$(append_#t~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L531-1 {6157#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:46:14,689 INFO L290 TraceCheckUtils]: 5: Hoare triple {6157#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} havoc append_#t~mem4#1.base, append_#t~mem4#1.offset; {6157#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:46:14,689 INFO L290 TraceCheckUtils]: 6: Hoare triple {6157#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#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_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L532 {6157#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:46:14,690 INFO L290 TraceCheckUtils]: 7: Hoare triple {6157#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} assume !(append_#t~mem5#1.base != 0bv32 || append_#t~mem5#1.offset != 0bv32);call append_#t~malloc8#1.base, append_#t~malloc8#1.offset := #Ultimate.allocOnHeap(8bv32);append_#t~ite9#1.base, append_#t~ite9#1.offset := append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {6173#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (bvult |ULTIMATE.start_append_#t~ite9#1.base| |#StackHeapBarrier|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:46:14,697 INFO L290 TraceCheckUtils]: 8: Hoare triple {6173#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (bvult |ULTIMATE.start_append_#t~ite9#1.base| |#StackHeapBarrier|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} SUMMARY for call write~$Pointer$(append_#t~ite9#1.base, append_#t~ite9#1.offset, append_~item~0#1.base, ~bvadd32(4bv32, append_~item~0#1.offset), 4bv32); srcloc: L532-3 {6177#(and (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv4 32))) |#StackHeapBarrier|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:46:14,698 INFO L290 TraceCheckUtils]: 9: Hoare triple {6177#(and (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv4 32))) |#StackHeapBarrier|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#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;havoc append_#t~ite9#1.base, append_#t~ite9#1.offset;havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {6177#(and (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv4 32))) |#StackHeapBarrier|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:46:16,701 WARN L290 TraceCheckUtils]: 10: Hoare triple {6177#(and (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv4 32))) |#StackHeapBarrier|) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#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: L535 {6184#(and (not (= (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.base|)) (bvult (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) |#StackHeapBarrier|))} is UNKNOWN [2022-02-20 23:46:16,702 INFO L290 TraceCheckUtils]: 11: Hoare triple {6184#(and (not (= (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.base|)) (bvult (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) |#StackHeapBarrier|))} assume { :end_inline_append } true; {6184#(and (not (= (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.base|)) (bvult (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) |#StackHeapBarrier|))} is VALID [2022-02-20 23:46:16,703 INFO L290 TraceCheckUtils]: 12: Hoare triple {6184#(and (not (= (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.base|)) (bvult (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) |#StackHeapBarrier|))} assume !(0bv32 != main_#t~nondet10#1);havoc main_#t~nondet10#1; {6184#(and (not (= (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.base|)) (bvult (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) |#StackHeapBarrier|))} is VALID [2022-02-20 23:46:16,703 INFO L290 TraceCheckUtils]: 13: Hoare triple {6184#(and (not (= (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.base|)) (bvult (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) |#StackHeapBarrier|))} SUMMARY for call main_#t~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32); srcloc: L540-4 {6184#(and (not (= (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.base|)) (bvult (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) |#StackHeapBarrier|))} is VALID [2022-02-20 23:46:16,704 INFO L290 TraceCheckUtils]: 14: Hoare triple {6184#(and (not (= (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.base|)) (bvult (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) |#StackHeapBarrier|))} assume main_#t~mem11#1.base != 0bv32 || main_#t~mem11#1.offset != 0bv32;havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {6184#(and (not (= (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.base|)) (bvult (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) |#StackHeapBarrier|))} is VALID [2022-02-20 23:46:16,704 INFO L290 TraceCheckUtils]: 15: Hoare triple {6184#(and (not (= (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.base|)) (bvult (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) |#StackHeapBarrier|))} SUMMARY for call main_#t~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32); srcloc: L544 {6184#(and (not (= (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.base|)) (bvult (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) |#StackHeapBarrier|))} is VALID [2022-02-20 23:46:16,705 INFO L290 TraceCheckUtils]: 16: Hoare triple {6184#(and (not (= (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.base|)) (bvult (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) |#StackHeapBarrier|))} SUMMARY for call main_#t~mem13#1.base, main_#t~mem13#1.offset := read~$Pointer$(main_#t~mem12#1.base, main_#t~mem12#1.offset, 4bv32); srcloc: L544-1 {6184#(and (not (= (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.base|)) (bvult (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) |#StackHeapBarrier|))} is VALID [2022-02-20 23:46:16,705 INFO L290 TraceCheckUtils]: 17: Hoare triple {6184#(and (not (= (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.base|)) (bvult (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |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~mem13#1.base, main_#t~mem13#1.offset;havoc main_#t~mem12#1.base, main_#t~mem12#1.offset;havoc main_#t~mem13#1.base, main_#t~mem13#1.offset; {6184#(and (not (= (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.base|)) (bvult (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) |#StackHeapBarrier|))} is VALID [2022-02-20 23:46:16,714 INFO L290 TraceCheckUtils]: 18: Hoare triple {6184#(and (not (= (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.base|)) (bvult (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|))) |#StackHeapBarrier|))} SUMMARY for call main_#t~mem14#1.base, main_#t~mem14#1.offset := read~$Pointer$(main_~#list~0#1.base, main_~#list~0#1.offset, 4bv32); srcloc: L545 {6209#(exists ((|ULTIMATE.start_main_~#list~0#1.base| (_ BitVec 32)) (|ULTIMATE.start_main_~#list~0#1.offset| (_ BitVec 32))) (and (= |ULTIMATE.start_main_#t~mem14#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (not (= (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.base|)) (bvult (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv4 32) |ULTIMATE.start_main_#t~mem14#1.offset|)) |#StackHeapBarrier|)))} is VALID [2022-02-20 23:46:16,722 INFO L290 TraceCheckUtils]: 19: Hoare triple {6209#(exists ((|ULTIMATE.start_main_~#list~0#1.base| (_ BitVec 32)) (|ULTIMATE.start_main_~#list~0#1.offset| (_ BitVec 32))) (and (= |ULTIMATE.start_main_#t~mem14#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (not (= (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.base|)) (bvult (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~#list~0#1.base|) |ULTIMATE.start_main_~#list~0#1.offset|)) (bvadd (_ bv4 32) |ULTIMATE.start_main_#t~mem14#1.offset|)) |#StackHeapBarrier|)))} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_#t~mem14#1.base, ~bvadd32(4bv32, main_#t~mem14#1.offset), 4bv32); srcloc: L545-1 {6213#(bvult |ULTIMATE.start_main_#t~mem15#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:16,722 INFO L290 TraceCheckUtils]: 20: Hoare triple {6213#(bvult |ULTIMATE.start_main_#t~mem15#1.base| |#StackHeapBarrier|)} assume 0bv32 == main_#t~mem15#1.offset; {6213#(bvult |ULTIMATE.start_main_#t~mem15#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:16,723 INFO L290 TraceCheckUtils]: 21: Hoare triple {6213#(bvult |ULTIMATE.start_main_#t~mem15#1.base| |#StackHeapBarrier|)} assume !~bvult32(main_#t~mem15#1.base, #StackHeapBarrier); {6146#false} is VALID [2022-02-20 23:46:16,723 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:46:16,723 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:46:16,723 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:46:16,723 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [821275488] [2022-02-20 23:46:16,723 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [821275488] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:46:16,723 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:46:16,723 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-02-20 23:46:16,724 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [547382609] [2022-02-20 23:46:16,724 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:46:16,724 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.75) internal successors, (22), 9 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:46:16,724 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:16,724 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.75) internal successors, (22), 9 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:46:18,768 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 21 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:18,768 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 23:46:18,768 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:46:18,769 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 23:46:18,769 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:46:18,769 INFO L87 Difference]: Start difference. First operand 92 states and 96 transitions. Second operand has 9 states, 8 states have (on average 2.75) internal successors, (22), 9 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:46:20,160 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:20,160 INFO L93 Difference]: Finished difference Result 93 states and 97 transitions. [2022-02-20 23:46:20,160 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-02-20 23:46:20,160 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.75) internal successors, (22), 9 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:46:20,160 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:20,160 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.75) internal successors, (22), 9 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:46:20,161 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 87 transitions. [2022-02-20 23:46:20,161 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.75) internal successors, (22), 9 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:46:20,162 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 87 transitions. [2022-02-20 23:46:20,162 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 87 transitions. [2022-02-20 23:46:22,270 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 87 edges. 86 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:22,271 INFO L225 Difference]: With dead ends: 93 [2022-02-20 23:46:22,271 INFO L226 Difference]: Without dead ends: 93 [2022-02-20 23:46:22,271 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 28 GetRequests, 14 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 17 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=68, Invalid=172, Unknown=0, NotChecked=0, Total=240 [2022-02-20 23:46:22,271 INFO L933 BasicCegarLoop]: 37 mSDtfsCounter, 88 mSDsluCounter, 127 mSDsCounter, 0 mSdLazyCounter, 221 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 88 SdHoareTripleChecker+Valid, 164 SdHoareTripleChecker+Invalid, 274 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 221 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 43 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:22,271 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [88 Valid, 164 Invalid, 274 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 221 Invalid, 0 Unknown, 43 Unchecked, 0.4s Time] [2022-02-20 23:46:22,272 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 93 states. [2022-02-20 23:46:22,280 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 93 to 93. [2022-02-20 23:46:22,280 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:22,281 INFO L82 GeneralOperation]: Start isEquivalent. First operand 93 states. Second operand has 93 states, 71 states have (on average 1.3661971830985915) internal successors, (97), 92 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:46:22,281 INFO L74 IsIncluded]: Start isIncluded. First operand 93 states. Second operand has 93 states, 71 states have (on average 1.3661971830985915) internal successors, (97), 92 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:46:22,281 INFO L87 Difference]: Start difference. First operand 93 states. Second operand has 93 states, 71 states have (on average 1.3661971830985915) internal successors, (97), 92 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:46:22,282 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:22,282 INFO L93 Difference]: Finished difference Result 93 states and 97 transitions. [2022-02-20 23:46:22,282 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 97 transitions. [2022-02-20 23:46:22,282 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:22,282 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:22,282 INFO L74 IsIncluded]: Start isIncluded. First operand has 93 states, 71 states have (on average 1.3661971830985915) internal successors, (97), 92 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 93 states. [2022-02-20 23:46:22,283 INFO L87 Difference]: Start difference. First operand has 93 states, 71 states have (on average 1.3661971830985915) internal successors, (97), 92 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 93 states. [2022-02-20 23:46:22,283 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:22,283 INFO L93 Difference]: Finished difference Result 93 states and 97 transitions. [2022-02-20 23:46:22,284 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 97 transitions. [2022-02-20 23:46:22,284 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:22,284 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:22,284 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:22,284 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:22,284 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 93 states, 71 states have (on average 1.3661971830985915) internal successors, (97), 92 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:46:22,286 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 93 states to 93 states and 97 transitions. [2022-02-20 23:46:22,286 INFO L78 Accepts]: Start accepts. Automaton has 93 states and 97 transitions. Word has length 22 [2022-02-20 23:46:22,286 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:22,286 INFO L470 AbstractCegarLoop]: Abstraction has 93 states and 97 transitions. [2022-02-20 23:46:22,286 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.75) internal successors, (22), 9 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:46:22,286 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 97 transitions. [2022-02-20 23:46:22,289 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-02-20 23:46:22,289 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:22,289 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:46:22,296 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (16)] Forceful destruction successful, exit code 0 [2022-02-20 23:46:22,496 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:46:22,496 INFO L402 AbstractCegarLoop]: === Iteration 16 === Targeting ULTIMATE.startErr26ASSERT_VIOLATIONMEMORY_FREE === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:46:22,496 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:22,496 INFO L85 PathProgramCache]: Analyzing trace with hash 1116069276, now seen corresponding path program 1 times [2022-02-20 23:46:22,497 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:46:22,497 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [25317152] [2022-02-20 23:46:22,497 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:22,497 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:46:22,497 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:46:22,498 INFO L229 MonitoredProcess]: Starting monitored process 17 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:46:22,498 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (17)] Waiting until timeout for monitored process [2022-02-20 23:46:22,588 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:22,592 INFO L263 TraceCheckSpWp]: Trace formula consists of 140 conjuncts, 24 conjunts are in the unsatisfiable core [2022-02-20 23:46:22,614 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:22,616 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:46:22,621 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:46:22,641 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:46:22,641 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:46:22,690 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:46:22,724 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 13 treesize of output 9 [2022-02-20 23:46:22,787 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 0 case distinctions, treesize of input 23 treesize of output 22 [2022-02-20 23:46:22,790 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:46:22,900 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 27 treesize of output 19 [2022-02-20 23:46:22,938 INFO L356 Elim1Store]: treesize reduction 13, result has 7.1 percent of original size [2022-02-20 23:46:22,938 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 3 new quantified variables, introduced 1 case distinctions, treesize of input 37 treesize of output 16 [2022-02-20 23:46:22,965 INFO L290 TraceCheckUtils]: 0: Hoare triple {6605#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(14bv32, 2bv32); {6605#true} is VALID [2022-02-20 23:46:22,967 INFO L290 TraceCheckUtils]: 1: Hoare triple {6605#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, 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_~next~0#1.base, main_~next~0#1.offset, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_~next~1#1.base, main_~next~1#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_~#list~0#1.base, main_~#list~0#1.offset;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); {6613#(= (select |#valid| |ULTIMATE.start_main_~#list~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:46:22,967 INFO L290 TraceCheckUtils]: 2: Hoare triple {6613#(= (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~malloc3#1.base, append_#t~malloc3#1.offset, append_#t~mem4#1.base, append_#t~mem4#1.offset, append_#t~mem5#1.base, append_#t~mem5#1.offset, append_#t~ite9#1.base, append_#t~ite9#1.offset, append_#t~mem6#1.base, append_#t~mem6#1.offset, append_#t~mem7#1.base, append_#t~mem7#1.offset, append_#t~malloc8#1.base, append_#t~malloc8#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;call append_#t~malloc3#1.base, append_#t~malloc3#1.offset := #Ultimate.allocOnHeap(8bv32);append_~item~0#1.base, append_~item~0#1.offset := append_#t~malloc3#1.base, append_#t~malloc3#1.offset;havoc append_#t~malloc3#1.base, append_#t~malloc3#1.offset; {6617#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:46:22,968 INFO L290 TraceCheckUtils]: 3: Hoare triple {6617#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} SUMMARY for call append_#t~mem4#1.base, append_#t~mem4#1.offset := read~$Pointer$(append_~plist#1.base, append_~plist#1.offset, 4bv32); srcloc: L531 {6617#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:46:22,968 INFO L290 TraceCheckUtils]: 4: Hoare triple {6617#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} SUMMARY for call write~$Pointer$(append_#t~mem4#1.base, append_#t~mem4#1.offset, append_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L531-1 {6617#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:46:22,969 INFO L290 TraceCheckUtils]: 5: Hoare triple {6617#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} havoc append_#t~mem4#1.base, append_#t~mem4#1.offset; {6617#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:46:22,969 INFO L290 TraceCheckUtils]: 6: Hoare triple {6617#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#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_~item~0#1.base, append_~item~0#1.offset, 4bv32); srcloc: L532 {6617#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:46:22,970 INFO L290 TraceCheckUtils]: 7: Hoare triple {6617#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} assume !(append_#t~mem5#1.base != 0bv32 || append_#t~mem5#1.offset != 0bv32);call append_#t~malloc8#1.base, append_#t~malloc8#1.offset := #Ultimate.allocOnHeap(8bv32);append_#t~ite9#1.base, append_#t~ite9#1.offset := append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {6633#(and (= (select |#valid| |ULTIMATE.start_append_#t~ite9#1.base|) (_ bv1 1)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} is VALID [2022-02-20 23:46:22,972 INFO L290 TraceCheckUtils]: 8: Hoare triple {6633#(and (= (select |#valid| |ULTIMATE.start_append_#t~ite9#1.base|) (_ bv1 1)) (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|))} SUMMARY for call write~$Pointer$(append_#t~ite9#1.base, append_#t~ite9#1.offset, append_~item~0#1.base, ~bvadd32(4bv32, append_~item~0#1.offset), 4bv32); srcloc: L532-3 {6637#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv4 32))))))} is VALID [2022-02-20 23:46:22,972 INFO L290 TraceCheckUtils]: 9: Hoare triple {6637#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv4 32))))))} havoc append_#t~mem5#1.base, append_#t~mem5#1.offset;havoc append_#t~ite9#1.base, append_#t~ite9#1.offset;havoc append_#t~mem6#1.base, append_#t~mem6#1.offset;havoc append_#t~mem7#1.base, append_#t~mem7#1.offset;havoc append_#t~malloc8#1.base, append_#t~malloc8#1.offset; {6637#(and (= |ULTIMATE.start_main_~#list~0#1.base| |ULTIMATE.start_append_~plist#1.base|) (not (= |ULTIMATE.start_append_~item~0#1.base| |ULTIMATE.start_main_~#list~0#1.base|)) (= |ULTIMATE.start_main_~#list~0#1.offset| |ULTIMATE.start_append_~plist#1.offset|) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_append_~item~0#1.base|) (bvadd |ULTIMATE.start_append_~item~0#1.offset| (_ bv4 32))))))} is VALID