./Ultimate.py --spec ../sv-benchmarks/c/properties/valid-memsafety.prp --file ../sv-benchmarks/c/memsafety/test-0102-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-0102-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 d10910cb8c44ec8f982d35122d9e66670129ee7c874265953b685f7f63a30072 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:44:35,185 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:44:35,189 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:44:35,213 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:44:35,214 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:44:35,216 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:44:35,218 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:44:35,222 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:44:35,224 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:44:35,226 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:44:35,227 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:44:35,229 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:44:35,229 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:44:35,233 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:44:35,234 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:44:35,236 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:44:35,237 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:44:35,238 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:44:35,240 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:44:35,242 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:44:35,245 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:44:35,246 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:44:35,248 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:44:35,249 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:44:35,253 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:44:35,256 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:44:35,257 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:44:35,257 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:44:35,258 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:44:35,259 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:44:35,260 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:44:35,261 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:44:35,262 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:44:35,263 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:44:35,264 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:44:35,264 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:44:35,265 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:44:35,265 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:44:35,265 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:44:35,266 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:44:35,267 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:44:35,268 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:44:35,302 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:44:35,303 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:44:35,304 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:44:35,304 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:44:35,305 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:44:35,305 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:44:35,306 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:44:35,306 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:44:35,306 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:44:35,306 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:44:35,307 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:44:35,307 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:44:35,307 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:44:35,307 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:44:35,308 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:44:35,308 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:44:35,308 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:44:35,308 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2022-02-20 23:44:35,308 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:44:35,309 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:44:35,309 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:44:35,309 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:44:35,309 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:44:35,309 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:44:35,310 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:44:35,310 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:44:35,310 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:44:35,310 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:44:35,310 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 23:44:35,311 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 23:44:35,311 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 -> d10910cb8c44ec8f982d35122d9e66670129ee7c874265953b685f7f63a30072 [2022-02-20 23:44:35,563 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:44:35,584 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:44:35,587 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:44:35,588 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:44:35,588 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:44:35,589 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/memsafety/test-0102-2.i [2022-02-20 23:44:35,659 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/58162f8c0/b6a86914d2ef4d66bc3f2ef5d10ef6aa/FLAG127fe43ca [2022-02-20 23:44:36,109 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:44:36,110 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/memsafety/test-0102-2.i [2022-02-20 23:44:36,128 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/58162f8c0/b6a86914d2ef4d66bc3f2ef5d10ef6aa/FLAG127fe43ca [2022-02-20 23:44:36,145 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/58162f8c0/b6a86914d2ef4d66bc3f2ef5d10ef6aa [2022-02-20 23:44:36,148 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:44:36,149 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:44:36,152 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:44:36,152 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:44:36,155 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:44:36,156 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:44:36" (1/1) ... [2022-02-20 23:44:36,157 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2f83d3e8 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:36, skipping insertion in model container [2022-02-20 23:44:36,157 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:44:36" (1/1) ... [2022-02-20 23:44:36,163 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:44:36,201 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:44:36,492 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:44:36,504 ERROR L326 MainTranslator]: Unsupported Syntax: Found a cast between two array/pointer types where the value type is smaller than the cast-to type while using memory model HoenickeLindenmann_Original (while Not using bitvector translation) [2022-02-20 23:44:36,505 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@7eee1e9b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:36, skipping insertion in model container [2022-02-20 23:44:36,506 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:44:36,507 INFO L184 ToolchainWalker]: Toolchain execution was canceled (user or tool) before executing de.uni_freiburg.informatik.ultimate.boogie.procedureinliner [2022-02-20 23:44:36,509 INFO L158 Benchmark]: Toolchain (without parser) took 359.05ms. Allocated memory was 90.2MB in the beginning and 130.0MB in the end (delta: 39.8MB). Free memory was 55.8MB in the beginning and 101.8MB in the end (delta: -45.9MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2022-02-20 23:44:36,511 INFO L158 Benchmark]: CDTParser took 0.19ms. Allocated memory is still 90.2MB. Free memory was 44.9MB in the beginning and 44.9MB in the end (delta: 83.9kB). There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 23:44:36,512 INFO L158 Benchmark]: CACSL2BoogieTranslator took 354.48ms. Allocated memory was 90.2MB in the beginning and 130.0MB in the end (delta: 39.8MB). Free memory was 55.5MB in the beginning and 101.8MB in the end (delta: -46.3MB). Peak memory consumption was 6.3MB. Max. memory is 16.1GB. [2022-02-20 23:44:36,514 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.19ms. Allocated memory is still 90.2MB. Free memory was 44.9MB in the beginning and 44.9MB in the end (delta: 83.9kB). There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 354.48ms. Allocated memory was 90.2MB in the beginning and 130.0MB in the end (delta: 39.8MB). Free memory was 55.5MB in the beginning and 101.8MB in the end (delta: -46.3MB). Peak memory consumption was 6.3MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: - UnsupportedSyntaxResult [Line: 551]: Unsupported Syntax Found a cast between two array/pointer types where the value type is smaller than the cast-to type while using memory model HoenickeLindenmann_Original (while Not using bitvector translation) RESULT: Ultimate could not prove your program: Toolchain returned no result. 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-0102-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 d10910cb8c44ec8f982d35122d9e66670129ee7c874265953b685f7f63a30072 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:44:38,151 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:44:38,153 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:44:38,175 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:44:38,176 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:44:38,177 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:44:38,178 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:44:38,180 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:44:38,181 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:44:38,182 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:44:38,183 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:44:38,184 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:44:38,185 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:44:38,185 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:44:38,186 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:44:38,187 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:44:38,188 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:44:38,189 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:44:38,191 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:44:38,192 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:44:38,193 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:44:38,202 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:44:38,203 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:44:38,204 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:44:38,207 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:44:38,213 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:44:38,213 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:44:38,214 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:44:38,214 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:44:38,215 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:44:38,215 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:44:38,216 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:44:38,217 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:44:38,218 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:44:38,218 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:44:38,219 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:44:38,219 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:44:38,219 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:44:38,220 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:44:38,221 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:44:38,221 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:44:38,223 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:44:38,252 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:44:38,253 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:44:38,254 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:44:38,254 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:44:38,254 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:44:38,255 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:44:38,255 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:44:38,255 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:44:38,256 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:44:38,256 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:44:38,256 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:44:38,256 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:44:38,256 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:44:38,256 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:44:38,256 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:44:38,256 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:44:38,257 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:44:38,257 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2022-02-20 23:44:38,257 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:44:38,257 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:44:38,257 INFO L138 SettingsManager]: * Use bitvectors instead of ints=true [2022-02-20 23:44:38,257 INFO L138 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2022-02-20 23:44:38,257 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:44:38,257 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:44:38,257 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:44:38,258 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:44:38,258 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:44:38,263 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:44:38,263 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:44:38,264 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:44:38,264 INFO L138 SettingsManager]: * Trace refinement strategy=WOLF [2022-02-20 23:44:38,264 INFO L138 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2022-02-20 23:44:38,264 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-02-20 23:44:38,264 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 -> d10910cb8c44ec8f982d35122d9e66670129ee7c874265953b685f7f63a30072 [2022-02-20 23:44:38,557 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:44:38,574 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:44:38,576 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:44:38,577 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:44:38,578 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:44:38,579 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/memsafety/test-0102-2.i [2022-02-20 23:44:38,630 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/dd619ca78/df0604f89bd94b47b6061340ac216714/FLAGd0550ce17 [2022-02-20 23:44:39,171 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:44:39,172 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/memsafety/test-0102-2.i [2022-02-20 23:44:39,187 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/dd619ca78/df0604f89bd94b47b6061340ac216714/FLAGd0550ce17 [2022-02-20 23:44:39,502 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/dd619ca78/df0604f89bd94b47b6061340ac216714 [2022-02-20 23:44:39,505 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:44:39,506 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:44:39,507 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:44:39,507 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:44:39,510 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:44:39,511 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:44:39" (1/1) ... [2022-02-20 23:44:39,512 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@3e494e1c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:39, skipping insertion in model container [2022-02-20 23:44:39,512 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:44:39" (1/1) ... [2022-02-20 23:44:39,518 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:44:39,547 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:44:39,809 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:44:39,819 INFO L200 MainTranslator]: Restarting translation with changed settings: SettingsChange [mNewPreferredMemoryModel=HoenickeLindenmann_1ByteResolution] [2022-02-20 23:44:39,825 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:44:39,860 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:44:39,866 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 23:44:39,930 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:44:39,975 INFO L208 MainTranslator]: Completed translation [2022-02-20 23:44:39,976 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:39 WrapperNode [2022-02-20 23:44:39,976 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:44:39,978 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 23:44:39,978 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 23:44:39,978 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 23:44:39,993 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:44:39" (1/1) ... [2022-02-20 23:44:40,023 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:44:39" (1/1) ... [2022-02-20 23:44:40,055 INFO L137 Inliner]: procedures = 136, calls = 37, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 101 [2022-02-20 23:44:40,056 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 23:44:40,056 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 23:44:40,056 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 23:44:40,057 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 23:44:40,064 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:39" (1/1) ... [2022-02-20 23:44:40,065 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:39" (1/1) ... [2022-02-20 23:44:40,071 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:39" (1/1) ... [2022-02-20 23:44:40,084 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:39" (1/1) ... [2022-02-20 23:44:40,097 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:39" (1/1) ... [2022-02-20 23:44:40,101 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:39" (1/1) ... [2022-02-20 23:44:40,103 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:39" (1/1) ... [2022-02-20 23:44:40,111 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 23:44:40,112 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 23:44:40,112 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 23:44:40,112 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 23:44:40,113 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:39" (1/1) ... [2022-02-20 23:44:40,125 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:44:40,136 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:44:40,146 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:44:40,148 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:44:40,174 INFO L130 BoogieDeclarations]: Found specification of procedure list_add_tail [2022-02-20 23:44:40,174 INFO L138 BoogieDeclarations]: Found implementation of procedure list_add_tail [2022-02-20 23:44:40,174 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2022-02-20 23:44:40,175 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 23:44:40,175 INFO L130 BoogieDeclarations]: Found specification of procedure create_sub_list [2022-02-20 23:44:40,175 INFO L138 BoogieDeclarations]: Found implementation of procedure create_sub_list [2022-02-20 23:44:40,175 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-02-20 23:44:40,175 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2022-02-20 23:44:40,179 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2022-02-20 23:44:40,179 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2022-02-20 23:44:40,179 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 23:44:40,179 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~$Pointer$ [2022-02-20 23:44:40,179 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1 [2022-02-20 23:44:40,180 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 23:44:40,180 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 23:44:40,293 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 23:44:40,295 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 23:44:40,739 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 23:44:40,745 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 23:44:40,745 INFO L299 CfgBuilder]: Removed 4 assume(true) statements. [2022-02-20 23:44:40,747 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:44:40 BoogieIcfgContainer [2022-02-20 23:44:40,747 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 23:44:40,749 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 23:44:40,749 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 23:44:40,754 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 23:44:40,755 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 11:44:39" (1/3) ... [2022-02-20 23:44:40,756 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@45733015 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:44:40, skipping insertion in model container [2022-02-20 23:44:40,756 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:39" (2/3) ... [2022-02-20 23:44:40,756 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@45733015 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:44:40, skipping insertion in model container [2022-02-20 23:44:40,756 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:44:40" (3/3) ... [2022-02-20 23:44:40,758 INFO L111 eAbstractionObserver]: Analyzing ICFG test-0102-2.i [2022-02-20 23:44:40,762 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 23:44:40,763 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 31 error locations. [2022-02-20 23:44:40,809 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 23:44:40,816 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:44:40,816 INFO L340 AbstractCegarLoop]: Starting to check reachability of 31 error locations. [2022-02-20 23:44:40,839 INFO L276 IsEmpty]: Start isEmpty. Operand has 83 states, 45 states have (on average 1.9111111111111112) internal successors, (86), 76 states have internal predecessors, (86), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:44:40,844 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 6 [2022-02-20 23:44:40,845 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:40,845 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1] [2022-02-20 23:44:40,845 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0REQUIRES_VIOLATION === [create_sub_listErr0REQUIRES_VIOLATION, create_sub_listErr1REQUIRES_VIOLATION, create_sub_listErr2REQUIRES_VIOLATION, create_sub_listErr3REQUIRES_VIOLATION (and 27 more)] === [2022-02-20 23:44:40,851 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:40,851 INFO L85 PathProgramCache]: Analyzing trace with hash 60205689, now seen corresponding path program 1 times [2022-02-20 23:44:40,862 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:40,862 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [333216952] [2022-02-20 23:44:40,863 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:40,863 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:40,864 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:40,869 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:44:40,870 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:44:40,946 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:40,949 INFO L263 TraceCheckSpWp]: Trace formula consists of 36 conjuncts, 1 conjunts are in the unsatisfiable core [2022-02-20 23:44:40,958 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:40,961 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:41,003 INFO L290 TraceCheckUtils]: 0: Hoare triple {86#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); {86#true} is VALID [2022-02-20 23:44:41,004 INFO L290 TraceCheckUtils]: 1: Hoare triple {86#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_~#top~1#1.base, main_~#top~1#1.offset;call main_~#top~1#1.base, main_~#top~1#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, main_~#top~1#1.offset, 4bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, ~bvadd32(4bv32, main_~#top~1#1.offset), 4bv32);assume { :begin_inline_create_top } true;create_top_#in~top#1.base, create_top_#in~top#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc create_top_#t~nondet11#1, create_top_~top#1.base, create_top_~top#1.offset;create_top_~top#1.base, create_top_~top#1.offset := create_top_#in~top#1.base, create_top_#in~top#1.offset; {86#true} is VALID [2022-02-20 23:44:41,005 INFO L290 TraceCheckUtils]: 2: Hoare triple {86#true} assume !true; {87#false} is VALID [2022-02-20 23:44:41,006 INFO L290 TraceCheckUtils]: 3: Hoare triple {87#false} assume { :end_inline_create_top } true;assume { :begin_inline_destroy_top } true;destroy_top_#in~head#1.base, destroy_top_#in~head#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc destroy_top_#t~mem6#1.base, destroy_top_#t~mem6#1.offset, destroy_top_#t~mem7#1.base, destroy_top_#t~mem7#1.offset, destroy_top_~next~1#1.base, destroy_top_~next~1#1.offset, destroy_top_~head#1.base, destroy_top_~head#1.offset, destroy_top_~now~1#1.base, destroy_top_~now~1#1.offset;destroy_top_~head#1.base, destroy_top_~head#1.offset := destroy_top_#in~head#1.base, destroy_top_#in~head#1.offset; {87#false} is VALID [2022-02-20 23:44:41,006 INFO L290 TraceCheckUtils]: 4: Hoare triple {87#false} assume !(1bv1 == #valid[destroy_top_~head#1.base]); {87#false} is VALID [2022-02-20 23:44:41,008 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:44:41,008 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:41,009 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:41,009 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [333216952] [2022-02-20 23:44:41,010 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [333216952] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:41,010 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:41,010 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:44:41,013 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [418347141] [2022-02-20 23:44:41,014 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:41,018 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 2.5) internal successors, (5), 2 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:44:41,019 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:41,021 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 2 states, 2 states have (on average 2.5) internal successors, (5), 2 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:44:41,029 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:44:41,029 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-02-20 23:44:41,029 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:41,056 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-02-20 23:44:41,057 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 23:44:41,061 INFO L87 Difference]: Start difference. First operand has 83 states, 45 states have (on average 1.9111111111111112) internal successors, (86), 76 states have internal predecessors, (86), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand has 2 states, 2 states have (on average 2.5) internal successors, (5), 2 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:44:41,218 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:41,218 INFO L93 Difference]: Finished difference Result 83 states and 88 transitions. [2022-02-20 23:44:41,218 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-02-20 23:44:41,219 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 2.5) internal successors, (5), 2 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:44:41,219 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:41,220 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 2.5) internal successors, (5), 2 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:44:41,236 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 94 transitions. [2022-02-20 23:44:41,238 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 2.5) internal successors, (5), 2 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:44:41,255 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 94 transitions. [2022-02-20 23:44:41,255 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 94 transitions. [2022-02-20 23:44:41,405 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:44:41,420 INFO L225 Difference]: With dead ends: 83 [2022-02-20 23:44:41,421 INFO L226 Difference]: Without dead ends: 81 [2022-02-20 23:44:41,422 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 4 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 23:44:41,426 INFO L933 BasicCegarLoop]: 88 mSDtfsCounter, 0 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 0 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 88 SdHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:41,428 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 88 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:44:41,441 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 81 states. [2022-02-20 23:44:41,458 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 81 to 81. [2022-02-20 23:44:41,458 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:41,460 INFO L82 GeneralOperation]: Start isEquivalent. First operand 81 states. Second operand has 81 states, 44 states have (on average 1.7727272727272727) internal successors, (78), 74 states have internal predecessors, (78), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:44:41,461 INFO L74 IsIncluded]: Start isIncluded. First operand 81 states. Second operand has 81 states, 44 states have (on average 1.7727272727272727) internal successors, (78), 74 states have internal predecessors, (78), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:44:41,461 INFO L87 Difference]: Start difference. First operand 81 states. Second operand has 81 states, 44 states have (on average 1.7727272727272727) internal successors, (78), 74 states have internal predecessors, (78), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:44:41,467 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:41,468 INFO L93 Difference]: Finished difference Result 81 states and 86 transitions. [2022-02-20 23:44:41,468 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 86 transitions. [2022-02-20 23:44:41,469 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:41,469 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:41,470 INFO L74 IsIncluded]: Start isIncluded. First operand has 81 states, 44 states have (on average 1.7727272727272727) internal successors, (78), 74 states have internal predecessors, (78), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 81 states. [2022-02-20 23:44:41,470 INFO L87 Difference]: Start difference. First operand has 81 states, 44 states have (on average 1.7727272727272727) internal successors, (78), 74 states have internal predecessors, (78), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 81 states. [2022-02-20 23:44:41,475 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:41,475 INFO L93 Difference]: Finished difference Result 81 states and 86 transitions. [2022-02-20 23:44:41,476 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 86 transitions. [2022-02-20 23:44:41,476 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:41,477 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:41,477 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:41,477 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:41,478 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 81 states, 44 states have (on average 1.7727272727272727) internal successors, (78), 74 states have internal predecessors, (78), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:44:41,481 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 81 states to 81 states and 86 transitions. [2022-02-20 23:44:41,482 INFO L78 Accepts]: Start accepts. Automaton has 81 states and 86 transitions. Word has length 5 [2022-02-20 23:44:41,482 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:41,483 INFO L470 AbstractCegarLoop]: Abstraction has 81 states and 86 transitions. [2022-02-20 23:44:41,483 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 2.5) internal successors, (5), 2 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:44:41,483 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 86 transitions. [2022-02-20 23:44:41,484 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 8 [2022-02-20 23:44:41,484 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:41,484 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:41,499 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:44:41,693 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:44:41,693 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting create_sub_listErr0REQUIRES_VIOLATION === [create_sub_listErr0REQUIRES_VIOLATION, create_sub_listErr1REQUIRES_VIOLATION, create_sub_listErr2REQUIRES_VIOLATION, create_sub_listErr3REQUIRES_VIOLATION (and 27 more)] === [2022-02-20 23:44:41,694 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:41,694 INFO L85 PathProgramCache]: Analyzing trace with hash 2005144647, now seen corresponding path program 1 times [2022-02-20 23:44:41,694 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:41,695 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [727948536] [2022-02-20 23:44:41,695 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:41,695 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:41,695 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:41,699 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:44:41,701 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:44:41,754 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:41,756 INFO L263 TraceCheckSpWp]: Trace formula consists of 58 conjuncts, 7 conjunts are in the unsatisfiable core [2022-02-20 23:44:41,765 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:41,766 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:41,811 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:44:41,861 INFO L290 TraceCheckUtils]: 0: Hoare triple {428#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); {428#true} is VALID [2022-02-20 23:44:41,861 INFO L290 TraceCheckUtils]: 1: Hoare triple {428#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_~#top~1#1.base, main_~#top~1#1.offset;call main_~#top~1#1.base, main_~#top~1#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, main_~#top~1#1.offset, 4bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, ~bvadd32(4bv32, main_~#top~1#1.offset), 4bv32);assume { :begin_inline_create_top } true;create_top_#in~top#1.base, create_top_#in~top#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc create_top_#t~nondet11#1, create_top_~top#1.base, create_top_~top#1.offset;create_top_~top#1.base, create_top_~top#1.offset := create_top_#in~top#1.base, create_top_#in~top#1.offset; {428#true} is VALID [2022-02-20 23:44:41,863 INFO L290 TraceCheckUtils]: 2: Hoare triple {428#true} assume { :begin_inline_insert_top } true;insert_top_#in~head#1.base, insert_top_#in~head#1.offset := create_top_~top#1.base, create_top_~top#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset, insert_top_~head#1.base, insert_top_~head#1.offset, insert_top_~top~0#1.base, insert_top_~top~0#1.offset;insert_top_~head#1.base, insert_top_~head#1.offset := insert_top_#in~head#1.base, insert_top_#in~head#1.offset;call insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset := #Ultimate.allocOnHeap(24bv32);insert_top_~top~0#1.base, insert_top_~top~0#1.offset := insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset; {439#(= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:41,863 INFO L290 TraceCheckUtils]: 3: Hoare triple {439#(= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1))} assume !(insert_top_~top~0#1.base == 0bv32 && insert_top_~top~0#1.offset == 0bv32); {439#(= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:41,865 INFO L272 TraceCheckUtils]: 4: Hoare triple {439#(= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1))} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(8bv32, insert_top_~top~0#1.offset)); {446#(= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|))} is VALID [2022-02-20 23:44:41,866 INFO L290 TraceCheckUtils]: 5: Hoare triple {446#(= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|))} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {450#(= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:41,866 INFO L290 TraceCheckUtils]: 6: Hoare triple {450#(= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[~sub#1.base]); {429#false} is VALID [2022-02-20 23:44:41,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:44:41,867 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:41,867 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:41,867 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [727948536] [2022-02-20 23:44:41,868 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [727948536] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:41,868 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:41,868 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:44:41,872 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1611122535] [2022-02-20 23:44:41,872 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:41,875 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 1.5) internal successors, (6), 4 states have internal predecessors, (6), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 7 [2022-02-20 23:44:41,876 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:41,876 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 1.5) internal successors, (6), 4 states have internal predecessors, (6), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:41,891 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 7 edges. 7 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:41,891 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:44:41,892 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:41,892 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:44:41,893 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:44:41,893 INFO L87 Difference]: Start difference. First operand 81 states and 86 transitions. Second operand has 5 states, 4 states have (on average 1.5) internal successors, (6), 4 states have internal predecessors, (6), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:42,635 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:42,635 INFO L93 Difference]: Finished difference Result 108 states and 115 transitions. [2022-02-20 23:44:42,635 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:44:42,635 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 1.5) internal successors, (6), 4 states have internal predecessors, (6), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 7 [2022-02-20 23:44:42,635 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:42,636 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 1.5) internal successors, (6), 4 states have internal predecessors, (6), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:42,638 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 117 transitions. [2022-02-20 23:44:42,638 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 1.5) internal successors, (6), 4 states have internal predecessors, (6), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:42,647 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 117 transitions. [2022-02-20 23:44:42,647 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 117 transitions. [2022-02-20 23:44:42,805 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 117 edges. 117 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:42,809 INFO L225 Difference]: With dead ends: 108 [2022-02-20 23:44:42,809 INFO L226 Difference]: Without dead ends: 108 [2022-02-20 23:44:42,810 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:44:42,811 INFO L933 BasicCegarLoop]: 60 mSDtfsCounter, 60 mSDsluCounter, 102 mSDsCounter, 0 mSdLazyCounter, 132 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 61 SdHoareTripleChecker+Valid, 162 SdHoareTripleChecker+Invalid, 140 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 132 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:42,811 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [61 Valid, 162 Invalid, 140 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 132 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:44:42,812 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 108 states. [2022-02-20 23:44:42,816 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 108 to 79. [2022-02-20 23:44:42,816 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:42,817 INFO L82 GeneralOperation]: Start isEquivalent. First operand 108 states. Second operand has 79 states, 44 states have (on average 1.7272727272727273) internal successors, (76), 72 states have internal predecessors, (76), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:44:42,817 INFO L74 IsIncluded]: Start isIncluded. First operand 108 states. Second operand has 79 states, 44 states have (on average 1.7272727272727273) internal successors, (76), 72 states have internal predecessors, (76), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:44:42,818 INFO L87 Difference]: Start difference. First operand 108 states. Second operand has 79 states, 44 states have (on average 1.7272727272727273) internal successors, (76), 72 states have internal predecessors, (76), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:44:42,822 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:42,822 INFO L93 Difference]: Finished difference Result 108 states and 115 transitions. [2022-02-20 23:44:42,822 INFO L276 IsEmpty]: Start isEmpty. Operand 108 states and 115 transitions. [2022-02-20 23:44:42,823 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:42,824 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:42,824 INFO L74 IsIncluded]: Start isIncluded. First operand has 79 states, 44 states have (on average 1.7272727272727273) internal successors, (76), 72 states have internal predecessors, (76), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 108 states. [2022-02-20 23:44:42,824 INFO L87 Difference]: Start difference. First operand has 79 states, 44 states have (on average 1.7272727272727273) internal successors, (76), 72 states have internal predecessors, (76), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 108 states. [2022-02-20 23:44:42,828 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:42,829 INFO L93 Difference]: Finished difference Result 108 states and 115 transitions. [2022-02-20 23:44:42,829 INFO L276 IsEmpty]: Start isEmpty. Operand 108 states and 115 transitions. [2022-02-20 23:44:42,830 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:42,830 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:42,830 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:42,830 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:42,831 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 79 states, 44 states have (on average 1.7272727272727273) internal successors, (76), 72 states have internal predecessors, (76), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:44:42,834 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 79 states to 79 states and 84 transitions. [2022-02-20 23:44:42,834 INFO L78 Accepts]: Start accepts. Automaton has 79 states and 84 transitions. Word has length 7 [2022-02-20 23:44:42,834 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:42,835 INFO L470 AbstractCegarLoop]: Abstraction has 79 states and 84 transitions. [2022-02-20 23:44:42,835 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 1.5) internal successors, (6), 4 states have internal predecessors, (6), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:42,835 INFO L276 IsEmpty]: Start isEmpty. Operand 79 states and 84 transitions. [2022-02-20 23:44:42,835 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 8 [2022-02-20 23:44:42,836 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:42,836 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:42,853 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (3)] Forceful destruction successful, exit code 0 [2022-02-20 23:44:43,044 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:44:43,045 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting create_sub_listErr1REQUIRES_VIOLATION === [create_sub_listErr0REQUIRES_VIOLATION, create_sub_listErr1REQUIRES_VIOLATION, create_sub_listErr2REQUIRES_VIOLATION, create_sub_listErr3REQUIRES_VIOLATION (and 27 more)] === [2022-02-20 23:44:43,045 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:43,046 INFO L85 PathProgramCache]: Analyzing trace with hash 2005144648, now seen corresponding path program 1 times [2022-02-20 23:44:43,046 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:43,046 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [791336688] [2022-02-20 23:44:43,046 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:43,046 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:43,047 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:43,048 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:44:43,050 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:44:43,096 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:43,098 INFO L263 TraceCheckSpWp]: Trace formula consists of 58 conjuncts, 10 conjunts are in the unsatisfiable core [2022-02-20 23:44:43,112 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:43,113 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:43,137 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:44:43,207 INFO L290 TraceCheckUtils]: 0: Hoare triple {858#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); {858#true} is VALID [2022-02-20 23:44:43,208 INFO L290 TraceCheckUtils]: 1: Hoare triple {858#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_~#top~1#1.base, main_~#top~1#1.offset;call main_~#top~1#1.base, main_~#top~1#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, main_~#top~1#1.offset, 4bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, ~bvadd32(4bv32, main_~#top~1#1.offset), 4bv32);assume { :begin_inline_create_top } true;create_top_#in~top#1.base, create_top_#in~top#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc create_top_#t~nondet11#1, create_top_~top#1.base, create_top_~top#1.offset;create_top_~top#1.base, create_top_~top#1.offset := create_top_#in~top#1.base, create_top_#in~top#1.offset; {858#true} is VALID [2022-02-20 23:44:43,209 INFO L290 TraceCheckUtils]: 2: Hoare triple {858#true} assume { :begin_inline_insert_top } true;insert_top_#in~head#1.base, insert_top_#in~head#1.offset := create_top_~top#1.base, create_top_~top#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset, insert_top_~head#1.base, insert_top_~head#1.offset, insert_top_~top~0#1.base, insert_top_~top~0#1.offset;insert_top_~head#1.base, insert_top_~head#1.offset := insert_top_#in~head#1.base, insert_top_#in~head#1.offset;call insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset := #Ultimate.allocOnHeap(24bv32);insert_top_~top~0#1.base, insert_top_~top~0#1.offset := insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset; {869#(and (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:44:43,210 INFO L290 TraceCheckUtils]: 3: Hoare triple {869#(and (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} assume !(insert_top_~top~0#1.base == 0bv32 && insert_top_~top~0#1.offset == 0bv32); {869#(and (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:44:43,211 INFO L272 TraceCheckUtils]: 4: Hoare triple {869#(and (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(8bv32, insert_top_~top~0#1.offset)); {876#(and (= (select |#length| |create_sub_list_#in~sub#1.base|) (_ bv24 32)) (= |create_sub_list_#in~sub#1.offset| (_ bv8 32)))} is VALID [2022-02-20 23:44:43,211 INFO L290 TraceCheckUtils]: 5: Hoare triple {876#(and (= (select |#length| |create_sub_list_#in~sub#1.base|) (_ bv24 32)) (= |create_sub_list_#in~sub#1.offset| (_ bv8 32)))} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {880#(and (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (_ bv8 32) |create_sub_list_~sub#1.offset|))} is VALID [2022-02-20 23:44:43,212 INFO L290 TraceCheckUtils]: 6: Hoare triple {880#(and (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (_ bv8 32) |create_sub_list_~sub#1.offset|))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(4bv32, ~sub#1.offset)), #length[~sub#1.base]) && ~bvule32(~bvadd32(4bv32, ~sub#1.offset), ~bvadd32(4bv32, ~bvadd32(4bv32, ~sub#1.offset)))) && ~bvule32(0bv32, ~bvadd32(4bv32, ~sub#1.offset))); {859#false} is VALID [2022-02-20 23:44:43,212 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:44:43,212 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:43,213 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:43,213 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [791336688] [2022-02-20 23:44:43,213 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [791336688] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:43,213 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:43,213 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:44:43,213 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [153352935] [2022-02-20 23:44:43,214 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:43,214 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 1.5) internal successors, (6), 4 states have internal predecessors, (6), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 7 [2022-02-20 23:44:43,214 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:43,214 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 1.5) internal successors, (6), 4 states have internal predecessors, (6), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:43,230 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 7 edges. 7 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:43,230 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:44:43,233 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:43,233 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:44:43,234 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:44:43,234 INFO L87 Difference]: Start difference. First operand 79 states and 84 transitions. Second operand has 5 states, 4 states have (on average 1.5) internal successors, (6), 4 states have internal predecessors, (6), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:43,911 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:43,912 INFO L93 Difference]: Finished difference Result 83 states and 88 transitions. [2022-02-20 23:44:43,912 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:44:43,912 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 1.5) internal successors, (6), 4 states have internal predecessors, (6), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 7 [2022-02-20 23:44:43,912 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:43,913 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 1.5) internal successors, (6), 4 states have internal predecessors, (6), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:43,915 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 90 transitions. [2022-02-20 23:44:43,915 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 1.5) internal successors, (6), 4 states have internal predecessors, (6), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:43,917 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 90 transitions. [2022-02-20 23:44:43,917 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 90 transitions. [2022-02-20 23:44:44,017 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 90 edges. 90 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:44,019 INFO L225 Difference]: With dead ends: 83 [2022-02-20 23:44:44,019 INFO L226 Difference]: Without dead ends: 83 [2022-02-20 23:44:44,019 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:44:44,020 INFO L933 BasicCegarLoop]: 79 mSDtfsCounter, 5 mSDsluCounter, 157 mSDsCounter, 0 mSdLazyCounter, 97 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 5 SdHoareTripleChecker+Valid, 236 SdHoareTripleChecker+Invalid, 98 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 97 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:44,020 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [5 Valid, 236 Invalid, 98 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 97 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:44:44,021 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 83 states. [2022-02-20 23:44:44,025 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 83 to 82. [2022-02-20 23:44:44,025 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:44,025 INFO L82 GeneralOperation]: Start isEquivalent. First operand 83 states. Second operand has 82 states, 47 states have (on average 1.6808510638297873) internal successors, (79), 74 states have internal predecessors, (79), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:44:44,026 INFO L74 IsIncluded]: Start isIncluded. First operand 83 states. Second operand has 82 states, 47 states have (on average 1.6808510638297873) internal successors, (79), 74 states have internal predecessors, (79), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:44:44,026 INFO L87 Difference]: Start difference. First operand 83 states. Second operand has 82 states, 47 states have (on average 1.6808510638297873) internal successors, (79), 74 states have internal predecessors, (79), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:44:44,029 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:44,029 INFO L93 Difference]: Finished difference Result 83 states and 88 transitions. [2022-02-20 23:44:44,029 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 88 transitions. [2022-02-20 23:44:44,030 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:44,030 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:44,031 INFO L74 IsIncluded]: Start isIncluded. First operand has 82 states, 47 states have (on average 1.6808510638297873) internal successors, (79), 74 states have internal predecessors, (79), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 83 states. [2022-02-20 23:44:44,031 INFO L87 Difference]: Start difference. First operand has 82 states, 47 states have (on average 1.6808510638297873) internal successors, (79), 74 states have internal predecessors, (79), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 83 states. [2022-02-20 23:44:44,034 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:44,034 INFO L93 Difference]: Finished difference Result 83 states and 88 transitions. [2022-02-20 23:44:44,035 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 88 transitions. [2022-02-20 23:44:44,035 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:44,036 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:44,036 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:44,036 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:44,036 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 82 states, 47 states have (on average 1.6808510638297873) internal successors, (79), 74 states have internal predecessors, (79), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:44:44,039 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 82 states to 82 states and 87 transitions. [2022-02-20 23:44:44,039 INFO L78 Accepts]: Start accepts. Automaton has 82 states and 87 transitions. Word has length 7 [2022-02-20 23:44:44,040 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:44,040 INFO L470 AbstractCegarLoop]: Abstraction has 82 states and 87 transitions. [2022-02-20 23:44:44,040 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 1.5) internal successors, (6), 4 states have internal predecessors, (6), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:44,040 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 87 transitions. [2022-02-20 23:44:44,040 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2022-02-20 23:44:44,041 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:44,041 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:44,049 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (4)] Ended with exit code 0 [2022-02-20 23:44:44,249 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:44:44,249 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting create_sub_listErr4REQUIRES_VIOLATION === [create_sub_listErr0REQUIRES_VIOLATION, create_sub_listErr1REQUIRES_VIOLATION, create_sub_listErr2REQUIRES_VIOLATION, create_sub_listErr3REQUIRES_VIOLATION (and 27 more)] === [2022-02-20 23:44:44,250 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:44,250 INFO L85 PathProgramCache]: Analyzing trace with hash 859208239, now seen corresponding path program 1 times [2022-02-20 23:44:44,250 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:44,250 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1444361423] [2022-02-20 23:44:44,250 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:44,251 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:44,251 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:44,251 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:44:44,252 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:44:44,319 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:44,321 INFO L263 TraceCheckSpWp]: Trace formula consists of 97 conjuncts, 3 conjunts are in the unsatisfiable core [2022-02-20 23:44:44,329 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:44,330 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:44,358 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:44:44,366 INFO L290 TraceCheckUtils]: 0: Hoare triple {1216#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); {1216#true} is VALID [2022-02-20 23:44:44,366 INFO L290 TraceCheckUtils]: 1: Hoare triple {1216#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_~#top~1#1.base, main_~#top~1#1.offset;call main_~#top~1#1.base, main_~#top~1#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, main_~#top~1#1.offset, 4bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, ~bvadd32(4bv32, main_~#top~1#1.offset), 4bv32);assume { :begin_inline_create_top } true;create_top_#in~top#1.base, create_top_#in~top#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc create_top_#t~nondet11#1, create_top_~top#1.base, create_top_~top#1.offset;create_top_~top#1.base, create_top_~top#1.offset := create_top_#in~top#1.base, create_top_#in~top#1.offset; {1216#true} is VALID [2022-02-20 23:44:44,366 INFO L290 TraceCheckUtils]: 2: Hoare triple {1216#true} assume { :begin_inline_insert_top } true;insert_top_#in~head#1.base, insert_top_#in~head#1.offset := create_top_~top#1.base, create_top_~top#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset, insert_top_~head#1.base, insert_top_~head#1.offset, insert_top_~top~0#1.base, insert_top_~top~0#1.offset;insert_top_~head#1.base, insert_top_~head#1.offset := insert_top_#in~head#1.base, insert_top_#in~head#1.offset;call insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset := #Ultimate.allocOnHeap(24bv32);insert_top_~top~0#1.base, insert_top_~top~0#1.offset := insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset; {1216#true} is VALID [2022-02-20 23:44:44,367 INFO L290 TraceCheckUtils]: 3: Hoare triple {1216#true} assume !(insert_top_~top~0#1.base == 0bv32 && insert_top_~top~0#1.offset == 0bv32); {1216#true} is VALID [2022-02-20 23:44:44,367 INFO L272 TraceCheckUtils]: 4: Hoare triple {1216#true} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(8bv32, insert_top_~top~0#1.offset)); {1216#true} is VALID [2022-02-20 23:44:44,367 INFO L290 TraceCheckUtils]: 5: Hoare triple {1216#true} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {1216#true} is VALID [2022-02-20 23:44:44,367 INFO L290 TraceCheckUtils]: 6: Hoare triple {1216#true} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~bvadd32(4bv32, ~sub#1.offset), 4bv32); srcloc: L578 {1216#true} is VALID [2022-02-20 23:44:44,367 INFO L290 TraceCheckUtils]: 7: Hoare triple {1216#true} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~sub#1.offset, 4bv32); srcloc: L578-1 {1216#true} is VALID [2022-02-20 23:44:44,369 INFO L290 TraceCheckUtils]: 8: Hoare triple {1216#true} assume { :begin_inline_insert_sub } true;insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset := ~sub#1.base, ~sub#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset, insert_sub_~head#1.base, insert_sub_~head#1.offset, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset;insert_sub_~head#1.base, insert_sub_~head#1.offset := insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset;call insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32);insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset := insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset; {1245#(= (select |#valid| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:44,369 INFO L290 TraceCheckUtils]: 9: Hoare triple {1245#(= (select |#valid| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv1 1))} assume !(insert_sub_~sub~0#1.base == 0bv32 && insert_sub_~sub~0#1.offset == 0bv32); {1245#(= (select |#valid| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:44,370 INFO L290 TraceCheckUtils]: 10: Hoare triple {1245#(= (select |#valid| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[insert_sub_~sub~0#1.base]); {1217#false} is VALID [2022-02-20 23:44:44,370 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:44:44,370 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:44,370 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:44,371 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1444361423] [2022-02-20 23:44:44,371 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1444361423] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:44,371 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:44,371 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:44:44,371 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [552118458] [2022-02-20 23:44:44,371 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:44,372 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 5.0) internal successors, (10), 3 states have internal predecessors, (10), 1 states have call successors, (1), 1 states have call predecessors, (1), 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:44:44,372 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:44,372 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 5.0) internal successors, (10), 3 states have internal predecessors, (10), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:44,397 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:44:44,397 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:44:44,397 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:44,398 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:44:44,399 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:44:44,399 INFO L87 Difference]: Start difference. First operand 82 states and 87 transitions. Second operand has 3 states, 2 states have (on average 5.0) internal successors, (10), 3 states have internal predecessors, (10), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:44,622 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:44,622 INFO L93 Difference]: Finished difference Result 82 states and 87 transitions. [2022-02-20 23:44:44,622 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:44:44,623 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 5.0) internal successors, (10), 3 states have internal predecessors, (10), 1 states have call successors, (1), 1 states have call predecessors, (1), 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:44:44,623 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:44,623 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 5.0) internal successors, (10), 3 states have internal predecessors, (10), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:44,625 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 85 transitions. [2022-02-20 23:44:44,625 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 5.0) internal successors, (10), 3 states have internal predecessors, (10), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:44,627 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 85 transitions. [2022-02-20 23:44:44,627 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 85 transitions. [2022-02-20 23:44:44,726 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 85 edges. 85 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:44,728 INFO L225 Difference]: With dead ends: 82 [2022-02-20 23:44:44,728 INFO L226 Difference]: Without dead ends: 82 [2022-02-20 23:44:44,729 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 9 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:44:44,729 INFO L933 BasicCegarLoop]: 80 mSDtfsCounter, 6 mSDsluCounter, 42 mSDsCounter, 0 mSdLazyCounter, 36 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 7 SdHoareTripleChecker+Valid, 122 SdHoareTripleChecker+Invalid, 36 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 36 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:44,730 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [7 Valid, 122 Invalid, 36 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 36 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:44:44,730 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 82 states. [2022-02-20 23:44:44,733 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 82 to 81. [2022-02-20 23:44:44,733 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:44,734 INFO L82 GeneralOperation]: Start isEquivalent. First operand 82 states. Second operand has 81 states, 47 states have (on average 1.6595744680851063) internal successors, (78), 73 states have internal predecessors, (78), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:44:44,734 INFO L74 IsIncluded]: Start isIncluded. First operand 82 states. Second operand has 81 states, 47 states have (on average 1.6595744680851063) internal successors, (78), 73 states have internal predecessors, (78), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:44:44,734 INFO L87 Difference]: Start difference. First operand 82 states. Second operand has 81 states, 47 states have (on average 1.6595744680851063) internal successors, (78), 73 states have internal predecessors, (78), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:44:44,738 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:44,738 INFO L93 Difference]: Finished difference Result 82 states and 87 transitions. [2022-02-20 23:44:44,738 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 87 transitions. [2022-02-20 23:44:44,739 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:44,739 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:44,739 INFO L74 IsIncluded]: Start isIncluded. First operand has 81 states, 47 states have (on average 1.6595744680851063) internal successors, (78), 73 states have internal predecessors, (78), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 82 states. [2022-02-20 23:44:44,740 INFO L87 Difference]: Start difference. First operand has 81 states, 47 states have (on average 1.6595744680851063) internal successors, (78), 73 states have internal predecessors, (78), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 82 states. [2022-02-20 23:44:44,743 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:44,743 INFO L93 Difference]: Finished difference Result 82 states and 87 transitions. [2022-02-20 23:44:44,743 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 87 transitions. [2022-02-20 23:44:44,744 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:44,744 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:44,744 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:44,744 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:44,745 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 81 states, 47 states have (on average 1.6595744680851063) internal successors, (78), 73 states have internal predecessors, (78), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:44:44,748 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 81 states to 81 states and 86 transitions. [2022-02-20 23:44:44,748 INFO L78 Accepts]: Start accepts. Automaton has 81 states and 86 transitions. Word has length 11 [2022-02-20 23:44:44,748 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:44,748 INFO L470 AbstractCegarLoop]: Abstraction has 81 states and 86 transitions. [2022-02-20 23:44:44,749 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 5.0) internal successors, (10), 3 states have internal predecessors, (10), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:44,749 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 86 transitions. [2022-02-20 23:44:44,749 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2022-02-20 23:44:44,749 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:44,749 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:44,759 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:44:44,958 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:44:44,958 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting create_sub_listErr5REQUIRES_VIOLATION === [create_sub_listErr0REQUIRES_VIOLATION, create_sub_listErr1REQUIRES_VIOLATION, create_sub_listErr2REQUIRES_VIOLATION, create_sub_listErr3REQUIRES_VIOLATION (and 27 more)] === [2022-02-20 23:44:44,958 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:44,958 INFO L85 PathProgramCache]: Analyzing trace with hash 859208240, now seen corresponding path program 1 times [2022-02-20 23:44:44,959 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:44,959 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1693927389] [2022-02-20 23:44:44,959 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:44,959 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:44,959 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:44,960 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:44:44,961 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:44:45,021 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:45,024 INFO L263 TraceCheckSpWp]: Trace formula consists of 97 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 23:44:45,032 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:45,032 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:45,069 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:44:45,095 INFO L290 TraceCheckUtils]: 0: Hoare triple {1578#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); {1578#true} is VALID [2022-02-20 23:44:45,095 INFO L290 TraceCheckUtils]: 1: Hoare triple {1578#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_~#top~1#1.base, main_~#top~1#1.offset;call main_~#top~1#1.base, main_~#top~1#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, main_~#top~1#1.offset, 4bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, ~bvadd32(4bv32, main_~#top~1#1.offset), 4bv32);assume { :begin_inline_create_top } true;create_top_#in~top#1.base, create_top_#in~top#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc create_top_#t~nondet11#1, create_top_~top#1.base, create_top_~top#1.offset;create_top_~top#1.base, create_top_~top#1.offset := create_top_#in~top#1.base, create_top_#in~top#1.offset; {1578#true} is VALID [2022-02-20 23:44:45,095 INFO L290 TraceCheckUtils]: 2: Hoare triple {1578#true} assume { :begin_inline_insert_top } true;insert_top_#in~head#1.base, insert_top_#in~head#1.offset := create_top_~top#1.base, create_top_~top#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset, insert_top_~head#1.base, insert_top_~head#1.offset, insert_top_~top~0#1.base, insert_top_~top~0#1.offset;insert_top_~head#1.base, insert_top_~head#1.offset := insert_top_#in~head#1.base, insert_top_#in~head#1.offset;call insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset := #Ultimate.allocOnHeap(24bv32);insert_top_~top~0#1.base, insert_top_~top~0#1.offset := insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset; {1578#true} is VALID [2022-02-20 23:44:45,095 INFO L290 TraceCheckUtils]: 3: Hoare triple {1578#true} assume !(insert_top_~top~0#1.base == 0bv32 && insert_top_~top~0#1.offset == 0bv32); {1578#true} is VALID [2022-02-20 23:44:45,095 INFO L272 TraceCheckUtils]: 4: Hoare triple {1578#true} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(8bv32, insert_top_~top~0#1.offset)); {1578#true} is VALID [2022-02-20 23:44:45,096 INFO L290 TraceCheckUtils]: 5: Hoare triple {1578#true} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {1578#true} is VALID [2022-02-20 23:44:45,096 INFO L290 TraceCheckUtils]: 6: Hoare triple {1578#true} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~bvadd32(4bv32, ~sub#1.offset), 4bv32); srcloc: L578 {1578#true} is VALID [2022-02-20 23:44:45,096 INFO L290 TraceCheckUtils]: 7: Hoare triple {1578#true} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~sub#1.offset, 4bv32); srcloc: L578-1 {1578#true} is VALID [2022-02-20 23:44:45,097 INFO L290 TraceCheckUtils]: 8: Hoare triple {1578#true} assume { :begin_inline_insert_sub } true;insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset := ~sub#1.base, ~sub#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset, insert_sub_~head#1.base, insert_sub_~head#1.offset, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset;insert_sub_~head#1.base, insert_sub_~head#1.offset := insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset;call insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32);insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset := insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset; {1607#(and (= (select |#length| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv12 32)) (= |create_sub_list_insert_sub_~sub~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:44:45,098 INFO L290 TraceCheckUtils]: 9: Hoare triple {1607#(and (= (select |#length| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv12 32)) (= |create_sub_list_insert_sub_~sub~0#1.offset| (_ bv0 32)))} assume !(insert_sub_~sub~0#1.base == 0bv32 && insert_sub_~sub~0#1.offset == 0bv32); {1607#(and (= (select |#length| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv12 32)) (= |create_sub_list_insert_sub_~sub~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:44:45,099 INFO L290 TraceCheckUtils]: 10: Hoare triple {1607#(and (= (select |#length| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv12 32)) (= |create_sub_list_insert_sub_~sub~0#1.offset| (_ bv0 32)))} assume !((~bvule32(~bvadd32(4bv32, insert_sub_~sub~0#1.offset), #length[insert_sub_~sub~0#1.base]) && ~bvule32(insert_sub_~sub~0#1.offset, ~bvadd32(4bv32, insert_sub_~sub~0#1.offset))) && ~bvule32(0bv32, insert_sub_~sub~0#1.offset)); {1579#false} is VALID [2022-02-20 23:44:45,099 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:44:45,099 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:45,099 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:45,099 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1693927389] [2022-02-20 23:44:45,100 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1693927389] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:45,100 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:45,100 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:44:45,100 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1677334139] [2022-02-20 23:44:45,100 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:45,101 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 5.0) internal successors, (10), 3 states have internal predecessors, (10), 1 states have call successors, (1), 1 states have call predecessors, (1), 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:44:45,101 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:45,101 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 5.0) internal successors, (10), 3 states have internal predecessors, (10), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:45,115 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:44:45,115 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:44:45,115 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:45,115 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:44:45,115 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:44:45,116 INFO L87 Difference]: Start difference. First operand 81 states and 86 transitions. Second operand has 3 states, 2 states have (on average 5.0) internal successors, (10), 3 states have internal predecessors, (10), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:45,359 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:45,359 INFO L93 Difference]: Finished difference Result 81 states and 86 transitions. [2022-02-20 23:44:45,360 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:44:45,360 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 5.0) internal successors, (10), 3 states have internal predecessors, (10), 1 states have call successors, (1), 1 states have call predecessors, (1), 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:44:45,360 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:45,360 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 5.0) internal successors, (10), 3 states have internal predecessors, (10), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:45,362 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 84 transitions. [2022-02-20 23:44:45,362 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 5.0) internal successors, (10), 3 states have internal predecessors, (10), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:45,364 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 84 transitions. [2022-02-20 23:44:45,364 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 84 transitions. [2022-02-20 23:44:45,450 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 84 edges. 84 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:45,452 INFO L225 Difference]: With dead ends: 81 [2022-02-20 23:44:45,452 INFO L226 Difference]: Without dead ends: 81 [2022-02-20 23:44:45,453 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 9 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:44:45,456 INFO L933 BasicCegarLoop]: 80 mSDtfsCounter, 5 mSDsluCounter, 46 mSDsCounter, 0 mSdLazyCounter, 31 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 126 SdHoareTripleChecker+Invalid, 31 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 31 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:45,456 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [6 Valid, 126 Invalid, 31 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 31 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:44:45,457 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 81 states. [2022-02-20 23:44:45,468 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 81 to 80. [2022-02-20 23:44:45,470 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:45,470 INFO L82 GeneralOperation]: Start isEquivalent. First operand 81 states. Second operand has 80 states, 47 states have (on average 1.6382978723404256) internal successors, (77), 72 states have internal predecessors, (77), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:44:45,471 INFO L74 IsIncluded]: Start isIncluded. First operand 81 states. Second operand has 80 states, 47 states have (on average 1.6382978723404256) internal successors, (77), 72 states have internal predecessors, (77), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:44:45,471 INFO L87 Difference]: Start difference. First operand 81 states. Second operand has 80 states, 47 states have (on average 1.6382978723404256) internal successors, (77), 72 states have internal predecessors, (77), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:44:45,473 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:45,474 INFO L93 Difference]: Finished difference Result 81 states and 86 transitions. [2022-02-20 23:44:45,474 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 86 transitions. [2022-02-20 23:44:45,475 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:45,475 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:45,476 INFO L74 IsIncluded]: Start isIncluded. First operand has 80 states, 47 states have (on average 1.6382978723404256) internal successors, (77), 72 states have internal predecessors, (77), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 81 states. [2022-02-20 23:44:45,476 INFO L87 Difference]: Start difference. First operand has 80 states, 47 states have (on average 1.6382978723404256) internal successors, (77), 72 states have internal predecessors, (77), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 81 states. [2022-02-20 23:44:45,483 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:45,483 INFO L93 Difference]: Finished difference Result 81 states and 86 transitions. [2022-02-20 23:44:45,483 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 86 transitions. [2022-02-20 23:44:45,484 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:45,484 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:45,485 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:45,485 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:45,485 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 80 states, 47 states have (on average 1.6382978723404256) internal successors, (77), 72 states have internal predecessors, (77), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:44:45,489 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 80 states to 80 states and 85 transitions. [2022-02-20 23:44:45,491 INFO L78 Accepts]: Start accepts. Automaton has 80 states and 85 transitions. Word has length 11 [2022-02-20 23:44:45,491 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:45,493 INFO L470 AbstractCegarLoop]: Abstraction has 80 states and 85 transitions. [2022-02-20 23:44:45,493 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 5.0) internal successors, (10), 3 states have internal predecessors, (10), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:45,493 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 85 transitions. [2022-02-20 23:44:45,493 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 15 [2022-02-20 23:44:45,493 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:45,493 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:45,501 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:44:45,695 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:44:45,695 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting list_add_tailErr0REQUIRES_VIOLATION === [create_sub_listErr0REQUIRES_VIOLATION, create_sub_listErr1REQUIRES_VIOLATION, create_sub_listErr2REQUIRES_VIOLATION, create_sub_listErr3REQUIRES_VIOLATION (and 27 more)] === [2022-02-20 23:44:45,696 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:45,696 INFO L85 PathProgramCache]: Analyzing trace with hash -1332328513, now seen corresponding path program 1 times [2022-02-20 23:44:45,696 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:45,696 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [566648013] [2022-02-20 23:44:45,696 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:45,696 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:45,697 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:45,698 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:44:45,704 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:44:45,805 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:45,809 INFO L263 TraceCheckSpWp]: Trace formula consists of 133 conjuncts, 13 conjunts are in the unsatisfiable core [2022-02-20 23:44:45,820 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:45,821 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:45,833 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:44:45,927 INFO L356 Elim1Store]: treesize reduction 12, result has 40.0 percent of original size [2022-02-20 23:44:45,928 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:44:45,993 INFO L290 TraceCheckUtils]: 0: Hoare triple {1936#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); {1936#true} is VALID [2022-02-20 23:44:45,994 INFO L290 TraceCheckUtils]: 1: Hoare triple {1936#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_~#top~1#1.base, main_~#top~1#1.offset;call main_~#top~1#1.base, main_~#top~1#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, main_~#top~1#1.offset, 4bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, ~bvadd32(4bv32, main_~#top~1#1.offset), 4bv32);assume { :begin_inline_create_top } true;create_top_#in~top#1.base, create_top_#in~top#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc create_top_#t~nondet11#1, create_top_~top#1.base, create_top_~top#1.offset;create_top_~top#1.base, create_top_~top#1.offset := create_top_#in~top#1.base, create_top_#in~top#1.offset; {1936#true} is VALID [2022-02-20 23:44:45,995 INFO L290 TraceCheckUtils]: 2: Hoare triple {1936#true} assume { :begin_inline_insert_top } true;insert_top_#in~head#1.base, insert_top_#in~head#1.offset := create_top_~top#1.base, create_top_~top#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset, insert_top_~head#1.base, insert_top_~head#1.offset, insert_top_~top~0#1.base, insert_top_~top~0#1.offset;insert_top_~head#1.base, insert_top_~head#1.offset := insert_top_#in~head#1.base, insert_top_#in~head#1.offset;call insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset := #Ultimate.allocOnHeap(24bv32);insert_top_~top~0#1.base, insert_top_~top~0#1.offset := insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset; {1947#(= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:45,996 INFO L290 TraceCheckUtils]: 3: Hoare triple {1947#(= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1))} assume !(insert_top_~top~0#1.base == 0bv32 && insert_top_~top~0#1.offset == 0bv32); {1947#(= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:45,997 INFO L272 TraceCheckUtils]: 4: Hoare triple {1947#(= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1))} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(8bv32, insert_top_~top~0#1.offset)); {1954#(= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|))} is VALID [2022-02-20 23:44:45,997 INFO L290 TraceCheckUtils]: 5: Hoare triple {1954#(= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|))} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {1958#(= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:45,998 INFO L290 TraceCheckUtils]: 6: Hoare triple {1958#(= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~bvadd32(4bv32, ~sub#1.offset), 4bv32); srcloc: L578 {1958#(= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:46,000 INFO L290 TraceCheckUtils]: 7: Hoare triple {1958#(= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~sub#1.offset, 4bv32); srcloc: L578-1 {1958#(= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:46,002 INFO L290 TraceCheckUtils]: 8: Hoare triple {1958#(= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1))} assume { :begin_inline_insert_sub } true;insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset := ~sub#1.base, ~sub#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset, insert_sub_~head#1.base, insert_sub_~head#1.offset, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset;insert_sub_~head#1.base, insert_sub_~head#1.offset := insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset;call insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32);insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset := insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset; {1968#(= (_ bv0 1) (bvadd (select |#valid| |create_sub_list_insert_sub_~head#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:44:46,007 INFO L290 TraceCheckUtils]: 9: Hoare triple {1968#(= (_ bv0 1) (bvadd (select |#valid| |create_sub_list_insert_sub_~head#1.base|) (_ bv1 1)))} assume !(insert_sub_~sub~0#1.base == 0bv32 && insert_sub_~sub~0#1.offset == 0bv32); {1968#(= (_ bv0 1) (bvadd (select |#valid| |create_sub_list_insert_sub_~head#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:44:46,010 INFO L290 TraceCheckUtils]: 10: Hoare triple {1968#(= (_ bv0 1) (bvadd (select |#valid| |create_sub_list_insert_sub_~head#1.base|) (_ bv1 1)))} SUMMARY for call write~intINTTYPE4(0bv32, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset, 4bv32); srcloc: L571-2 {1968#(= (_ bv0 1) (bvadd (select |#valid| |create_sub_list_insert_sub_~head#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:44:46,011 INFO L272 TraceCheckUtils]: 11: Hoare triple {1968#(= (_ bv0 1) (bvadd (select |#valid| |create_sub_list_insert_sub_~head#1.base|) (_ bv1 1)))} call list_add_tail(insert_sub_~sub~0#1.base, ~bvadd32(4bv32, insert_sub_~sub~0#1.offset), insert_sub_~head#1.base, insert_sub_~head#1.offset); {1978#(= (_ bv0 1) (bvadd (select |#valid| |list_add_tail_#in~head#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:44:46,012 INFO L290 TraceCheckUtils]: 12: Hoare triple {1978#(= (_ bv0 1) (bvadd (select |#valid| |list_add_tail_#in~head#1.base|) (_ bv1 1)))} ~new#1.base, ~new#1.offset := #in~new#1.base, #in~new#1.offset;~head#1.base, ~head#1.offset := #in~head#1.base, #in~head#1.offset; {1982#(= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| |list_add_tail_~head#1.base|)))} is VALID [2022-02-20 23:44:46,013 INFO L290 TraceCheckUtils]: 13: Hoare triple {1982#(= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| |list_add_tail_~head#1.base|)))} assume !(1bv1 == #valid[~head#1.base]); {1937#false} is VALID [2022-02-20 23:44:46,013 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:44:46,013 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:46,014 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:46,014 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [566648013] [2022-02-20 23:44:46,014 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [566648013] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:46,014 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:46,014 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-20 23:44:46,014 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1872919779] [2022-02-20 23:44:46,015 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:46,016 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 14 [2022-02-20 23:44:46,017 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:46,017 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:46,035 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 14 edges. 14 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:46,035 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 23:44:46,036 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:46,036 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 23:44:46,036 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:44:46,036 INFO L87 Difference]: Start difference. First operand 80 states and 85 transitions. Second operand has 8 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:47,219 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:47,220 INFO L93 Difference]: Finished difference Result 129 states and 135 transitions. [2022-02-20 23:44:47,220 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 23:44:47,220 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 14 [2022-02-20 23:44:47,220 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:47,220 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:47,223 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 133 transitions. [2022-02-20 23:44:47,223 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:47,225 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 133 transitions. [2022-02-20 23:44:47,225 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 133 transitions. [2022-02-20 23:44:47,383 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 133 edges. 133 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:47,385 INFO L225 Difference]: With dead ends: 129 [2022-02-20 23:44:47,386 INFO L226 Difference]: Without dead ends: 129 [2022-02-20 23:44:47,386 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 16 GetRequests, 7 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=27, Invalid=83, Unknown=0, NotChecked=0, Total=110 [2022-02-20 23:44:47,386 INFO L933 BasicCegarLoop]: 45 mSDtfsCounter, 108 mSDsluCounter, 190 mSDsCounter, 0 mSdLazyCounter, 283 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 109 SdHoareTripleChecker+Valid, 235 SdHoareTripleChecker+Invalid, 292 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 283 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:47,387 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [109 Valid, 235 Invalid, 292 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 283 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-02-20 23:44:47,388 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 129 states. [2022-02-20 23:44:47,390 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 129 to 90. [2022-02-20 23:44:47,391 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:47,391 INFO L82 GeneralOperation]: Start isEquivalent. First operand 129 states. Second operand has 90 states, 56 states have (on average 1.6964285714285714) internal successors, (95), 81 states have internal predecessors, (95), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:44:47,391 INFO L74 IsIncluded]: Start isIncluded. First operand 129 states. Second operand has 90 states, 56 states have (on average 1.6964285714285714) internal successors, (95), 81 states have internal predecessors, (95), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:44:47,392 INFO L87 Difference]: Start difference. First operand 129 states. Second operand has 90 states, 56 states have (on average 1.6964285714285714) internal successors, (95), 81 states have internal predecessors, (95), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:44:47,395 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:47,395 INFO L93 Difference]: Finished difference Result 129 states and 135 transitions. [2022-02-20 23:44:47,395 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 135 transitions. [2022-02-20 23:44:47,395 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:47,395 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:47,396 INFO L74 IsIncluded]: Start isIncluded. First operand has 90 states, 56 states have (on average 1.6964285714285714) internal successors, (95), 81 states have internal predecessors, (95), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 129 states. [2022-02-20 23:44:47,396 INFO L87 Difference]: Start difference. First operand has 90 states, 56 states have (on average 1.6964285714285714) internal successors, (95), 81 states have internal predecessors, (95), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 129 states. [2022-02-20 23:44:47,399 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:47,399 INFO L93 Difference]: Finished difference Result 129 states and 135 transitions. [2022-02-20 23:44:47,400 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 135 transitions. [2022-02-20 23:44:47,400 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:47,400 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:47,400 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:47,400 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:47,401 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 90 states, 56 states have (on average 1.6964285714285714) internal successors, (95), 81 states have internal predecessors, (95), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:44:47,403 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 90 states to 90 states and 103 transitions. [2022-02-20 23:44:47,403 INFO L78 Accepts]: Start accepts. Automaton has 90 states and 103 transitions. Word has length 14 [2022-02-20 23:44:47,403 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:47,403 INFO L470 AbstractCegarLoop]: Abstraction has 90 states and 103 transitions. [2022-02-20 23:44:47,404 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:47,404 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 103 transitions. [2022-02-20 23:44:47,404 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 15 [2022-02-20 23:44:47,404 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:47,404 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:47,416 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:44:47,613 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:44:47,614 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting list_add_tailErr1REQUIRES_VIOLATION === [create_sub_listErr0REQUIRES_VIOLATION, create_sub_listErr1REQUIRES_VIOLATION, create_sub_listErr2REQUIRES_VIOLATION, create_sub_listErr3REQUIRES_VIOLATION (and 27 more)] === [2022-02-20 23:44:47,614 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:47,614 INFO L85 PathProgramCache]: Analyzing trace with hash -1332328512, now seen corresponding path program 1 times [2022-02-20 23:44:47,614 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:47,614 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1422098051] [2022-02-20 23:44:47,614 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:47,615 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:47,615 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:47,616 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:44:47,618 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:44:47,716 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:47,722 INFO L263 TraceCheckSpWp]: Trace formula consists of 133 conjuncts, 24 conjunts are in the unsatisfiable core [2022-02-20 23:44:47,736 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:47,737 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:47,761 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:44:47,767 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:44:47,948 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:44:47,949 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:44:47,963 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:44:47,963 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 12 treesize of output 12 [2022-02-20 23:44:48,054 INFO L290 TraceCheckUtils]: 0: Hoare triple {2468#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); {2468#true} is VALID [2022-02-20 23:44:48,055 INFO L290 TraceCheckUtils]: 1: Hoare triple {2468#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_~#top~1#1.base, main_~#top~1#1.offset;call main_~#top~1#1.base, main_~#top~1#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, main_~#top~1#1.offset, 4bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, ~bvadd32(4bv32, main_~#top~1#1.offset), 4bv32);assume { :begin_inline_create_top } true;create_top_#in~top#1.base, create_top_#in~top#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc create_top_#t~nondet11#1, create_top_~top#1.base, create_top_~top#1.offset;create_top_~top#1.base, create_top_~top#1.offset := create_top_#in~top#1.base, create_top_#in~top#1.offset; {2468#true} is VALID [2022-02-20 23:44:48,056 INFO L290 TraceCheckUtils]: 2: Hoare triple {2468#true} assume { :begin_inline_insert_top } true;insert_top_#in~head#1.base, insert_top_#in~head#1.offset := create_top_~top#1.base, create_top_~top#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset, insert_top_~head#1.base, insert_top_~head#1.offset, insert_top_~top~0#1.base, insert_top_~top~0#1.offset;insert_top_~head#1.base, insert_top_~head#1.offset := insert_top_#in~head#1.base, insert_top_#in~head#1.offset;call insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset := #Ultimate.allocOnHeap(24bv32);insert_top_~top~0#1.base, insert_top_~top~0#1.offset := insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset; {2479#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:44:48,056 INFO L290 TraceCheckUtils]: 3: Hoare triple {2479#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} assume !(insert_top_~top~0#1.base == 0bv32 && insert_top_~top~0#1.offset == 0bv32); {2479#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:44:48,057 INFO L272 TraceCheckUtils]: 4: Hoare triple {2479#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(8bv32, insert_top_~top~0#1.offset)); {2486#(and (= (select |#length| |create_sub_list_#in~sub#1.base|) (_ bv24 32)) (= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|)) (= |create_sub_list_#in~sub#1.offset| (_ bv8 32)))} is VALID [2022-02-20 23:44:48,058 INFO L290 TraceCheckUtils]: 5: Hoare triple {2486#(and (= (select |#length| |create_sub_list_#in~sub#1.base|) (_ bv24 32)) (= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|)) (= |create_sub_list_#in~sub#1.offset| (_ bv8 32)))} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {2490#(and (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (_ bv8 32) |create_sub_list_~sub#1.offset|) (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:44:48,059 INFO L290 TraceCheckUtils]: 6: Hoare triple {2490#(and (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (_ bv8 32) |create_sub_list_~sub#1.offset|) (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~bvadd32(4bv32, ~sub#1.offset), 4bv32); srcloc: L578 {2490#(and (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (_ bv8 32) |create_sub_list_~sub#1.offset|) (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:44:48,059 INFO L290 TraceCheckUtils]: 7: Hoare triple {2490#(and (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (_ bv8 32) |create_sub_list_~sub#1.offset|) (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~sub#1.offset, 4bv32); srcloc: L578-1 {2490#(and (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (_ bv8 32) |create_sub_list_~sub#1.offset|) (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:44:48,061 INFO L290 TraceCheckUtils]: 8: Hoare triple {2490#(and (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (_ bv8 32) |create_sub_list_~sub#1.offset|) (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)))} assume { :begin_inline_insert_sub } true;insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset := ~sub#1.base, ~sub#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset, insert_sub_~head#1.base, insert_sub_~head#1.offset, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset;insert_sub_~head#1.base, insert_sub_~head#1.offset := insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset;call insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32);insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset := insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset; {2500#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (= (select |#length| |create_sub_list_insert_sub_~head#1.base|) (_ bv24 32)))} is VALID [2022-02-20 23:44:48,061 INFO L290 TraceCheckUtils]: 9: Hoare triple {2500#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (= (select |#length| |create_sub_list_insert_sub_~head#1.base|) (_ bv24 32)))} assume !(insert_sub_~sub~0#1.base == 0bv32 && insert_sub_~sub~0#1.offset == 0bv32); {2500#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (= (select |#length| |create_sub_list_insert_sub_~head#1.base|) (_ bv24 32)))} is VALID [2022-02-20 23:44:48,062 INFO L290 TraceCheckUtils]: 10: Hoare triple {2500#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (= (select |#length| |create_sub_list_insert_sub_~head#1.base|) (_ bv24 32)))} SUMMARY for call write~intINTTYPE4(0bv32, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset, 4bv32); srcloc: L571-2 {2500#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (= (select |#length| |create_sub_list_insert_sub_~head#1.base|) (_ bv24 32)))} is VALID [2022-02-20 23:44:48,064 INFO L272 TraceCheckUtils]: 11: Hoare triple {2500#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (= (select |#length| |create_sub_list_insert_sub_~head#1.base|) (_ bv24 32)))} call list_add_tail(insert_sub_~sub~0#1.base, ~bvadd32(4bv32, insert_sub_~sub~0#1.offset), insert_sub_~head#1.base, insert_sub_~head#1.offset); {2510#(and (= (select |#length| |list_add_tail_#in~head#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail_#in~head#1.offset|))} is VALID [2022-02-20 23:44:48,064 INFO L290 TraceCheckUtils]: 12: Hoare triple {2510#(and (= (select |#length| |list_add_tail_#in~head#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail_#in~head#1.offset|))} ~new#1.base, ~new#1.offset := #in~new#1.base, #in~new#1.offset;~head#1.base, ~head#1.offset := #in~head#1.base, #in~head#1.offset; {2514#(and (= (select |#length| |list_add_tail_~head#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail_~head#1.offset|))} is VALID [2022-02-20 23:44:48,065 INFO L290 TraceCheckUtils]: 13: Hoare triple {2514#(and (= (select |#length| |list_add_tail_~head#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail_~head#1.offset|))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(4bv32, ~head#1.offset)), #length[~head#1.base]) && ~bvule32(~bvadd32(4bv32, ~head#1.offset), ~bvadd32(4bv32, ~bvadd32(4bv32, ~head#1.offset)))) && ~bvule32(0bv32, ~bvadd32(4bv32, ~head#1.offset))); {2469#false} is VALID [2022-02-20 23:44:48,065 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:44:48,065 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:48,065 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:48,066 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1422098051] [2022-02-20 23:44:48,066 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1422098051] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:48,066 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:48,066 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-20 23:44:48,066 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [927103298] [2022-02-20 23:44:48,066 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:48,067 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 14 [2022-02-20 23:44:48,067 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:48,067 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:48,089 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 14 edges. 14 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:48,090 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 23:44:48,090 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:48,090 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 23:44:48,090 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:44:48,091 INFO L87 Difference]: Start difference. First operand 90 states and 103 transitions. Second operand has 8 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:49,557 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:49,557 INFO L93 Difference]: Finished difference Result 117 states and 130 transitions. [2022-02-20 23:44:49,558 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-20 23:44:49,558 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 14 [2022-02-20 23:44:49,558 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:49,558 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:49,561 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 113 transitions. [2022-02-20 23:44:49,561 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:49,563 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 113 transitions. [2022-02-20 23:44:49,563 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 113 transitions. [2022-02-20 23:44:49,710 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 113 edges. 113 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:49,711 INFO L225 Difference]: With dead ends: 117 [2022-02-20 23:44:49,711 INFO L226 Difference]: Without dead ends: 117 [2022-02-20 23:44:49,712 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 16 GetRequests, 7 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=27, Invalid=83, Unknown=0, NotChecked=0, Total=110 [2022-02-20 23:44:49,712 INFO L933 BasicCegarLoop]: 64 mSDtfsCounter, 52 mSDsluCounter, 235 mSDsCounter, 0 mSdLazyCounter, 279 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 52 SdHoareTripleChecker+Valid, 299 SdHoareTripleChecker+Invalid, 285 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 279 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:49,713 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [52 Valid, 299 Invalid, 285 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 279 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-02-20 23:44:49,713 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 117 states. [2022-02-20 23:44:49,716 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 117 to 108. [2022-02-20 23:44:49,716 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:49,717 INFO L82 GeneralOperation]: Start isEquivalent. First operand 117 states. Second operand has 108 states, 71 states have (on average 1.676056338028169) internal successors, (119), 97 states have internal predecessors, (119), 5 states have call successors, (5), 5 states have call predecessors, (5), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 23:44:49,717 INFO L74 IsIncluded]: Start isIncluded. First operand 117 states. Second operand has 108 states, 71 states have (on average 1.676056338028169) internal successors, (119), 97 states have internal predecessors, (119), 5 states have call successors, (5), 5 states have call predecessors, (5), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 23:44:49,717 INFO L87 Difference]: Start difference. First operand 117 states. Second operand has 108 states, 71 states have (on average 1.676056338028169) internal successors, (119), 97 states have internal predecessors, (119), 5 states have call successors, (5), 5 states have call predecessors, (5), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 23:44:49,724 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:49,725 INFO L93 Difference]: Finished difference Result 117 states and 130 transitions. [2022-02-20 23:44:49,725 INFO L276 IsEmpty]: Start isEmpty. Operand 117 states and 130 transitions. [2022-02-20 23:44:49,725 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:49,725 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:49,726 INFO L74 IsIncluded]: Start isIncluded. First operand has 108 states, 71 states have (on average 1.676056338028169) internal successors, (119), 97 states have internal predecessors, (119), 5 states have call successors, (5), 5 states have call predecessors, (5), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 117 states. [2022-02-20 23:44:49,726 INFO L87 Difference]: Start difference. First operand has 108 states, 71 states have (on average 1.676056338028169) internal successors, (119), 97 states have internal predecessors, (119), 5 states have call successors, (5), 5 states have call predecessors, (5), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 117 states. [2022-02-20 23:44:49,729 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:49,729 INFO L93 Difference]: Finished difference Result 117 states and 130 transitions. [2022-02-20 23:44:49,729 INFO L276 IsEmpty]: Start isEmpty. Operand 117 states and 130 transitions. [2022-02-20 23:44:49,729 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:49,729 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:49,729 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:49,729 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:49,730 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 108 states, 71 states have (on average 1.676056338028169) internal successors, (119), 97 states have internal predecessors, (119), 5 states have call successors, (5), 5 states have call predecessors, (5), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 23:44:49,732 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 108 states to 108 states and 129 transitions. [2022-02-20 23:44:49,732 INFO L78 Accepts]: Start accepts. Automaton has 108 states and 129 transitions. Word has length 14 [2022-02-20 23:44:49,732 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:49,733 INFO L470 AbstractCegarLoop]: Abstraction has 108 states and 129 transitions. [2022-02-20 23:44:49,733 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:49,733 INFO L276 IsEmpty]: Start isEmpty. Operand 108 states and 129 transitions. [2022-02-20 23:44:49,733 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2022-02-20 23:44:49,733 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:49,733 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:49,743 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (8)] Forceful destruction successful, exit code 0 [2022-02-20 23:44:49,943 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:44:49,943 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting list_add_tailErr2REQUIRES_VIOLATION === [create_sub_listErr0REQUIRES_VIOLATION, create_sub_listErr1REQUIRES_VIOLATION, create_sub_listErr2REQUIRES_VIOLATION, create_sub_listErr3REQUIRES_VIOLATION (and 27 more)] === [2022-02-20 23:44:49,943 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:49,943 INFO L85 PathProgramCache]: Analyzing trace with hash -467443808, now seen corresponding path program 1 times [2022-02-20 23:44:49,944 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:49,944 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [681626085] [2022-02-20 23:44:49,944 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:49,944 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:49,944 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:49,945 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:44:49,946 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:44:50,029 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:50,034 INFO L263 TraceCheckSpWp]: Trace formula consists of 151 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 23:44:50,044 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:50,044 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:50,097 INFO L290 TraceCheckUtils]: 0: Hoare triple {2982#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); {2982#true} is VALID [2022-02-20 23:44:50,097 INFO L290 TraceCheckUtils]: 1: Hoare triple {2982#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_~#top~1#1.base, main_~#top~1#1.offset;call main_~#top~1#1.base, main_~#top~1#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, main_~#top~1#1.offset, 4bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, ~bvadd32(4bv32, main_~#top~1#1.offset), 4bv32);assume { :begin_inline_create_top } true;create_top_#in~top#1.base, create_top_#in~top#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc create_top_#t~nondet11#1, create_top_~top#1.base, create_top_~top#1.offset;create_top_~top#1.base, create_top_~top#1.offset := create_top_#in~top#1.base, create_top_#in~top#1.offset; {2982#true} is VALID [2022-02-20 23:44:50,097 INFO L290 TraceCheckUtils]: 2: Hoare triple {2982#true} assume { :begin_inline_insert_top } true;insert_top_#in~head#1.base, insert_top_#in~head#1.offset := create_top_~top#1.base, create_top_~top#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset, insert_top_~head#1.base, insert_top_~head#1.offset, insert_top_~top~0#1.base, insert_top_~top~0#1.offset;insert_top_~head#1.base, insert_top_~head#1.offset := insert_top_#in~head#1.base, insert_top_#in~head#1.offset;call insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset := #Ultimate.allocOnHeap(24bv32);insert_top_~top~0#1.base, insert_top_~top~0#1.offset := insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset; {2982#true} is VALID [2022-02-20 23:44:50,098 INFO L290 TraceCheckUtils]: 3: Hoare triple {2982#true} assume !(insert_top_~top~0#1.base == 0bv32 && insert_top_~top~0#1.offset == 0bv32); {2982#true} is VALID [2022-02-20 23:44:50,098 INFO L272 TraceCheckUtils]: 4: Hoare triple {2982#true} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(8bv32, insert_top_~top~0#1.offset)); {2982#true} is VALID [2022-02-20 23:44:50,098 INFO L290 TraceCheckUtils]: 5: Hoare triple {2982#true} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {2982#true} is VALID [2022-02-20 23:44:50,098 INFO L290 TraceCheckUtils]: 6: Hoare triple {2982#true} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~bvadd32(4bv32, ~sub#1.offset), 4bv32); srcloc: L578 {2982#true} is VALID [2022-02-20 23:44:50,098 INFO L290 TraceCheckUtils]: 7: Hoare triple {2982#true} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~sub#1.offset, 4bv32); srcloc: L578-1 {2982#true} is VALID [2022-02-20 23:44:50,099 INFO L290 TraceCheckUtils]: 8: Hoare triple {2982#true} assume { :begin_inline_insert_sub } true;insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset := ~sub#1.base, ~sub#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset, insert_sub_~head#1.base, insert_sub_~head#1.offset, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset;insert_sub_~head#1.base, insert_sub_~head#1.offset := insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset;call insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32);insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset := insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset; {2982#true} is VALID [2022-02-20 23:44:50,099 INFO L290 TraceCheckUtils]: 9: Hoare triple {2982#true} assume !(insert_sub_~sub~0#1.base == 0bv32 && insert_sub_~sub~0#1.offset == 0bv32); {2982#true} is VALID [2022-02-20 23:44:50,099 INFO L290 TraceCheckUtils]: 10: Hoare triple {2982#true} SUMMARY for call write~intINTTYPE4(0bv32, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset, 4bv32); srcloc: L571-2 {2982#true} is VALID [2022-02-20 23:44:50,099 INFO L272 TraceCheckUtils]: 11: Hoare triple {2982#true} call list_add_tail(insert_sub_~sub~0#1.base, ~bvadd32(4bv32, insert_sub_~sub~0#1.offset), insert_sub_~head#1.base, insert_sub_~head#1.offset); {2982#true} is VALID [2022-02-20 23:44:50,099 INFO L290 TraceCheckUtils]: 12: Hoare triple {2982#true} ~new#1.base, ~new#1.offset := #in~new#1.base, #in~new#1.offset;~head#1.base, ~head#1.offset := #in~head#1.base, #in~head#1.offset; {2982#true} is VALID [2022-02-20 23:44:50,100 INFO L290 TraceCheckUtils]: 13: Hoare triple {2982#true} SUMMARY for call #t~mem3#1.base, #t~mem3#1.offset := read~$Pointer$(~head#1.base, ~bvadd32(4bv32, ~head#1.offset), 4bv32); srcloc: L538 {3026#(= (_ bv1 1) (select |#valid| |list_add_tail_~head#1.base|))} is VALID [2022-02-20 23:44:50,101 INFO L290 TraceCheckUtils]: 14: Hoare triple {3026#(= (_ bv1 1) (select |#valid| |list_add_tail_~head#1.base|))} assume { :begin_inline___list_add } true;__list_add_#in~new#1.base, __list_add_#in~new#1.offset, __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset, __list_add_#in~next#1.base, __list_add_#in~next#1.offset := ~new#1.base, ~new#1.offset, #t~mem3#1.base, #t~mem3#1.offset, ~head#1.base, ~head#1.offset;havoc __list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~prev#1.base, __list_add_~prev#1.offset, __list_add_~next#1.base, __list_add_~next#1.offset;__list_add_~new#1.base, __list_add_~new#1.offset := __list_add_#in~new#1.base, __list_add_#in~new#1.offset;__list_add_~prev#1.base, __list_add_~prev#1.offset := __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset;__list_add_~next#1.base, __list_add_~next#1.offset := __list_add_#in~next#1.base, __list_add_#in~next#1.offset; {3030#(= (select |#valid| |list_add_tail___list_add_~next#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:50,102 INFO L290 TraceCheckUtils]: 15: Hoare triple {3030#(= (select |#valid| |list_add_tail___list_add_~next#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[__list_add_~next#1.base]); {2983#false} is VALID [2022-02-20 23:44:50,102 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:44:50,102 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:50,102 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:50,102 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [681626085] [2022-02-20 23:44:50,102 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [681626085] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:50,103 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:50,103 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:44:50,103 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1618902992] [2022-02-20 23:44:50,103 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:50,103 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 4.666666666666667) internal successors, (14), 4 states have internal predecessors, (14), 1 states have call successors, (2), 1 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 16 [2022-02-20 23:44:50,104 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:50,104 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 4.666666666666667) internal successors, (14), 4 states have internal predecessors, (14), 1 states have call successors, (2), 1 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:50,121 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:50,121 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:44:50,121 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:50,122 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:44:50,122 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:44:50,122 INFO L87 Difference]: Start difference. First operand 108 states and 129 transitions. Second operand has 4 states, 3 states have (on average 4.666666666666667) internal successors, (14), 4 states have internal predecessors, (14), 1 states have call successors, (2), 1 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:50,441 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:50,442 INFO L93 Difference]: Finished difference Result 107 states and 126 transitions. [2022-02-20 23:44:50,442 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:44:50,442 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 4.666666666666667) internal successors, (14), 4 states have internal predecessors, (14), 1 states have call successors, (2), 1 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 16 [2022-02-20 23:44:50,442 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:50,442 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 4.666666666666667) internal successors, (14), 4 states have internal predecessors, (14), 1 states have call successors, (2), 1 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:50,443 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 82 transitions. [2022-02-20 23:44:50,444 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 4.666666666666667) internal successors, (14), 4 states have internal predecessors, (14), 1 states have call successors, (2), 1 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:50,445 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 82 transitions. [2022-02-20 23:44:50,445 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 82 transitions. [2022-02-20 23:44:50,529 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 82 edges. 82 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:50,531 INFO L225 Difference]: With dead ends: 107 [2022-02-20 23:44:50,531 INFO L226 Difference]: Without dead ends: 107 [2022-02-20 23:44:50,531 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 16 GetRequests, 13 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:44:50,532 INFO L933 BasicCegarLoop]: 72 mSDtfsCounter, 27 mSDsluCounter, 82 mSDsCounter, 0 mSdLazyCounter, 60 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 27 SdHoareTripleChecker+Valid, 154 SdHoareTripleChecker+Invalid, 60 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 60 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:50,532 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [27 Valid, 154 Invalid, 60 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 60 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:44:50,533 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 107 states. [2022-02-20 23:44:50,536 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 107 to 107. [2022-02-20 23:44:50,536 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:50,536 INFO L82 GeneralOperation]: Start isEquivalent. First operand 107 states. Second operand has 107 states, 71 states have (on average 1.6338028169014085) internal successors, (116), 96 states have internal predecessors, (116), 5 states have call successors, (5), 5 states have call predecessors, (5), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 23:44:50,537 INFO L74 IsIncluded]: Start isIncluded. First operand 107 states. Second operand has 107 states, 71 states have (on average 1.6338028169014085) internal successors, (116), 96 states have internal predecessors, (116), 5 states have call successors, (5), 5 states have call predecessors, (5), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 23:44:50,537 INFO L87 Difference]: Start difference. First operand 107 states. Second operand has 107 states, 71 states have (on average 1.6338028169014085) internal successors, (116), 96 states have internal predecessors, (116), 5 states have call successors, (5), 5 states have call predecessors, (5), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 23:44:50,540 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:50,540 INFO L93 Difference]: Finished difference Result 107 states and 126 transitions. [2022-02-20 23:44:50,540 INFO L276 IsEmpty]: Start isEmpty. Operand 107 states and 126 transitions. [2022-02-20 23:44:50,541 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:50,541 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:50,541 INFO L74 IsIncluded]: Start isIncluded. First operand has 107 states, 71 states have (on average 1.6338028169014085) internal successors, (116), 96 states have internal predecessors, (116), 5 states have call successors, (5), 5 states have call predecessors, (5), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 107 states. [2022-02-20 23:44:50,541 INFO L87 Difference]: Start difference. First operand has 107 states, 71 states have (on average 1.6338028169014085) internal successors, (116), 96 states have internal predecessors, (116), 5 states have call successors, (5), 5 states have call predecessors, (5), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 107 states. [2022-02-20 23:44:50,544 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:50,544 INFO L93 Difference]: Finished difference Result 107 states and 126 transitions. [2022-02-20 23:44:50,544 INFO L276 IsEmpty]: Start isEmpty. Operand 107 states and 126 transitions. [2022-02-20 23:44:50,545 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:50,545 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:50,545 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:50,545 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:50,546 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 107 states, 71 states have (on average 1.6338028169014085) internal successors, (116), 96 states have internal predecessors, (116), 5 states have call successors, (5), 5 states have call predecessors, (5), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 23:44:50,548 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 107 states to 107 states and 126 transitions. [2022-02-20 23:44:50,548 INFO L78 Accepts]: Start accepts. Automaton has 107 states and 126 transitions. Word has length 16 [2022-02-20 23:44:50,548 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:50,548 INFO L470 AbstractCegarLoop]: Abstraction has 107 states and 126 transitions. [2022-02-20 23:44:50,549 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 4.666666666666667) internal successors, (14), 4 states have internal predecessors, (14), 1 states have call successors, (2), 1 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:50,549 INFO L276 IsEmpty]: Start isEmpty. Operand 107 states and 126 transitions. [2022-02-20 23:44:50,549 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2022-02-20 23:44:50,549 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:50,549 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:50,559 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:44:50,758 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:44:50,759 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting list_add_tailErr3REQUIRES_VIOLATION === [create_sub_listErr0REQUIRES_VIOLATION, create_sub_listErr1REQUIRES_VIOLATION, create_sub_listErr2REQUIRES_VIOLATION, create_sub_listErr3REQUIRES_VIOLATION (and 27 more)] === [2022-02-20 23:44:50,759 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:50,759 INFO L85 PathProgramCache]: Analyzing trace with hash -467443807, now seen corresponding path program 1 times [2022-02-20 23:44:50,760 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:50,760 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1567837829] [2022-02-20 23:44:50,760 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:50,760 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:50,760 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:50,761 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:44:50,763 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:44:50,844 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:50,848 INFO L263 TraceCheckSpWp]: Trace formula consists of 151 conjuncts, 13 conjunts are in the unsatisfiable core [2022-02-20 23:44:50,858 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:50,859 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:50,985 INFO L290 TraceCheckUtils]: 0: Hoare triple {3463#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); {3463#true} is VALID [2022-02-20 23:44:50,986 INFO L290 TraceCheckUtils]: 1: Hoare triple {3463#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_~#top~1#1.base, main_~#top~1#1.offset;call main_~#top~1#1.base, main_~#top~1#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, main_~#top~1#1.offset, 4bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, ~bvadd32(4bv32, main_~#top~1#1.offset), 4bv32);assume { :begin_inline_create_top } true;create_top_#in~top#1.base, create_top_#in~top#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc create_top_#t~nondet11#1, create_top_~top#1.base, create_top_~top#1.offset;create_top_~top#1.base, create_top_~top#1.offset := create_top_#in~top#1.base, create_top_#in~top#1.offset; {3463#true} is VALID [2022-02-20 23:44:50,986 INFO L290 TraceCheckUtils]: 2: Hoare triple {3463#true} assume { :begin_inline_insert_top } true;insert_top_#in~head#1.base, insert_top_#in~head#1.offset := create_top_~top#1.base, create_top_~top#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset, insert_top_~head#1.base, insert_top_~head#1.offset, insert_top_~top~0#1.base, insert_top_~top~0#1.offset;insert_top_~head#1.base, insert_top_~head#1.offset := insert_top_#in~head#1.base, insert_top_#in~head#1.offset;call insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset := #Ultimate.allocOnHeap(24bv32);insert_top_~top~0#1.base, insert_top_~top~0#1.offset := insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset; {3474#(= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:44:50,987 INFO L290 TraceCheckUtils]: 3: Hoare triple {3474#(= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32))} assume !(insert_top_~top~0#1.base == 0bv32 && insert_top_~top~0#1.offset == 0bv32); {3474#(= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:44:50,987 INFO L272 TraceCheckUtils]: 4: Hoare triple {3474#(= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32))} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(8bv32, insert_top_~top~0#1.offset)); {3481#(= |create_sub_list_#in~sub#1.offset| (_ bv8 32))} is VALID [2022-02-20 23:44:50,988 INFO L290 TraceCheckUtils]: 5: Hoare triple {3481#(= |create_sub_list_#in~sub#1.offset| (_ bv8 32))} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {3485#(= (_ bv8 32) |create_sub_list_~sub#1.offset|)} is VALID [2022-02-20 23:44:50,988 INFO L290 TraceCheckUtils]: 6: Hoare triple {3485#(= (_ bv8 32) |create_sub_list_~sub#1.offset|)} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~bvadd32(4bv32, ~sub#1.offset), 4bv32); srcloc: L578 {3485#(= (_ bv8 32) |create_sub_list_~sub#1.offset|)} is VALID [2022-02-20 23:44:50,989 INFO L290 TraceCheckUtils]: 7: Hoare triple {3485#(= (_ bv8 32) |create_sub_list_~sub#1.offset|)} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~sub#1.offset, 4bv32); srcloc: L578-1 {3485#(= (_ bv8 32) |create_sub_list_~sub#1.offset|)} is VALID [2022-02-20 23:44:50,990 INFO L290 TraceCheckUtils]: 8: Hoare triple {3485#(= (_ bv8 32) |create_sub_list_~sub#1.offset|)} assume { :begin_inline_insert_sub } true;insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset := ~sub#1.base, ~sub#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset, insert_sub_~head#1.base, insert_sub_~head#1.offset, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset;insert_sub_~head#1.base, insert_sub_~head#1.offset := insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset;call insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32);insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset := insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset; {3495#(= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32))} is VALID [2022-02-20 23:44:50,991 INFO L290 TraceCheckUtils]: 9: Hoare triple {3495#(= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32))} assume !(insert_sub_~sub~0#1.base == 0bv32 && insert_sub_~sub~0#1.offset == 0bv32); {3495#(= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32))} is VALID [2022-02-20 23:44:50,991 INFO L290 TraceCheckUtils]: 10: Hoare triple {3495#(= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32))} SUMMARY for call write~intINTTYPE4(0bv32, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset, 4bv32); srcloc: L571-2 {3495#(= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32))} is VALID [2022-02-20 23:44:50,992 INFO L272 TraceCheckUtils]: 11: Hoare triple {3495#(= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32))} call list_add_tail(insert_sub_~sub~0#1.base, ~bvadd32(4bv32, insert_sub_~sub~0#1.offset), insert_sub_~head#1.base, insert_sub_~head#1.offset); {3505#(= (_ bv8 32) |list_add_tail_#in~head#1.offset|)} is VALID [2022-02-20 23:44:50,993 INFO L290 TraceCheckUtils]: 12: Hoare triple {3505#(= (_ bv8 32) |list_add_tail_#in~head#1.offset|)} ~new#1.base, ~new#1.offset := #in~new#1.base, #in~new#1.offset;~head#1.base, ~head#1.offset := #in~head#1.base, #in~head#1.offset; {3509#(= (_ bv8 32) |list_add_tail_~head#1.offset|)} is VALID [2022-02-20 23:44:50,994 INFO L290 TraceCheckUtils]: 13: Hoare triple {3509#(= (_ bv8 32) |list_add_tail_~head#1.offset|)} SUMMARY for call #t~mem3#1.base, #t~mem3#1.offset := read~$Pointer$(~head#1.base, ~bvadd32(4bv32, ~head#1.offset), 4bv32); srcloc: L538 {3513#(and (= (_ bv8 32) |list_add_tail_~head#1.offset|) (bvule (bvadd (_ bv8 32) |list_add_tail_~head#1.offset|) (select |#length| |list_add_tail_~head#1.base|)))} is VALID [2022-02-20 23:44:50,994 INFO L290 TraceCheckUtils]: 14: Hoare triple {3513#(and (= (_ bv8 32) |list_add_tail_~head#1.offset|) (bvule (bvadd (_ bv8 32) |list_add_tail_~head#1.offset|) (select |#length| |list_add_tail_~head#1.base|)))} assume { :begin_inline___list_add } true;__list_add_#in~new#1.base, __list_add_#in~new#1.offset, __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset, __list_add_#in~next#1.base, __list_add_#in~next#1.offset := ~new#1.base, ~new#1.offset, #t~mem3#1.base, #t~mem3#1.offset, ~head#1.base, ~head#1.offset;havoc __list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~prev#1.base, __list_add_~prev#1.offset, __list_add_~next#1.base, __list_add_~next#1.offset;__list_add_~new#1.base, __list_add_~new#1.offset := __list_add_#in~new#1.base, __list_add_#in~new#1.offset;__list_add_~prev#1.base, __list_add_~prev#1.offset := __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset;__list_add_~next#1.base, __list_add_~next#1.offset := __list_add_#in~next#1.base, __list_add_#in~next#1.offset; {3517#(and (= (_ bv8 32) |list_add_tail___list_add_~next#1.offset|) (bvule (_ bv16 32) (select |#length| |list_add_tail___list_add_~next#1.base|)))} is VALID [2022-02-20 23:44:50,995 INFO L290 TraceCheckUtils]: 15: Hoare triple {3517#(and (= (_ bv8 32) |list_add_tail___list_add_~next#1.offset|) (bvule (_ bv16 32) (select |#length| |list_add_tail___list_add_~next#1.base|)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(4bv32, __list_add_~next#1.offset)), #length[__list_add_~next#1.base]) && ~bvule32(~bvadd32(4bv32, __list_add_~next#1.offset), ~bvadd32(4bv32, ~bvadd32(4bv32, __list_add_~next#1.offset)))) && ~bvule32(0bv32, ~bvadd32(4bv32, __list_add_~next#1.offset))); {3464#false} is VALID [2022-02-20 23:44:50,995 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:44:50,995 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:50,995 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:50,996 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1567837829] [2022-02-20 23:44:50,996 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1567837829] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:50,996 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:50,996 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-02-20 23:44:50,996 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1571858605] [2022-02-20 23:44:50,996 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:50,996 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 1.5555555555555556) internal successors, (14), 8 states have internal predecessors, (14), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 16 [2022-02-20 23:44:50,997 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:50,997 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 1.5555555555555556) internal successors, (14), 8 states have internal predecessors, (14), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:51,025 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:51,025 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 23:44:51,025 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:51,026 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 23:44:51,026 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=72, Unknown=0, NotChecked=0, Total=90 [2022-02-20 23:44:51,026 INFO L87 Difference]: Start difference. First operand 107 states and 126 transitions. Second operand has 10 states, 9 states have (on average 1.5555555555555556) internal successors, (14), 8 states have internal predecessors, (14), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:52,113 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:52,113 INFO L93 Difference]: Finished difference Result 115 states and 127 transitions. [2022-02-20 23:44:52,113 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-02-20 23:44:52,113 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 1.5555555555555556) internal successors, (14), 8 states have internal predecessors, (14), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 16 [2022-02-20 23:44:52,113 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:52,113 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 1.5555555555555556) internal successors, (14), 8 states have internal predecessors, (14), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:52,115 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 111 transitions. [2022-02-20 23:44:52,115 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 1.5555555555555556) internal successors, (14), 8 states have internal predecessors, (14), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:52,117 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 111 transitions. [2022-02-20 23:44:52,117 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 111 transitions. [2022-02-20 23:44:52,249 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 111 edges. 111 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:52,252 INFO L225 Difference]: With dead ends: 115 [2022-02-20 23:44:52,252 INFO L226 Difference]: Without dead ends: 115 [2022-02-20 23:44:52,253 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 20 GetRequests, 7 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=46, Invalid=164, Unknown=0, NotChecked=0, Total=210 [2022-02-20 23:44:52,253 INFO L933 BasicCegarLoop]: 66 mSDtfsCounter, 114 mSDsluCounter, 414 mSDsCounter, 0 mSdLazyCounter, 141 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 117 SdHoareTripleChecker+Valid, 480 SdHoareTripleChecker+Invalid, 144 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 141 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:52,254 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [117 Valid, 480 Invalid, 144 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 141 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-02-20 23:44:52,254 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 115 states. [2022-02-20 23:44:52,257 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 115 to 107. [2022-02-20 23:44:52,257 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:52,257 INFO L82 GeneralOperation]: Start isEquivalent. First operand 115 states. Second operand has 107 states, 71 states have (on average 1.619718309859155) internal successors, (115), 96 states have internal predecessors, (115), 5 states have call successors, (5), 5 states have call predecessors, (5), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 23:44:52,258 INFO L74 IsIncluded]: Start isIncluded. First operand 115 states. Second operand has 107 states, 71 states have (on average 1.619718309859155) internal successors, (115), 96 states have internal predecessors, (115), 5 states have call successors, (5), 5 states have call predecessors, (5), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 23:44:52,258 INFO L87 Difference]: Start difference. First operand 115 states. Second operand has 107 states, 71 states have (on average 1.619718309859155) internal successors, (115), 96 states have internal predecessors, (115), 5 states have call successors, (5), 5 states have call predecessors, (5), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 23:44:52,261 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:52,261 INFO L93 Difference]: Finished difference Result 115 states and 127 transitions. [2022-02-20 23:44:52,261 INFO L276 IsEmpty]: Start isEmpty. Operand 115 states and 127 transitions. [2022-02-20 23:44:52,261 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:52,262 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:52,262 INFO L74 IsIncluded]: Start isIncluded. First operand has 107 states, 71 states have (on average 1.619718309859155) internal successors, (115), 96 states have internal predecessors, (115), 5 states have call successors, (5), 5 states have call predecessors, (5), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 115 states. [2022-02-20 23:44:52,262 INFO L87 Difference]: Start difference. First operand has 107 states, 71 states have (on average 1.619718309859155) internal successors, (115), 96 states have internal predecessors, (115), 5 states have call successors, (5), 5 states have call predecessors, (5), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 115 states. [2022-02-20 23:44:52,265 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:52,265 INFO L93 Difference]: Finished difference Result 115 states and 127 transitions. [2022-02-20 23:44:52,265 INFO L276 IsEmpty]: Start isEmpty. Operand 115 states and 127 transitions. [2022-02-20 23:44:52,266 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:52,266 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:52,266 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:52,266 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:52,266 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 107 states, 71 states have (on average 1.619718309859155) internal successors, (115), 96 states have internal predecessors, (115), 5 states have call successors, (5), 5 states have call predecessors, (5), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 23:44:52,269 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 107 states to 107 states and 125 transitions. [2022-02-20 23:44:52,269 INFO L78 Accepts]: Start accepts. Automaton has 107 states and 125 transitions. Word has length 16 [2022-02-20 23:44:52,269 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:52,269 INFO L470 AbstractCegarLoop]: Abstraction has 107 states and 125 transitions. [2022-02-20 23:44:52,269 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 1.5555555555555556) internal successors, (14), 8 states have internal predecessors, (14), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:52,270 INFO L276 IsEmpty]: Start isEmpty. Operand 107 states and 125 transitions. [2022-02-20 23:44:52,270 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-02-20 23:44:52,270 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:52,270 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:44:52,282 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (10)] Ended with exit code 0 [2022-02-20 23:44:52,479 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:44:52,480 INFO L402 AbstractCegarLoop]: === Iteration 10 === Targeting list_add_tailErr4REQUIRES_VIOLATION === [create_sub_listErr0REQUIRES_VIOLATION, create_sub_listErr1REQUIRES_VIOLATION, create_sub_listErr2REQUIRES_VIOLATION, create_sub_listErr3REQUIRES_VIOLATION (and 27 more)] === [2022-02-20 23:44:52,480 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:52,480 INFO L85 PathProgramCache]: Analyzing trace with hash -1605856063, now seen corresponding path program 1 times [2022-02-20 23:44:52,480 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:52,480 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1144010902] [2022-02-20 23:44:52,481 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:52,481 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:52,481 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:52,482 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:44:52,483 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:44:52,568 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:52,572 INFO L263 TraceCheckSpWp]: Trace formula consists of 164 conjuncts, 7 conjunts are in the unsatisfiable core [2022-02-20 23:44:52,580 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:52,581 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:52,606 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:44:52,664 INFO L290 TraceCheckUtils]: 0: Hoare triple {3982#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); {3982#true} is VALID [2022-02-20 23:44:52,664 INFO L290 TraceCheckUtils]: 1: Hoare triple {3982#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_~#top~1#1.base, main_~#top~1#1.offset;call main_~#top~1#1.base, main_~#top~1#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, main_~#top~1#1.offset, 4bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, ~bvadd32(4bv32, main_~#top~1#1.offset), 4bv32);assume { :begin_inline_create_top } true;create_top_#in~top#1.base, create_top_#in~top#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc create_top_#t~nondet11#1, create_top_~top#1.base, create_top_~top#1.offset;create_top_~top#1.base, create_top_~top#1.offset := create_top_#in~top#1.base, create_top_#in~top#1.offset; {3982#true} is VALID [2022-02-20 23:44:52,664 INFO L290 TraceCheckUtils]: 2: Hoare triple {3982#true} assume { :begin_inline_insert_top } true;insert_top_#in~head#1.base, insert_top_#in~head#1.offset := create_top_~top#1.base, create_top_~top#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset, insert_top_~head#1.base, insert_top_~head#1.offset, insert_top_~top~0#1.base, insert_top_~top~0#1.offset;insert_top_~head#1.base, insert_top_~head#1.offset := insert_top_#in~head#1.base, insert_top_#in~head#1.offset;call insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset := #Ultimate.allocOnHeap(24bv32);insert_top_~top~0#1.base, insert_top_~top~0#1.offset := insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset; {3982#true} is VALID [2022-02-20 23:44:52,665 INFO L290 TraceCheckUtils]: 3: Hoare triple {3982#true} assume !(insert_top_~top~0#1.base == 0bv32 && insert_top_~top~0#1.offset == 0bv32); {3982#true} is VALID [2022-02-20 23:44:52,665 INFO L272 TraceCheckUtils]: 4: Hoare triple {3982#true} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(8bv32, insert_top_~top~0#1.offset)); {3982#true} is VALID [2022-02-20 23:44:52,665 INFO L290 TraceCheckUtils]: 5: Hoare triple {3982#true} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {3982#true} is VALID [2022-02-20 23:44:52,665 INFO L290 TraceCheckUtils]: 6: Hoare triple {3982#true} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~bvadd32(4bv32, ~sub#1.offset), 4bv32); srcloc: L578 {3982#true} is VALID [2022-02-20 23:44:52,665 INFO L290 TraceCheckUtils]: 7: Hoare triple {3982#true} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~sub#1.offset, 4bv32); srcloc: L578-1 {3982#true} is VALID [2022-02-20 23:44:52,668 INFO L290 TraceCheckUtils]: 8: Hoare triple {3982#true} assume { :begin_inline_insert_sub } true;insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset := ~sub#1.base, ~sub#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset, insert_sub_~head#1.base, insert_sub_~head#1.offset, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset;insert_sub_~head#1.base, insert_sub_~head#1.offset := insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset;call insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32);insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset := insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset; {4011#(= (select |#valid| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:52,669 INFO L290 TraceCheckUtils]: 9: Hoare triple {4011#(= (select |#valid| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv1 1))} assume !(insert_sub_~sub~0#1.base == 0bv32 && insert_sub_~sub~0#1.offset == 0bv32); {4011#(= (select |#valid| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:52,670 INFO L290 TraceCheckUtils]: 10: Hoare triple {4011#(= (select |#valid| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv1 1))} SUMMARY for call write~intINTTYPE4(0bv32, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset, 4bv32); srcloc: L571-2 {4011#(= (select |#valid| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:52,671 INFO L272 TraceCheckUtils]: 11: Hoare triple {4011#(= (select |#valid| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv1 1))} call list_add_tail(insert_sub_~sub~0#1.base, ~bvadd32(4bv32, insert_sub_~sub~0#1.offset), insert_sub_~head#1.base, insert_sub_~head#1.offset); {4021#(= (select |#valid| |list_add_tail_#in~new#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:52,671 INFO L290 TraceCheckUtils]: 12: Hoare triple {4021#(= (select |#valid| |list_add_tail_#in~new#1.base|) (_ bv1 1))} ~new#1.base, ~new#1.offset := #in~new#1.base, #in~new#1.offset;~head#1.base, ~head#1.offset := #in~head#1.base, #in~head#1.offset; {4025#(= (select |#valid| |list_add_tail_~new#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:52,673 INFO L290 TraceCheckUtils]: 13: Hoare triple {4025#(= (select |#valid| |list_add_tail_~new#1.base|) (_ bv1 1))} SUMMARY for call #t~mem3#1.base, #t~mem3#1.offset := read~$Pointer$(~head#1.base, ~bvadd32(4bv32, ~head#1.offset), 4bv32); srcloc: L538 {4025#(= (select |#valid| |list_add_tail_~new#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:52,673 INFO L290 TraceCheckUtils]: 14: Hoare triple {4025#(= (select |#valid| |list_add_tail_~new#1.base|) (_ bv1 1))} assume { :begin_inline___list_add } true;__list_add_#in~new#1.base, __list_add_#in~new#1.offset, __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset, __list_add_#in~next#1.base, __list_add_#in~next#1.offset := ~new#1.base, ~new#1.offset, #t~mem3#1.base, #t~mem3#1.offset, ~head#1.base, ~head#1.offset;havoc __list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~prev#1.base, __list_add_~prev#1.offset, __list_add_~next#1.base, __list_add_~next#1.offset;__list_add_~new#1.base, __list_add_~new#1.offset := __list_add_#in~new#1.base, __list_add_#in~new#1.offset;__list_add_~prev#1.base, __list_add_~prev#1.offset := __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset;__list_add_~next#1.base, __list_add_~next#1.offset := __list_add_#in~next#1.base, __list_add_#in~next#1.offset; {4032#(= (select |#valid| |list_add_tail___list_add_~new#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:52,679 INFO L290 TraceCheckUtils]: 15: Hoare triple {4032#(= (select |#valid| |list_add_tail___list_add_~new#1.base|) (_ bv1 1))} SUMMARY for call write~$Pointer$(__list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~next#1.base, ~bvadd32(4bv32, __list_add_~next#1.offset), 4bv32); srcloc: L531 {4032#(= (select |#valid| |list_add_tail___list_add_~new#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:52,680 INFO L290 TraceCheckUtils]: 16: Hoare triple {4032#(= (select |#valid| |list_add_tail___list_add_~new#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[__list_add_~new#1.base]); {3983#false} is VALID [2022-02-20 23:44:52,680 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:44:52,680 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:52,680 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:52,680 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1144010902] [2022-02-20 23:44:52,681 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1144010902] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:52,681 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:52,681 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:44:52,681 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1558383875] [2022-02-20 23:44:52,681 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:52,682 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (2), 2 states have call predecessors, (2), 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:44:52,682 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:52,682 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:52,701 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:44:52,701 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:44:52,701 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:52,701 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:44:52,701 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:44:52,701 INFO L87 Difference]: Start difference. First operand 107 states and 125 transitions. Second operand has 6 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:53,414 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:53,414 INFO L93 Difference]: Finished difference Result 114 states and 122 transitions. [2022-02-20 23:44:53,414 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:44:53,415 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (2), 2 states have call predecessors, (2), 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:44:53,415 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:53,415 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:53,416 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 99 transitions. [2022-02-20 23:44:53,416 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:53,417 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 99 transitions. [2022-02-20 23:44:53,417 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 99 transitions. [2022-02-20 23:44:53,506 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:44:53,508 INFO L225 Difference]: With dead ends: 114 [2022-02-20 23:44:53,508 INFO L226 Difference]: Without dead ends: 114 [2022-02-20 23:44:53,508 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 12 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=19, Invalid=37, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:44:53,509 INFO L933 BasicCegarLoop]: 67 mSDtfsCounter, 49 mSDsluCounter, 159 mSDsCounter, 0 mSdLazyCounter, 161 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 50 SdHoareTripleChecker+Valid, 226 SdHoareTripleChecker+Invalid, 164 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 161 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:53,509 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [50 Valid, 226 Invalid, 164 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 161 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:44:53,509 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 114 states. [2022-02-20 23:44:53,511 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 114 to 106. [2022-02-20 23:44:53,511 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:53,512 INFO L82 GeneralOperation]: Start isEquivalent. First operand 114 states. Second operand has 106 states, 71 states have (on average 1.5492957746478873) internal successors, (110), 95 states have internal predecessors, (110), 5 states have call successors, (5), 5 states have call predecessors, (5), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 23:44:53,512 INFO L74 IsIncluded]: Start isIncluded. First operand 114 states. Second operand has 106 states, 71 states have (on average 1.5492957746478873) internal successors, (110), 95 states have internal predecessors, (110), 5 states have call successors, (5), 5 states have call predecessors, (5), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 23:44:53,513 INFO L87 Difference]: Start difference. First operand 114 states. Second operand has 106 states, 71 states have (on average 1.5492957746478873) internal successors, (110), 95 states have internal predecessors, (110), 5 states have call successors, (5), 5 states have call predecessors, (5), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 23:44:53,514 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:53,515 INFO L93 Difference]: Finished difference Result 114 states and 122 transitions. [2022-02-20 23:44:53,515 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 122 transitions. [2022-02-20 23:44:53,515 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:53,515 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:53,516 INFO L74 IsIncluded]: Start isIncluded. First operand has 106 states, 71 states have (on average 1.5492957746478873) internal successors, (110), 95 states have internal predecessors, (110), 5 states have call successors, (5), 5 states have call predecessors, (5), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 114 states. [2022-02-20 23:44:53,516 INFO L87 Difference]: Start difference. First operand has 106 states, 71 states have (on average 1.5492957746478873) internal successors, (110), 95 states have internal predecessors, (110), 5 states have call successors, (5), 5 states have call predecessors, (5), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 114 states. [2022-02-20 23:44:53,518 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:53,518 INFO L93 Difference]: Finished difference Result 114 states and 122 transitions. [2022-02-20 23:44:53,518 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 122 transitions. [2022-02-20 23:44:53,519 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:53,519 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:53,519 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:53,519 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:53,519 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 106 states, 71 states have (on average 1.5492957746478873) internal successors, (110), 95 states have internal predecessors, (110), 5 states have call successors, (5), 5 states have call predecessors, (5), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 23:44:53,521 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 106 states to 106 states and 120 transitions. [2022-02-20 23:44:53,521 INFO L78 Accepts]: Start accepts. Automaton has 106 states and 120 transitions. Word has length 17 [2022-02-20 23:44:53,521 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:53,521 INFO L470 AbstractCegarLoop]: Abstraction has 106 states and 120 transitions. [2022-02-20 23:44:53,522 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:53,522 INFO L276 IsEmpty]: Start isEmpty. Operand 106 states and 120 transitions. [2022-02-20 23:44:53,522 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-02-20 23:44:53,522 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:53,522 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:44:53,531 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:44:53,727 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:44:53,727 INFO L402 AbstractCegarLoop]: === Iteration 11 === Targeting list_add_tailErr5REQUIRES_VIOLATION === [create_sub_listErr0REQUIRES_VIOLATION, create_sub_listErr1REQUIRES_VIOLATION, create_sub_listErr2REQUIRES_VIOLATION, create_sub_listErr3REQUIRES_VIOLATION (and 27 more)] === [2022-02-20 23:44:53,728 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:53,728 INFO L85 PathProgramCache]: Analyzing trace with hash -1605856062, now seen corresponding path program 1 times [2022-02-20 23:44:53,728 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:53,728 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1432237670] [2022-02-20 23:44:53,728 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:53,728 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:53,728 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:53,729 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:44:53,730 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:44:53,830 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:53,836 INFO L263 TraceCheckSpWp]: Trace formula consists of 164 conjuncts, 12 conjunts are in the unsatisfiable core [2022-02-20 23:44:53,851 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:53,852 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:53,890 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:44:53,982 INFO L290 TraceCheckUtils]: 0: Hoare triple {4490#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); {4490#true} is VALID [2022-02-20 23:44:53,982 INFO L290 TraceCheckUtils]: 1: Hoare triple {4490#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_~#top~1#1.base, main_~#top~1#1.offset;call main_~#top~1#1.base, main_~#top~1#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, main_~#top~1#1.offset, 4bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, ~bvadd32(4bv32, main_~#top~1#1.offset), 4bv32);assume { :begin_inline_create_top } true;create_top_#in~top#1.base, create_top_#in~top#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc create_top_#t~nondet11#1, create_top_~top#1.base, create_top_~top#1.offset;create_top_~top#1.base, create_top_~top#1.offset := create_top_#in~top#1.base, create_top_#in~top#1.offset; {4490#true} is VALID [2022-02-20 23:44:53,982 INFO L290 TraceCheckUtils]: 2: Hoare triple {4490#true} assume { :begin_inline_insert_top } true;insert_top_#in~head#1.base, insert_top_#in~head#1.offset := create_top_~top#1.base, create_top_~top#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset, insert_top_~head#1.base, insert_top_~head#1.offset, insert_top_~top~0#1.base, insert_top_~top~0#1.offset;insert_top_~head#1.base, insert_top_~head#1.offset := insert_top_#in~head#1.base, insert_top_#in~head#1.offset;call insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset := #Ultimate.allocOnHeap(24bv32);insert_top_~top~0#1.base, insert_top_~top~0#1.offset := insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset; {4490#true} is VALID [2022-02-20 23:44:53,983 INFO L290 TraceCheckUtils]: 3: Hoare triple {4490#true} assume !(insert_top_~top~0#1.base == 0bv32 && insert_top_~top~0#1.offset == 0bv32); {4490#true} is VALID [2022-02-20 23:44:53,983 INFO L272 TraceCheckUtils]: 4: Hoare triple {4490#true} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(8bv32, insert_top_~top~0#1.offset)); {4490#true} is VALID [2022-02-20 23:44:53,983 INFO L290 TraceCheckUtils]: 5: Hoare triple {4490#true} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {4490#true} is VALID [2022-02-20 23:44:53,983 INFO L290 TraceCheckUtils]: 6: Hoare triple {4490#true} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~bvadd32(4bv32, ~sub#1.offset), 4bv32); srcloc: L578 {4490#true} is VALID [2022-02-20 23:44:53,983 INFO L290 TraceCheckUtils]: 7: Hoare triple {4490#true} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~sub#1.offset, 4bv32); srcloc: L578-1 {4490#true} is VALID [2022-02-20 23:44:53,985 INFO L290 TraceCheckUtils]: 8: Hoare triple {4490#true} assume { :begin_inline_insert_sub } true;insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset := ~sub#1.base, ~sub#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset, insert_sub_~head#1.base, insert_sub_~head#1.offset, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset;insert_sub_~head#1.base, insert_sub_~head#1.offset := insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset;call insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32);insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset := insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset; {4519#(and (= (select |#length| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv12 32)) (= |create_sub_list_insert_sub_~sub~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:44:53,986 INFO L290 TraceCheckUtils]: 9: Hoare triple {4519#(and (= (select |#length| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv12 32)) (= |create_sub_list_insert_sub_~sub~0#1.offset| (_ bv0 32)))} assume !(insert_sub_~sub~0#1.base == 0bv32 && insert_sub_~sub~0#1.offset == 0bv32); {4519#(and (= (select |#length| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv12 32)) (= |create_sub_list_insert_sub_~sub~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:44:53,988 INFO L290 TraceCheckUtils]: 10: Hoare triple {4519#(and (= (select |#length| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv12 32)) (= |create_sub_list_insert_sub_~sub~0#1.offset| (_ bv0 32)))} SUMMARY for call write~intINTTYPE4(0bv32, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset, 4bv32); srcloc: L571-2 {4519#(and (= (select |#length| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv12 32)) (= |create_sub_list_insert_sub_~sub~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:44:53,989 INFO L272 TraceCheckUtils]: 11: Hoare triple {4519#(and (= (select |#length| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv12 32)) (= |create_sub_list_insert_sub_~sub~0#1.offset| (_ bv0 32)))} call list_add_tail(insert_sub_~sub~0#1.base, ~bvadd32(4bv32, insert_sub_~sub~0#1.offset), insert_sub_~head#1.base, insert_sub_~head#1.offset); {4529#(and (= (_ bv4 32) |list_add_tail_#in~new#1.offset|) (= (select |#length| |list_add_tail_#in~new#1.base|) (_ bv12 32)))} is VALID [2022-02-20 23:44:53,989 INFO L290 TraceCheckUtils]: 12: Hoare triple {4529#(and (= (_ bv4 32) |list_add_tail_#in~new#1.offset|) (= (select |#length| |list_add_tail_#in~new#1.base|) (_ bv12 32)))} ~new#1.base, ~new#1.offset := #in~new#1.base, #in~new#1.offset;~head#1.base, ~head#1.offset := #in~head#1.base, #in~head#1.offset; {4533#(and (= (select |#length| |list_add_tail_~new#1.base|) (_ bv12 32)) (= (_ bv4 32) |list_add_tail_~new#1.offset|))} is VALID [2022-02-20 23:44:53,990 INFO L290 TraceCheckUtils]: 13: Hoare triple {4533#(and (= (select |#length| |list_add_tail_~new#1.base|) (_ bv12 32)) (= (_ bv4 32) |list_add_tail_~new#1.offset|))} SUMMARY for call #t~mem3#1.base, #t~mem3#1.offset := read~$Pointer$(~head#1.base, ~bvadd32(4bv32, ~head#1.offset), 4bv32); srcloc: L538 {4533#(and (= (select |#length| |list_add_tail_~new#1.base|) (_ bv12 32)) (= (_ bv4 32) |list_add_tail_~new#1.offset|))} is VALID [2022-02-20 23:44:53,991 INFO L290 TraceCheckUtils]: 14: Hoare triple {4533#(and (= (select |#length| |list_add_tail_~new#1.base|) (_ bv12 32)) (= (_ bv4 32) |list_add_tail_~new#1.offset|))} assume { :begin_inline___list_add } true;__list_add_#in~new#1.base, __list_add_#in~new#1.offset, __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset, __list_add_#in~next#1.base, __list_add_#in~next#1.offset := ~new#1.base, ~new#1.offset, #t~mem3#1.base, #t~mem3#1.offset, ~head#1.base, ~head#1.offset;havoc __list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~prev#1.base, __list_add_~prev#1.offset, __list_add_~next#1.base, __list_add_~next#1.offset;__list_add_~new#1.base, __list_add_~new#1.offset := __list_add_#in~new#1.base, __list_add_#in~new#1.offset;__list_add_~prev#1.base, __list_add_~prev#1.offset := __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset;__list_add_~next#1.base, __list_add_~next#1.offset := __list_add_#in~next#1.base, __list_add_#in~next#1.offset; {4540#(and (= (_ bv4 32) |list_add_tail___list_add_~new#1.offset|) (= (select |#length| |list_add_tail___list_add_~new#1.base|) (_ bv12 32)))} is VALID [2022-02-20 23:44:53,991 INFO L290 TraceCheckUtils]: 15: Hoare triple {4540#(and (= (_ bv4 32) |list_add_tail___list_add_~new#1.offset|) (= (select |#length| |list_add_tail___list_add_~new#1.base|) (_ bv12 32)))} SUMMARY for call write~$Pointer$(__list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~next#1.base, ~bvadd32(4bv32, __list_add_~next#1.offset), 4bv32); srcloc: L531 {4540#(and (= (_ bv4 32) |list_add_tail___list_add_~new#1.offset|) (= (select |#length| |list_add_tail___list_add_~new#1.base|) (_ bv12 32)))} is VALID [2022-02-20 23:44:53,992 INFO L290 TraceCheckUtils]: 16: Hoare triple {4540#(and (= (_ bv4 32) |list_add_tail___list_add_~new#1.offset|) (= (select |#length| |list_add_tail___list_add_~new#1.base|) (_ bv12 32)))} assume !((~bvule32(~bvadd32(4bv32, __list_add_~new#1.offset), #length[__list_add_~new#1.base]) && ~bvule32(__list_add_~new#1.offset, ~bvadd32(4bv32, __list_add_~new#1.offset))) && ~bvule32(0bv32, __list_add_~new#1.offset)); {4491#false} is VALID [2022-02-20 23:44:53,992 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:44:53,992 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:53,992 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:53,992 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1432237670] [2022-02-20 23:44:53,993 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1432237670] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:53,993 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:53,993 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:44:53,993 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [939768953] [2022-02-20 23:44:53,993 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:53,993 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (2), 2 states have call predecessors, (2), 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:44:53,993 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:53,994 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:54,019 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:44:54,019 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:44:54,019 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:54,019 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:44:54,019 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:44:54,020 INFO L87 Difference]: Start difference. First operand 106 states and 120 transitions. Second operand has 6 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:54,830 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:54,830 INFO L93 Difference]: Finished difference Result 112 states and 118 transitions. [2022-02-20 23:44:54,830 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:44:54,830 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (2), 2 states have call predecessors, (2), 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:44:54,831 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:54,831 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:54,832 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 96 transitions. [2022-02-20 23:44:54,832 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:54,833 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 96 transitions. [2022-02-20 23:44:54,834 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 96 transitions. [2022-02-20 23:44:54,950 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 96 edges. 96 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:54,952 INFO L225 Difference]: With dead ends: 112 [2022-02-20 23:44:54,952 INFO L226 Difference]: Without dead ends: 112 [2022-02-20 23:44:54,952 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 12 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=19, Invalid=37, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:44:54,952 INFO L933 BasicCegarLoop]: 67 mSDtfsCounter, 36 mSDsluCounter, 179 mSDsCounter, 0 mSdLazyCounter, 149 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 37 SdHoareTripleChecker+Valid, 246 SdHoareTripleChecker+Invalid, 150 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 149 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:54,953 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [37 Valid, 246 Invalid, 150 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 149 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-02-20 23:44:54,953 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 112 states. [2022-02-20 23:44:54,955 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 112 to 106. [2022-02-20 23:44:54,955 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:54,955 INFO L82 GeneralOperation]: Start isEquivalent. First operand 112 states. Second operand has 106 states, 71 states have (on average 1.4929577464788732) internal successors, (106), 95 states have internal predecessors, (106), 5 states have call successors, (5), 5 states have call predecessors, (5), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 23:44:54,956 INFO L74 IsIncluded]: Start isIncluded. First operand 112 states. Second operand has 106 states, 71 states have (on average 1.4929577464788732) internal successors, (106), 95 states have internal predecessors, (106), 5 states have call successors, (5), 5 states have call predecessors, (5), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 23:44:54,956 INFO L87 Difference]: Start difference. First operand 112 states. Second operand has 106 states, 71 states have (on average 1.4929577464788732) internal successors, (106), 95 states have internal predecessors, (106), 5 states have call successors, (5), 5 states have call predecessors, (5), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 23:44:54,958 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:54,958 INFO L93 Difference]: Finished difference Result 112 states and 118 transitions. [2022-02-20 23:44:54,958 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 118 transitions. [2022-02-20 23:44:54,958 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:54,958 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:54,958 INFO L74 IsIncluded]: Start isIncluded. First operand has 106 states, 71 states have (on average 1.4929577464788732) internal successors, (106), 95 states have internal predecessors, (106), 5 states have call successors, (5), 5 states have call predecessors, (5), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 112 states. [2022-02-20 23:44:54,959 INFO L87 Difference]: Start difference. First operand has 106 states, 71 states have (on average 1.4929577464788732) internal successors, (106), 95 states have internal predecessors, (106), 5 states have call successors, (5), 5 states have call predecessors, (5), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 112 states. [2022-02-20 23:44:54,961 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:54,961 INFO L93 Difference]: Finished difference Result 112 states and 118 transitions. [2022-02-20 23:44:54,961 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 118 transitions. [2022-02-20 23:44:54,961 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:54,962 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:54,962 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:54,962 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:54,962 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 106 states, 71 states have (on average 1.4929577464788732) internal successors, (106), 95 states have internal predecessors, (106), 5 states have call successors, (5), 5 states have call predecessors, (5), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 23:44:54,964 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 106 states to 106 states and 116 transitions. [2022-02-20 23:44:54,964 INFO L78 Accepts]: Start accepts. Automaton has 106 states and 116 transitions. Word has length 17 [2022-02-20 23:44:54,964 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:54,964 INFO L470 AbstractCegarLoop]: Abstraction has 106 states and 116 transitions. [2022-02-20 23:44:54,964 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:54,965 INFO L276 IsEmpty]: Start isEmpty. Operand 106 states and 116 transitions. [2022-02-20 23:44:54,965 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-02-20 23:44:54,965 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:54,965 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:44:54,977 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (12)] Forceful destruction successful, exit code 0 [2022-02-20 23:44:55,175 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:44:55,177 INFO L402 AbstractCegarLoop]: === Iteration 12 === Targeting list_add_tailErr8REQUIRES_VIOLATION === [create_sub_listErr0REQUIRES_VIOLATION, create_sub_listErr1REQUIRES_VIOLATION, create_sub_listErr2REQUIRES_VIOLATION, create_sub_listErr3REQUIRES_VIOLATION (and 27 more)] === [2022-02-20 23:44:55,178 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:55,178 INFO L85 PathProgramCache]: Analyzing trace with hash -1334414076, now seen corresponding path program 1 times [2022-02-20 23:44:55,178 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:55,178 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [560558598] [2022-02-20 23:44:55,178 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:55,179 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:55,179 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:55,180 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:44:55,182 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:44:55,332 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:55,338 INFO L263 TraceCheckSpWp]: Trace formula consists of 190 conjuncts, 28 conjunts are in the unsatisfiable core [2022-02-20 23:44:55,351 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:55,352 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:55,363 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:44:55,402 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 13 treesize of output 9 [2022-02-20 23:44:55,448 INFO L356 Elim1Store]: treesize reduction 23, result has 28.1 percent of original size [2022-02-20 23:44:55,448 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 21 treesize of output 20 [2022-02-20 23:44:55,483 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:44:55,484 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 12 treesize of output 12 [2022-02-20 23:44:55,546 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 16 treesize of output 18 [2022-02-20 23:44:55,610 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 7 [2022-02-20 23:44:55,653 INFO L290 TraceCheckUtils]: 0: Hoare triple {4992#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); {4992#true} is VALID [2022-02-20 23:44:55,653 INFO L290 TraceCheckUtils]: 1: Hoare triple {4992#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_~#top~1#1.base, main_~#top~1#1.offset;call main_~#top~1#1.base, main_~#top~1#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, main_~#top~1#1.offset, 4bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, ~bvadd32(4bv32, main_~#top~1#1.offset), 4bv32);assume { :begin_inline_create_top } true;create_top_#in~top#1.base, create_top_#in~top#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc create_top_#t~nondet11#1, create_top_~top#1.base, create_top_~top#1.offset;create_top_~top#1.base, create_top_~top#1.offset := create_top_#in~top#1.base, create_top_#in~top#1.offset; {4992#true} is VALID [2022-02-20 23:44:55,654 INFO L290 TraceCheckUtils]: 2: Hoare triple {4992#true} assume { :begin_inline_insert_top } true;insert_top_#in~head#1.base, insert_top_#in~head#1.offset := create_top_~top#1.base, create_top_~top#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset, insert_top_~head#1.base, insert_top_~head#1.offset, insert_top_~top~0#1.base, insert_top_~top~0#1.offset;insert_top_~head#1.base, insert_top_~head#1.offset := insert_top_#in~head#1.base, insert_top_#in~head#1.offset;call insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset := #Ultimate.allocOnHeap(24bv32);insert_top_~top~0#1.base, insert_top_~top~0#1.offset := insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset; {5003#(= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:55,655 INFO L290 TraceCheckUtils]: 3: Hoare triple {5003#(= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1))} assume !(insert_top_~top~0#1.base == 0bv32 && insert_top_~top~0#1.offset == 0bv32); {5003#(= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:55,655 INFO L272 TraceCheckUtils]: 4: Hoare triple {5003#(= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1))} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(8bv32, insert_top_~top~0#1.offset)); {5010#(= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|))} is VALID [2022-02-20 23:44:55,656 INFO L290 TraceCheckUtils]: 5: Hoare triple {5010#(= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|))} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {5014#(= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:55,657 INFO L290 TraceCheckUtils]: 6: Hoare triple {5014#(= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~bvadd32(4bv32, ~sub#1.offset), 4bv32); srcloc: L578 {5018#(and (= (select (select |#memory_$Pointer$.base| |create_sub_list_~sub#1.base|) (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|)) |create_sub_list_~sub#1.base|) (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:44:55,658 INFO L290 TraceCheckUtils]: 7: Hoare triple {5018#(and (= (select (select |#memory_$Pointer$.base| |create_sub_list_~sub#1.base|) (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|)) |create_sub_list_~sub#1.base|) (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~sub#1.offset, 4bv32); srcloc: L578-1 {5018#(and (= (select (select |#memory_$Pointer$.base| |create_sub_list_~sub#1.base|) (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|)) |create_sub_list_~sub#1.base|) (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:44:55,659 INFO L290 TraceCheckUtils]: 8: Hoare triple {5018#(and (= (select (select |#memory_$Pointer$.base| |create_sub_list_~sub#1.base|) (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|)) |create_sub_list_~sub#1.base|) (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)))} assume { :begin_inline_insert_sub } true;insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset := ~sub#1.base, ~sub#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset, insert_sub_~head#1.base, insert_sub_~head#1.offset, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset;insert_sub_~head#1.base, insert_sub_~head#1.offset := insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset;call insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32);insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset := insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset; {5025#(and (= |create_sub_list_insert_sub_~head#1.base| (select (select |#memory_$Pointer$.base| |create_sub_list_insert_sub_~head#1.base|) (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv4 32)))) (not (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_insert_sub_~sub~0#1.base|)))} is VALID [2022-02-20 23:44:55,659 INFO L290 TraceCheckUtils]: 9: Hoare triple {5025#(and (= |create_sub_list_insert_sub_~head#1.base| (select (select |#memory_$Pointer$.base| |create_sub_list_insert_sub_~head#1.base|) (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv4 32)))) (not (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_insert_sub_~sub~0#1.base|)))} assume !(insert_sub_~sub~0#1.base == 0bv32 && insert_sub_~sub~0#1.offset == 0bv32); {5025#(and (= |create_sub_list_insert_sub_~head#1.base| (select (select |#memory_$Pointer$.base| |create_sub_list_insert_sub_~head#1.base|) (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv4 32)))) (not (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_insert_sub_~sub~0#1.base|)))} is VALID [2022-02-20 23:44:55,661 INFO L290 TraceCheckUtils]: 10: Hoare triple {5025#(and (= |create_sub_list_insert_sub_~head#1.base| (select (select |#memory_$Pointer$.base| |create_sub_list_insert_sub_~head#1.base|) (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv4 32)))) (not (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_insert_sub_~sub~0#1.base|)))} SUMMARY for call write~intINTTYPE4(0bv32, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset, 4bv32); srcloc: L571-2 {5032#(= |create_sub_list_insert_sub_~head#1.base| (select (select |#memory_$Pointer$.base| |create_sub_list_insert_sub_~head#1.base|) (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv4 32))))} is VALID [2022-02-20 23:44:55,662 INFO L272 TraceCheckUtils]: 11: Hoare triple {5032#(= |create_sub_list_insert_sub_~head#1.base| (select (select |#memory_$Pointer$.base| |create_sub_list_insert_sub_~head#1.base|) (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv4 32))))} call list_add_tail(insert_sub_~sub~0#1.base, ~bvadd32(4bv32, insert_sub_~sub~0#1.offset), insert_sub_~head#1.base, insert_sub_~head#1.offset); {5036#(= |list_add_tail_#in~head#1.base| (select (select |#memory_$Pointer$.base| |list_add_tail_#in~head#1.base|) (bvadd (_ bv4 32) |list_add_tail_#in~head#1.offset|)))} is VALID [2022-02-20 23:44:55,663 INFO L290 TraceCheckUtils]: 12: Hoare triple {5036#(= |list_add_tail_#in~head#1.base| (select (select |#memory_$Pointer$.base| |list_add_tail_#in~head#1.base|) (bvadd (_ bv4 32) |list_add_tail_#in~head#1.offset|)))} ~new#1.base, ~new#1.offset := #in~new#1.base, #in~new#1.offset;~head#1.base, ~head#1.offset := #in~head#1.base, #in~head#1.offset; {5040#(= (select (select |#memory_$Pointer$.base| |list_add_tail_~head#1.base|) (bvadd (_ bv4 32) |list_add_tail_~head#1.offset|)) |list_add_tail_~head#1.base|)} is VALID [2022-02-20 23:44:55,663 INFO L290 TraceCheckUtils]: 13: Hoare triple {5040#(= (select (select |#memory_$Pointer$.base| |list_add_tail_~head#1.base|) (bvadd (_ bv4 32) |list_add_tail_~head#1.offset|)) |list_add_tail_~head#1.base|)} SUMMARY for call #t~mem3#1.base, #t~mem3#1.offset := read~$Pointer$(~head#1.base, ~bvadd32(4bv32, ~head#1.offset), 4bv32); srcloc: L538 {5044#(= (select |#valid| |list_add_tail_#t~mem3#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:55,664 INFO L290 TraceCheckUtils]: 14: Hoare triple {5044#(= (select |#valid| |list_add_tail_#t~mem3#1.base|) (_ bv1 1))} assume { :begin_inline___list_add } true;__list_add_#in~new#1.base, __list_add_#in~new#1.offset, __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset, __list_add_#in~next#1.base, __list_add_#in~next#1.offset := ~new#1.base, ~new#1.offset, #t~mem3#1.base, #t~mem3#1.offset, ~head#1.base, ~head#1.offset;havoc __list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~prev#1.base, __list_add_~prev#1.offset, __list_add_~next#1.base, __list_add_~next#1.offset;__list_add_~new#1.base, __list_add_~new#1.offset := __list_add_#in~new#1.base, __list_add_#in~new#1.offset;__list_add_~prev#1.base, __list_add_~prev#1.offset := __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset;__list_add_~next#1.base, __list_add_~next#1.offset := __list_add_#in~next#1.base, __list_add_#in~next#1.offset; {5048#(= (select |#valid| |list_add_tail___list_add_~prev#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:55,664 INFO L290 TraceCheckUtils]: 15: Hoare triple {5048#(= (select |#valid| |list_add_tail___list_add_~prev#1.base|) (_ bv1 1))} SUMMARY for call write~$Pointer$(__list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~next#1.base, ~bvadd32(4bv32, __list_add_~next#1.offset), 4bv32); srcloc: L531 {5048#(= (select |#valid| |list_add_tail___list_add_~prev#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:55,664 INFO L290 TraceCheckUtils]: 16: Hoare triple {5048#(= (select |#valid| |list_add_tail___list_add_~prev#1.base|) (_ bv1 1))} SUMMARY for call write~$Pointer$(__list_add_~next#1.base, __list_add_~next#1.offset, __list_add_~new#1.base, __list_add_~new#1.offset, 4bv32); srcloc: L531-1 {5048#(= (select |#valid| |list_add_tail___list_add_~prev#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:55,665 INFO L290 TraceCheckUtils]: 17: Hoare triple {5048#(= (select |#valid| |list_add_tail___list_add_~prev#1.base|) (_ bv1 1))} SUMMARY for call write~$Pointer$(__list_add_~prev#1.base, __list_add_~prev#1.offset, __list_add_~new#1.base, ~bvadd32(4bv32, __list_add_~new#1.offset), 4bv32); srcloc: L532 {5048#(= (select |#valid| |list_add_tail___list_add_~prev#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:55,665 INFO L290 TraceCheckUtils]: 18: Hoare triple {5048#(= (select |#valid| |list_add_tail___list_add_~prev#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[__list_add_~prev#1.base]); {4993#false} is VALID [2022-02-20 23:44:55,665 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:44:55,665 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:55,665 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:55,665 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [560558598] [2022-02-20 23:44:55,665 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [560558598] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:55,666 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:55,666 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-02-20 23:44:55,666 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [160000390] [2022-02-20 23:44:55,666 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:55,667 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 10 states have (on average 1.7) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (2), 2 states have call predecessors, (2), 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:44:55,667 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:55,667 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 12 states, 10 states have (on average 1.7) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:55,690 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:44:55,690 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-02-20 23:44:55,691 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:55,691 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-02-20 23:44:55,691 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=109, Unknown=0, NotChecked=0, Total=132 [2022-02-20 23:44:55,691 INFO L87 Difference]: Start difference. First operand 106 states and 116 transitions. Second operand has 12 states, 10 states have (on average 1.7) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:57,738 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:57,738 INFO L93 Difference]: Finished difference Result 162 states and 177 transitions. [2022-02-20 23:44:57,738 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-02-20 23:44:57,738 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 10 states have (on average 1.7) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (2), 2 states have call predecessors, (2), 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:44:57,739 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:57,739 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 10 states have (on average 1.7) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:57,740 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 128 transitions. [2022-02-20 23:44:57,740 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 10 states have (on average 1.7) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:57,741 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 128 transitions. [2022-02-20 23:44:57,741 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 128 transitions. [2022-02-20 23:44:57,900 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 128 edges. 128 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:57,902 INFO L225 Difference]: With dead ends: 162 [2022-02-20 23:44:57,902 INFO L226 Difference]: Without dead ends: 162 [2022-02-20 23:44:57,902 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 26 GetRequests, 8 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 35 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=73, Invalid=307, Unknown=0, NotChecked=0, Total=380 [2022-02-20 23:44:57,903 INFO L933 BasicCegarLoop]: 45 mSDtfsCounter, 78 mSDsluCounter, 319 mSDsCounter, 0 mSdLazyCounter, 406 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 79 SdHoareTripleChecker+Valid, 364 SdHoareTripleChecker+Invalid, 425 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 406 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:57,903 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [79 Valid, 364 Invalid, 425 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 406 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-02-20 23:44:57,903 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 162 states. [2022-02-20 23:44:57,906 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 162 to 128. [2022-02-20 23:44:57,906 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:57,906 INFO L82 GeneralOperation]: Start isEquivalent. First operand 162 states. Second operand has 128 states, 91 states have (on average 1.4285714285714286) internal successors, (130), 115 states have internal predecessors, (130), 7 states have call successors, (7), 7 states have call predecessors, (7), 5 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:44:57,906 INFO L74 IsIncluded]: Start isIncluded. First operand 162 states. Second operand has 128 states, 91 states have (on average 1.4285714285714286) internal successors, (130), 115 states have internal predecessors, (130), 7 states have call successors, (7), 7 states have call predecessors, (7), 5 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:44:57,907 INFO L87 Difference]: Start difference. First operand 162 states. Second operand has 128 states, 91 states have (on average 1.4285714285714286) internal successors, (130), 115 states have internal predecessors, (130), 7 states have call successors, (7), 7 states have call predecessors, (7), 5 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:44:57,910 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:57,910 INFO L93 Difference]: Finished difference Result 162 states and 177 transitions. [2022-02-20 23:44:57,910 INFO L276 IsEmpty]: Start isEmpty. Operand 162 states and 177 transitions. [2022-02-20 23:44:57,910 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:57,910 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:57,910 INFO L74 IsIncluded]: Start isIncluded. First operand has 128 states, 91 states have (on average 1.4285714285714286) internal successors, (130), 115 states have internal predecessors, (130), 7 states have call successors, (7), 7 states have call predecessors, (7), 5 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) Second operand 162 states. [2022-02-20 23:44:57,913 INFO L87 Difference]: Start difference. First operand has 128 states, 91 states have (on average 1.4285714285714286) internal successors, (130), 115 states have internal predecessors, (130), 7 states have call successors, (7), 7 states have call predecessors, (7), 5 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) Second operand 162 states. [2022-02-20 23:44:57,916 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:57,916 INFO L93 Difference]: Finished difference Result 162 states and 177 transitions. [2022-02-20 23:44:57,916 INFO L276 IsEmpty]: Start isEmpty. Operand 162 states and 177 transitions. [2022-02-20 23:44:57,917 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:57,917 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:57,917 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:57,917 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:57,917 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 128 states, 91 states have (on average 1.4285714285714286) internal successors, (130), 115 states have internal predecessors, (130), 7 states have call successors, (7), 7 states have call predecessors, (7), 5 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:44:57,924 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 128 states to 128 states and 144 transitions. [2022-02-20 23:44:57,924 INFO L78 Accepts]: Start accepts. Automaton has 128 states and 144 transitions. Word has length 19 [2022-02-20 23:44:57,925 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:57,925 INFO L470 AbstractCegarLoop]: Abstraction has 128 states and 144 transitions. [2022-02-20 23:44:57,925 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 10 states have (on average 1.7) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:57,925 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 144 transitions. [2022-02-20 23:44:57,925 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-02-20 23:44:57,925 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:57,926 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:44:57,941 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:44:58,136 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:44:58,137 INFO L402 AbstractCegarLoop]: === Iteration 13 === Targeting list_add_tailErr9REQUIRES_VIOLATION === [create_sub_listErr0REQUIRES_VIOLATION, create_sub_listErr1REQUIRES_VIOLATION, create_sub_listErr2REQUIRES_VIOLATION, create_sub_listErr3REQUIRES_VIOLATION (and 27 more)] === [2022-02-20 23:44:58,137 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:58,137 INFO L85 PathProgramCache]: Analyzing trace with hash -1334414075, now seen corresponding path program 1 times [2022-02-20 23:44:58,137 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:58,137 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1322985283] [2022-02-20 23:44:58,138 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:58,138 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:58,138 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:58,139 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:44:58,139 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:44:58,298 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:58,305 INFO L263 TraceCheckSpWp]: Trace formula consists of 190 conjuncts, 46 conjunts are in the unsatisfiable core [2022-02-20 23:44:58,318 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:58,319 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:58,337 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:44:58,342 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:44:58,464 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 13 treesize of output 9 [2022-02-20 23:44:58,470 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 13 treesize of output 9 [2022-02-20 23:44:58,522 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:44:58,523 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:44:58,542 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:44:58,543 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:44:58,603 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:44:58,603 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 12 treesize of output 12 [2022-02-20 23:44:58,615 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:44:58,700 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 14 treesize of output 16 [2022-02-20 23:44:58,715 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 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:44:58,849 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:44:58,852 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:44:58,925 INFO L290 TraceCheckUtils]: 0: Hoare triple {5690#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); {5690#true} is VALID [2022-02-20 23:44:58,925 INFO L290 TraceCheckUtils]: 1: Hoare triple {5690#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_~#top~1#1.base, main_~#top~1#1.offset;call main_~#top~1#1.base, main_~#top~1#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, main_~#top~1#1.offset, 4bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, ~bvadd32(4bv32, main_~#top~1#1.offset), 4bv32);assume { :begin_inline_create_top } true;create_top_#in~top#1.base, create_top_#in~top#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc create_top_#t~nondet11#1, create_top_~top#1.base, create_top_~top#1.offset;create_top_~top#1.base, create_top_~top#1.offset := create_top_#in~top#1.base, create_top_#in~top#1.offset; {5690#true} is VALID [2022-02-20 23:44:58,926 INFO L290 TraceCheckUtils]: 2: Hoare triple {5690#true} assume { :begin_inline_insert_top } true;insert_top_#in~head#1.base, insert_top_#in~head#1.offset := create_top_~top#1.base, create_top_~top#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset, insert_top_~head#1.base, insert_top_~head#1.offset, insert_top_~top~0#1.base, insert_top_~top~0#1.offset;insert_top_~head#1.base, insert_top_~head#1.offset := insert_top_#in~head#1.base, insert_top_#in~head#1.offset;call insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset := #Ultimate.allocOnHeap(24bv32);insert_top_~top~0#1.base, insert_top_~top~0#1.offset := insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset; {5701#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:44:58,927 INFO L290 TraceCheckUtils]: 3: Hoare triple {5701#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} assume !(insert_top_~top~0#1.base == 0bv32 && insert_top_~top~0#1.offset == 0bv32); {5701#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:44:58,928 INFO L272 TraceCheckUtils]: 4: Hoare triple {5701#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(8bv32, insert_top_~top~0#1.offset)); {5708#(and (= (select |#length| |create_sub_list_#in~sub#1.base|) (_ bv24 32)) (= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|)) (= (bvadd |create_sub_list_#in~sub#1.offset| (_ bv4294967288 32)) (_ bv0 32)))} is VALID [2022-02-20 23:44:58,928 INFO L290 TraceCheckUtils]: 5: Hoare triple {5708#(and (= (select |#length| |create_sub_list_#in~sub#1.base|) (_ bv24 32)) (= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|)) (= (bvadd |create_sub_list_#in~sub#1.offset| (_ bv4294967288 32)) (_ bv0 32)))} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {5712#(and (= (_ bv0 32) (bvadd |create_sub_list_~sub#1.offset| (_ bv4294967288 32))) (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:44:58,929 INFO L290 TraceCheckUtils]: 6: Hoare triple {5712#(and (= (_ bv0 32) (bvadd |create_sub_list_~sub#1.offset| (_ bv4294967288 32))) (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~bvadd32(4bv32, ~sub#1.offset), 4bv32); srcloc: L578 {5716#(and (= (_ bv0 32) (bvadd |create_sub_list_~sub#1.offset| (_ bv4294967288 32))) (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (select (select |#memory_$Pointer$.offset| |create_sub_list_~sub#1.base|) (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|)) |create_sub_list_~sub#1.offset|) (= (select (select |#memory_$Pointer$.base| |create_sub_list_~sub#1.base|) (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|)) |create_sub_list_~sub#1.base|) (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:44:58,931 INFO L290 TraceCheckUtils]: 7: Hoare triple {5716#(and (= (_ bv0 32) (bvadd |create_sub_list_~sub#1.offset| (_ bv4294967288 32))) (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (select (select |#memory_$Pointer$.offset| |create_sub_list_~sub#1.base|) (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|)) |create_sub_list_~sub#1.offset|) (= (select (select |#memory_$Pointer$.base| |create_sub_list_~sub#1.base|) (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|)) |create_sub_list_~sub#1.base|) (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~sub#1.offset, 4bv32); srcloc: L578-1 {5716#(and (= (_ bv0 32) (bvadd |create_sub_list_~sub#1.offset| (_ bv4294967288 32))) (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (select (select |#memory_$Pointer$.offset| |create_sub_list_~sub#1.base|) (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|)) |create_sub_list_~sub#1.offset|) (= (select (select |#memory_$Pointer$.base| |create_sub_list_~sub#1.base|) (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|)) |create_sub_list_~sub#1.base|) (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:44:58,932 INFO L290 TraceCheckUtils]: 8: Hoare triple {5716#(and (= (_ bv0 32) (bvadd |create_sub_list_~sub#1.offset| (_ bv4294967288 32))) (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (select (select |#memory_$Pointer$.offset| |create_sub_list_~sub#1.base|) (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|)) |create_sub_list_~sub#1.offset|) (= (select (select |#memory_$Pointer$.base| |create_sub_list_~sub#1.base|) (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|)) |create_sub_list_~sub#1.base|) (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)))} assume { :begin_inline_insert_sub } true;insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset := ~sub#1.base, ~sub#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset, insert_sub_~head#1.base, insert_sub_~head#1.offset, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset;insert_sub_~head#1.base, insert_sub_~head#1.offset := insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset;call insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32);insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset := insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset; {5723#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (= |create_sub_list_insert_sub_~head#1.base| (select (select |#memory_$Pointer$.base| |create_sub_list_insert_sub_~head#1.base|) (_ bv12 32))) (not (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_insert_sub_~sub~0#1.base|)) (= (_ bv8 32) (select (select |#memory_$Pointer$.offset| |create_sub_list_insert_sub_~head#1.base|) (_ bv12 32))) (= (select |#length| |create_sub_list_insert_sub_~head#1.base|) (_ bv24 32)))} is VALID [2022-02-20 23:44:58,933 INFO L290 TraceCheckUtils]: 9: Hoare triple {5723#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (= |create_sub_list_insert_sub_~head#1.base| (select (select |#memory_$Pointer$.base| |create_sub_list_insert_sub_~head#1.base|) (_ bv12 32))) (not (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_insert_sub_~sub~0#1.base|)) (= (_ bv8 32) (select (select |#memory_$Pointer$.offset| |create_sub_list_insert_sub_~head#1.base|) (_ bv12 32))) (= (select |#length| |create_sub_list_insert_sub_~head#1.base|) (_ bv24 32)))} assume !(insert_sub_~sub~0#1.base == 0bv32 && insert_sub_~sub~0#1.offset == 0bv32); {5723#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (= |create_sub_list_insert_sub_~head#1.base| (select (select |#memory_$Pointer$.base| |create_sub_list_insert_sub_~head#1.base|) (_ bv12 32))) (not (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_insert_sub_~sub~0#1.base|)) (= (_ bv8 32) (select (select |#memory_$Pointer$.offset| |create_sub_list_insert_sub_~head#1.base|) (_ bv12 32))) (= (select |#length| |create_sub_list_insert_sub_~head#1.base|) (_ bv24 32)))} is VALID [2022-02-20 23:44:58,936 INFO L290 TraceCheckUtils]: 10: Hoare triple {5723#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (= |create_sub_list_insert_sub_~head#1.base| (select (select |#memory_$Pointer$.base| |create_sub_list_insert_sub_~head#1.base|) (_ bv12 32))) (not (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_insert_sub_~sub~0#1.base|)) (= (_ bv8 32) (select (select |#memory_$Pointer$.offset| |create_sub_list_insert_sub_~head#1.base|) (_ bv12 32))) (= (select |#length| |create_sub_list_insert_sub_~head#1.base|) (_ bv24 32)))} SUMMARY for call write~intINTTYPE4(0bv32, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset, 4bv32); srcloc: L571-2 {5730#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (= |create_sub_list_insert_sub_~head#1.base| (select (select |#memory_$Pointer$.base| |create_sub_list_insert_sub_~head#1.base|) (_ bv12 32))) (= (_ bv8 32) (select (select |#memory_$Pointer$.offset| |create_sub_list_insert_sub_~head#1.base|) (_ bv12 32))) (= (select |#length| |create_sub_list_insert_sub_~head#1.base|) (_ bv24 32)))} is VALID [2022-02-20 23:44:58,937 INFO L272 TraceCheckUtils]: 11: Hoare triple {5730#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (= |create_sub_list_insert_sub_~head#1.base| (select (select |#memory_$Pointer$.base| |create_sub_list_insert_sub_~head#1.base|) (_ bv12 32))) (= (_ bv8 32) (select (select |#memory_$Pointer$.offset| |create_sub_list_insert_sub_~head#1.base|) (_ bv12 32))) (= (select |#length| |create_sub_list_insert_sub_~head#1.base|) (_ bv24 32)))} call list_add_tail(insert_sub_~sub~0#1.base, ~bvadd32(4bv32, insert_sub_~sub~0#1.offset), insert_sub_~head#1.base, insert_sub_~head#1.offset); {5734#(and (= (select |#length| |list_add_tail_#in~head#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail_#in~head#1.offset|) (= (select (select |#memory_$Pointer$.offset| |list_add_tail_#in~head#1.base|) (_ bv12 32)) (_ bv8 32)) (= |list_add_tail_#in~head#1.base| (select (select |#memory_$Pointer$.base| |list_add_tail_#in~head#1.base|) (_ bv12 32))))} is VALID [2022-02-20 23:44:58,937 INFO L290 TraceCheckUtils]: 12: Hoare triple {5734#(and (= (select |#length| |list_add_tail_#in~head#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail_#in~head#1.offset|) (= (select (select |#memory_$Pointer$.offset| |list_add_tail_#in~head#1.base|) (_ bv12 32)) (_ bv8 32)) (= |list_add_tail_#in~head#1.base| (select (select |#memory_$Pointer$.base| |list_add_tail_#in~head#1.base|) (_ bv12 32))))} ~new#1.base, ~new#1.offset := #in~new#1.base, #in~new#1.offset;~head#1.base, ~head#1.offset := #in~head#1.base, #in~head#1.offset; {5738#(and (= (select |#length| |list_add_tail_~head#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail_~head#1.offset|) (= (select (select |#memory_$Pointer$.offset| |list_add_tail_~head#1.base|) (_ bv12 32)) (_ bv8 32)) (= (select (select |#memory_$Pointer$.base| |list_add_tail_~head#1.base|) (_ bv12 32)) |list_add_tail_~head#1.base|))} is VALID [2022-02-20 23:44:58,938 INFO L290 TraceCheckUtils]: 13: Hoare triple {5738#(and (= (select |#length| |list_add_tail_~head#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail_~head#1.offset|) (= (select (select |#memory_$Pointer$.offset| |list_add_tail_~head#1.base|) (_ bv12 32)) (_ bv8 32)) (= (select (select |#memory_$Pointer$.base| |list_add_tail_~head#1.base|) (_ bv12 32)) |list_add_tail_~head#1.base|))} SUMMARY for call #t~mem3#1.base, #t~mem3#1.offset := read~$Pointer$(~head#1.base, ~bvadd32(4bv32, ~head#1.offset), 4bv32); srcloc: L538 {5742#(and (= (select |#length| |list_add_tail_#t~mem3#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail_#t~mem3#1.offset|))} is VALID [2022-02-20 23:44:58,938 INFO L290 TraceCheckUtils]: 14: Hoare triple {5742#(and (= (select |#length| |list_add_tail_#t~mem3#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail_#t~mem3#1.offset|))} assume { :begin_inline___list_add } true;__list_add_#in~new#1.base, __list_add_#in~new#1.offset, __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset, __list_add_#in~next#1.base, __list_add_#in~next#1.offset := ~new#1.base, ~new#1.offset, #t~mem3#1.base, #t~mem3#1.offset, ~head#1.base, ~head#1.offset;havoc __list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~prev#1.base, __list_add_~prev#1.offset, __list_add_~next#1.base, __list_add_~next#1.offset;__list_add_~new#1.base, __list_add_~new#1.offset := __list_add_#in~new#1.base, __list_add_#in~new#1.offset;__list_add_~prev#1.base, __list_add_~prev#1.offset := __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset;__list_add_~next#1.base, __list_add_~next#1.offset := __list_add_#in~next#1.base, __list_add_#in~next#1.offset; {5746#(and (= (select |#length| |list_add_tail___list_add_~prev#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail___list_add_~prev#1.offset|))} is VALID [2022-02-20 23:44:58,939 INFO L290 TraceCheckUtils]: 15: Hoare triple {5746#(and (= (select |#length| |list_add_tail___list_add_~prev#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail___list_add_~prev#1.offset|))} SUMMARY for call write~$Pointer$(__list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~next#1.base, ~bvadd32(4bv32, __list_add_~next#1.offset), 4bv32); srcloc: L531 {5746#(and (= (select |#length| |list_add_tail___list_add_~prev#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail___list_add_~prev#1.offset|))} is VALID [2022-02-20 23:44:58,939 INFO L290 TraceCheckUtils]: 16: Hoare triple {5746#(and (= (select |#length| |list_add_tail___list_add_~prev#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail___list_add_~prev#1.offset|))} SUMMARY for call write~$Pointer$(__list_add_~next#1.base, __list_add_~next#1.offset, __list_add_~new#1.base, __list_add_~new#1.offset, 4bv32); srcloc: L531-1 {5746#(and (= (select |#length| |list_add_tail___list_add_~prev#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail___list_add_~prev#1.offset|))} is VALID [2022-02-20 23:44:58,940 INFO L290 TraceCheckUtils]: 17: Hoare triple {5746#(and (= (select |#length| |list_add_tail___list_add_~prev#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail___list_add_~prev#1.offset|))} SUMMARY for call write~$Pointer$(__list_add_~prev#1.base, __list_add_~prev#1.offset, __list_add_~new#1.base, ~bvadd32(4bv32, __list_add_~new#1.offset), 4bv32); srcloc: L532 {5746#(and (= (select |#length| |list_add_tail___list_add_~prev#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail___list_add_~prev#1.offset|))} is VALID [2022-02-20 23:44:58,940 INFO L290 TraceCheckUtils]: 18: Hoare triple {5746#(and (= (select |#length| |list_add_tail___list_add_~prev#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail___list_add_~prev#1.offset|))} assume !((~bvule32(~bvadd32(4bv32, __list_add_~prev#1.offset), #length[__list_add_~prev#1.base]) && ~bvule32(__list_add_~prev#1.offset, ~bvadd32(4bv32, __list_add_~prev#1.offset))) && ~bvule32(0bv32, __list_add_~prev#1.offset)); {5691#false} is VALID [2022-02-20 23:44:58,941 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:44:58,941 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:58,941 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:58,941 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1322985283] [2022-02-20 23:44:58,941 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1322985283] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:58,941 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:58,941 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-02-20 23:44:58,941 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2001367422] [2022-02-20 23:44:58,941 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:58,942 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 10 states have (on average 1.7) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (2), 2 states have call predecessors, (2), 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:44:58,942 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:58,942 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 12 states, 10 states have (on average 1.7) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:58,967 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:44:58,967 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-02-20 23:44:58,967 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:58,968 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-02-20 23:44:58,968 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=109, Unknown=0, NotChecked=0, Total=132 [2022-02-20 23:44:58,968 INFO L87 Difference]: Start difference. First operand 128 states and 144 transitions. Second operand has 12 states, 10 states have (on average 1.7) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:45:01,187 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:01,187 INFO L93 Difference]: Finished difference Result 131 states and 145 transitions. [2022-02-20 23:45:01,187 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-02-20 23:45:01,187 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 10 states have (on average 1.7) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (2), 2 states have call predecessors, (2), 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:01,187 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:01,187 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 10 states have (on average 1.7) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:45:01,188 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 107 transitions. [2022-02-20 23:45:01,189 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 10 states have (on average 1.7) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:45:01,190 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 107 transitions. [2022-02-20 23:45:01,190 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 107 transitions. [2022-02-20 23:45:01,302 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:01,304 INFO L225 Difference]: With dead ends: 131 [2022-02-20 23:45:01,304 INFO L226 Difference]: Without dead ends: 131 [2022-02-20 23:45:01,304 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 26 GetRequests, 8 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 35 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=73, Invalid=307, Unknown=0, NotChecked=0, Total=380 [2022-02-20 23:45:01,304 INFO L933 BasicCegarLoop]: 66 mSDtfsCounter, 31 mSDsluCounter, 361 mSDsCounter, 0 mSdLazyCounter, 395 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 31 SdHoareTripleChecker+Valid, 427 SdHoareTripleChecker+Invalid, 412 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 395 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:01,308 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [31 Valid, 427 Invalid, 412 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 395 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-02-20 23:45:01,308 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 131 states. [2022-02-20 23:45:01,311 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 131 to 131. [2022-02-20 23:45:01,311 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:01,312 INFO L82 GeneralOperation]: Start isEquivalent. First operand 131 states. Second operand has 131 states, 93 states have (on average 1.4086021505376345) internal successors, (131), 118 states have internal predecessors, (131), 7 states have call successors, (7), 7 states have call predecessors, (7), 6 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:45:01,312 INFO L74 IsIncluded]: Start isIncluded. First operand 131 states. Second operand has 131 states, 93 states have (on average 1.4086021505376345) internal successors, (131), 118 states have internal predecessors, (131), 7 states have call successors, (7), 7 states have call predecessors, (7), 6 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:45:01,313 INFO L87 Difference]: Start difference. First operand 131 states. Second operand has 131 states, 93 states have (on average 1.4086021505376345) internal successors, (131), 118 states have internal predecessors, (131), 7 states have call successors, (7), 7 states have call predecessors, (7), 6 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:45:01,315 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:01,315 INFO L93 Difference]: Finished difference Result 131 states and 145 transitions. [2022-02-20 23:45:01,315 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 145 transitions. [2022-02-20 23:45:01,316 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:01,316 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:01,316 INFO L74 IsIncluded]: Start isIncluded. First operand has 131 states, 93 states have (on average 1.4086021505376345) internal successors, (131), 118 states have internal predecessors, (131), 7 states have call successors, (7), 7 states have call predecessors, (7), 6 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) Second operand 131 states. [2022-02-20 23:45:01,316 INFO L87 Difference]: Start difference. First operand has 131 states, 93 states have (on average 1.4086021505376345) internal successors, (131), 118 states have internal predecessors, (131), 7 states have call successors, (7), 7 states have call predecessors, (7), 6 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) Second operand 131 states. [2022-02-20 23:45:01,319 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:01,319 INFO L93 Difference]: Finished difference Result 131 states and 145 transitions. [2022-02-20 23:45:01,319 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 145 transitions. [2022-02-20 23:45:01,319 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:01,319 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:01,320 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:01,320 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:01,320 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 131 states, 93 states have (on average 1.4086021505376345) internal successors, (131), 118 states have internal predecessors, (131), 7 states have call successors, (7), 7 states have call predecessors, (7), 6 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:45:01,322 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 131 states to 131 states and 145 transitions. [2022-02-20 23:45:01,322 INFO L78 Accepts]: Start accepts. Automaton has 131 states and 145 transitions. Word has length 19 [2022-02-20 23:45:01,322 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:01,322 INFO L470 AbstractCegarLoop]: Abstraction has 131 states and 145 transitions. [2022-02-20 23:45:01,323 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 10 states have (on average 1.7) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:45:01,323 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 145 transitions. [2022-02-20 23:45:01,323 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-02-20 23:45:01,323 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:01,323 INFO L514 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:45:01,339 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:45:01,534 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:45:01,534 INFO L402 AbstractCegarLoop]: === Iteration 14 === Targeting create_sub_listErr1REQUIRES_VIOLATION === [create_sub_listErr0REQUIRES_VIOLATION, create_sub_listErr1REQUIRES_VIOLATION, create_sub_listErr2REQUIRES_VIOLATION, create_sub_listErr3REQUIRES_VIOLATION (and 27 more)] === [2022-02-20 23:45:01,535 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:01,535 INFO L85 PathProgramCache]: Analyzing trace with hash -1965497160, now seen corresponding path program 1 times [2022-02-20 23:45:01,535 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:45:01,535 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [586069777] [2022-02-20 23:45:01,535 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:01,536 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:45:01,536 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:45:01,536 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:45:01,537 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:45:01,688 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:01,696 INFO L263 TraceCheckSpWp]: Trace formula consists of 224 conjuncts, 20 conjunts are in the unsatisfiable core [2022-02-20 23:45:01,712 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:01,713 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:01,730 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:01,734 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:03,885 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:03,986 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:45:03,987 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:03,996 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:45:03,997 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 12 treesize of output 12 [2022-02-20 23:45:04,081 INFO L290 TraceCheckUtils]: 0: Hoare triple {6298#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); {6298#true} is VALID [2022-02-20 23:45:04,081 INFO L290 TraceCheckUtils]: 1: Hoare triple {6298#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_~#top~1#1.base, main_~#top~1#1.offset;call main_~#top~1#1.base, main_~#top~1#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, main_~#top~1#1.offset, 4bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, ~bvadd32(4bv32, main_~#top~1#1.offset), 4bv32);assume { :begin_inline_create_top } true;create_top_#in~top#1.base, create_top_#in~top#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc create_top_#t~nondet11#1, create_top_~top#1.base, create_top_~top#1.offset;create_top_~top#1.base, create_top_~top#1.offset := create_top_#in~top#1.base, create_top_#in~top#1.offset; {6298#true} is VALID [2022-02-20 23:45:04,082 INFO L290 TraceCheckUtils]: 2: Hoare triple {6298#true} assume { :begin_inline_insert_top } true;insert_top_#in~head#1.base, insert_top_#in~head#1.offset := create_top_~top#1.base, create_top_~top#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset, insert_top_~head#1.base, insert_top_~head#1.offset, insert_top_~top~0#1.base, insert_top_~top~0#1.offset;insert_top_~head#1.base, insert_top_~head#1.offset := insert_top_#in~head#1.base, insert_top_#in~head#1.offset;call insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset := #Ultimate.allocOnHeap(24bv32);insert_top_~top~0#1.base, insert_top_~top~0#1.offset := insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset; {6309#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:04,083 INFO L290 TraceCheckUtils]: 3: Hoare triple {6309#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} assume !(insert_top_~top~0#1.base == 0bv32 && insert_top_~top~0#1.offset == 0bv32); {6309#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:04,084 INFO L272 TraceCheckUtils]: 4: Hoare triple {6309#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(8bv32, insert_top_~top~0#1.offset)); {6316#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} is VALID [2022-02-20 23:45:04,085 INFO L290 TraceCheckUtils]: 5: Hoare triple {6316#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {6316#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} is VALID [2022-02-20 23:45:04,085 INFO L290 TraceCheckUtils]: 6: Hoare triple {6316#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~bvadd32(4bv32, ~sub#1.offset), 4bv32); srcloc: L578 {6316#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} is VALID [2022-02-20 23:45:04,086 INFO L290 TraceCheckUtils]: 7: Hoare triple {6316#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~sub#1.offset, 4bv32); srcloc: L578-1 {6316#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} is VALID [2022-02-20 23:45:04,088 INFO L290 TraceCheckUtils]: 8: Hoare triple {6316#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} assume { :begin_inline_insert_sub } true;insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset := ~sub#1.base, ~sub#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset, insert_sub_~head#1.base, insert_sub_~head#1.offset, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset;insert_sub_~head#1.base, insert_sub_~head#1.offset := insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset;call insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32);insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset := insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset; {6329#(exists ((|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_448 (_ BitVec 32))) (= |#length| (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_448))) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1))))} is VALID [2022-02-20 23:45:04,088 INFO L290 TraceCheckUtils]: 9: Hoare triple {6329#(exists ((|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_448 (_ BitVec 32))) (= |#length| (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_448))) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1))))} assume !(insert_sub_~sub~0#1.base == 0bv32 && insert_sub_~sub~0#1.offset == 0bv32); {6329#(exists ((|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_448 (_ BitVec 32))) (= |#length| (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_448))) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1))))} is VALID [2022-02-20 23:45:04,090 INFO L290 TraceCheckUtils]: 10: Hoare triple {6329#(exists ((|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_448 (_ BitVec 32))) (= |#length| (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_448))) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1))))} SUMMARY for call write~intINTTYPE4(0bv32, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset, 4bv32); srcloc: L571-2 {6329#(exists ((|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_448 (_ BitVec 32))) (= |#length| (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_448))) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1))))} is VALID [2022-02-20 23:45:04,090 INFO L272 TraceCheckUtils]: 11: Hoare triple {6329#(exists ((|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_448 (_ BitVec 32))) (= |#length| (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_448))) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1))))} call list_add_tail(insert_sub_~sub~0#1.base, ~bvadd32(4bv32, insert_sub_~sub~0#1.offset), insert_sub_~head#1.base, insert_sub_~head#1.offset); {6298#true} is VALID [2022-02-20 23:45:04,090 INFO L290 TraceCheckUtils]: 12: Hoare triple {6298#true} ~new#1.base, ~new#1.offset := #in~new#1.base, #in~new#1.offset;~head#1.base, ~head#1.offset := #in~head#1.base, #in~head#1.offset; {6298#true} is VALID [2022-02-20 23:45:04,090 INFO L290 TraceCheckUtils]: 13: Hoare triple {6298#true} SUMMARY for call #t~mem3#1.base, #t~mem3#1.offset := read~$Pointer$(~head#1.base, ~bvadd32(4bv32, ~head#1.offset), 4bv32); srcloc: L538 {6298#true} is VALID [2022-02-20 23:45:04,090 INFO L290 TraceCheckUtils]: 14: Hoare triple {6298#true} assume { :begin_inline___list_add } true;__list_add_#in~new#1.base, __list_add_#in~new#1.offset, __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset, __list_add_#in~next#1.base, __list_add_#in~next#1.offset := ~new#1.base, ~new#1.offset, #t~mem3#1.base, #t~mem3#1.offset, ~head#1.base, ~head#1.offset;havoc __list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~prev#1.base, __list_add_~prev#1.offset, __list_add_~next#1.base, __list_add_~next#1.offset;__list_add_~new#1.base, __list_add_~new#1.offset := __list_add_#in~new#1.base, __list_add_#in~new#1.offset;__list_add_~prev#1.base, __list_add_~prev#1.offset := __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset;__list_add_~next#1.base, __list_add_~next#1.offset := __list_add_#in~next#1.base, __list_add_#in~next#1.offset; {6298#true} is VALID [2022-02-20 23:45:04,090 INFO L290 TraceCheckUtils]: 15: Hoare triple {6298#true} SUMMARY for call write~$Pointer$(__list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~next#1.base, ~bvadd32(4bv32, __list_add_~next#1.offset), 4bv32); srcloc: L531 {6298#true} is VALID [2022-02-20 23:45:04,090 INFO L290 TraceCheckUtils]: 16: Hoare triple {6298#true} SUMMARY for call write~$Pointer$(__list_add_~next#1.base, __list_add_~next#1.offset, __list_add_~new#1.base, __list_add_~new#1.offset, 4bv32); srcloc: L531-1 {6298#true} is VALID [2022-02-20 23:45:04,090 INFO L290 TraceCheckUtils]: 17: Hoare triple {6298#true} SUMMARY for call write~$Pointer$(__list_add_~prev#1.base, __list_add_~prev#1.offset, __list_add_~new#1.base, ~bvadd32(4bv32, __list_add_~new#1.offset), 4bv32); srcloc: L532 {6298#true} is VALID [2022-02-20 23:45:04,090 INFO L290 TraceCheckUtils]: 18: Hoare triple {6298#true} SUMMARY for call write~$Pointer$(__list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~prev#1.base, __list_add_~prev#1.offset, 4bv32); srcloc: L533 {6298#true} is VALID [2022-02-20 23:45:04,091 INFO L290 TraceCheckUtils]: 19: Hoare triple {6298#true} assume { :end_inline___list_add } true;havoc #t~mem3#1.base, #t~mem3#1.offset; {6298#true} is VALID [2022-02-20 23:45:04,091 INFO L290 TraceCheckUtils]: 20: Hoare triple {6298#true} assume true; {6298#true} is VALID [2022-02-20 23:45:04,092 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {6298#true} {6329#(exists ((|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_448 (_ BitVec 32))) (= |#length| (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_448))) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1))))} #140#return; {6329#(exists ((|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_448 (_ BitVec 32))) (= |#length| (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_448))) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1))))} is VALID [2022-02-20 23:45:04,093 INFO L290 TraceCheckUtils]: 22: Hoare triple {6329#(exists ((|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_448 (_ BitVec 32))) (= |#length| (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_448))) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1))))} assume { :end_inline_insert_sub } true; {6329#(exists ((|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_448 (_ BitVec 32))) (= |#length| (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_448))) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1))))} is VALID [2022-02-20 23:45:04,093 INFO L290 TraceCheckUtils]: 23: Hoare triple {6329#(exists ((|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_448 (_ BitVec 32))) (= |#length| (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_448))) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1))))} assume !(0bv32 != #t~nondet9#1);havoc #t~nondet9#1; {6329#(exists ((|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_448 (_ BitVec 32))) (= |#length| (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_448))) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1))))} is VALID [2022-02-20 23:45:04,094 INFO L290 TraceCheckUtils]: 24: Hoare triple {6329#(exists ((|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_448 (_ BitVec 32))) (= |#length| (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_448))) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1))))} assume true; {6329#(exists ((|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_448 (_ BitVec 32))) (= |#length| (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_448))) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1))))} is VALID [2022-02-20 23:45:04,096 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {6329#(exists ((|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_448 (_ BitVec 32))) (= |#length| (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_448))) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1))))} {6309#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} #142#return; {6381#(and (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:04,097 INFO L272 TraceCheckUtils]: 26: Hoare triple {6381#(and (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(16bv32, insert_top_~top~0#1.offset)); {6385#(and (= (select |#length| |create_sub_list_#in~sub#1.base|) (_ bv24 32)) (= (_ bv16 32) |create_sub_list_#in~sub#1.offset|))} is VALID [2022-02-20 23:45:04,097 INFO L290 TraceCheckUtils]: 27: Hoare triple {6385#(and (= (select |#length| |create_sub_list_#in~sub#1.base|) (_ bv24 32)) (= (_ bv16 32) |create_sub_list_#in~sub#1.offset|))} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {6389#(and (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (_ bv16 32) |create_sub_list_~sub#1.offset|))} is VALID [2022-02-20 23:45:04,098 INFO L290 TraceCheckUtils]: 28: Hoare triple {6389#(and (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (_ bv16 32) |create_sub_list_~sub#1.offset|))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(4bv32, ~sub#1.offset)), #length[~sub#1.base]) && ~bvule32(~bvadd32(4bv32, ~sub#1.offset), ~bvadd32(4bv32, ~bvadd32(4bv32, ~sub#1.offset)))) && ~bvule32(0bv32, ~bvadd32(4bv32, ~sub#1.offset))); {6299#false} is VALID [2022-02-20 23:45:04,098 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:45:04,098 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:45:04,539 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:45:04,539 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [586069777] [2022-02-20 23:45:04,539 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [586069777] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:45:04,539 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleCvc4 [1416765103] [2022-02-20 23:45:04,539 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:04,539 INFO L173 SolverBuilder]: Constructing external solver with command: cvc4 --incremental --print-success --lang smt [2022-02-20 23:45:04,540 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 [2022-02-20 23:45:04,547 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (exit command is (exit), workingDir is null) [2022-02-20 23:45:04,561 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (16)] Waiting until timeout for monitored process [2022-02-20 23:45:04,873 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:04,889 INFO L263 TraceCheckSpWp]: Trace formula consists of 224 conjuncts, 35 conjunts are in the unsatisfiable core [2022-02-20 23:45:04,905 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:04,906 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:04,923 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:04,927 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:05,186 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:05,567 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:45:05,568 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:05,578 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:45:05,578 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 12 treesize of output 12 [2022-02-20 23:45:05,649 INFO L290 TraceCheckUtils]: 0: Hoare triple {6298#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); {6298#true} is VALID [2022-02-20 23:45:05,651 INFO L290 TraceCheckUtils]: 1: Hoare triple {6298#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_~#top~1#1.base, main_~#top~1#1.offset;call main_~#top~1#1.base, main_~#top~1#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, main_~#top~1#1.offset, 4bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, ~bvadd32(4bv32, main_~#top~1#1.offset), 4bv32);assume { :begin_inline_create_top } true;create_top_#in~top#1.base, create_top_#in~top#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc create_top_#t~nondet11#1, create_top_~top#1.base, create_top_~top#1.offset;create_top_~top#1.base, create_top_~top#1.offset := create_top_#in~top#1.base, create_top_#in~top#1.offset; {6298#true} is VALID [2022-02-20 23:45:05,654 INFO L290 TraceCheckUtils]: 2: Hoare triple {6298#true} assume { :begin_inline_insert_top } true;insert_top_#in~head#1.base, insert_top_#in~head#1.offset := create_top_~top#1.base, create_top_~top#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset, insert_top_~head#1.base, insert_top_~head#1.offset, insert_top_~top~0#1.base, insert_top_~top~0#1.offset;insert_top_~head#1.base, insert_top_~head#1.offset := insert_top_#in~head#1.base, insert_top_#in~head#1.offset;call insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset := #Ultimate.allocOnHeap(24bv32);insert_top_~top~0#1.base, insert_top_~top~0#1.offset := insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset; {6309#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:05,655 INFO L290 TraceCheckUtils]: 3: Hoare triple {6309#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} assume !(insert_top_~top~0#1.base == 0bv32 && insert_top_~top~0#1.offset == 0bv32); {6309#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:05,655 INFO L272 TraceCheckUtils]: 4: Hoare triple {6309#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(8bv32, insert_top_~top~0#1.offset)); {6316#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} is VALID [2022-02-20 23:45:05,656 INFO L290 TraceCheckUtils]: 5: Hoare triple {6316#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {6424#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|) (= |create_sub_list_#in~sub#1.offset| |create_sub_list_~sub#1.offset|) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} is VALID [2022-02-20 23:45:05,656 INFO L290 TraceCheckUtils]: 6: Hoare triple {6424#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|) (= |create_sub_list_#in~sub#1.offset| |create_sub_list_~sub#1.offset|) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~bvadd32(4bv32, ~sub#1.offset), 4bv32); srcloc: L578 {6424#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|) (= |create_sub_list_#in~sub#1.offset| |create_sub_list_~sub#1.offset|) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} is VALID [2022-02-20 23:45:05,657 INFO L290 TraceCheckUtils]: 7: Hoare triple {6424#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|) (= |create_sub_list_#in~sub#1.offset| |create_sub_list_~sub#1.offset|) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~sub#1.offset, 4bv32); srcloc: L578-1 {6424#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|) (= |create_sub_list_#in~sub#1.offset| |create_sub_list_~sub#1.offset|) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} is VALID [2022-02-20 23:45:05,659 INFO L290 TraceCheckUtils]: 8: Hoare triple {6424#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|) (= |create_sub_list_#in~sub#1.offset| |create_sub_list_~sub#1.offset|) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} assume { :begin_inline_insert_sub } true;insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset := ~sub#1.base, ~sub#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset, insert_sub_~head#1.base, insert_sub_~head#1.offset, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset;insert_sub_~head#1.base, insert_sub_~head#1.offset := insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset;call insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32);insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset := insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset; {6434#(and (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (= |create_sub_list_insert_sub_~head#1.offset| |create_sub_list_#in~sub#1.offset|) (exists ((v_ArrVal_511 (_ BitVec 32)) (|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (= (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_511) |#length|) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1)))))} is VALID [2022-02-20 23:45:05,660 INFO L290 TraceCheckUtils]: 9: Hoare triple {6434#(and (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (= |create_sub_list_insert_sub_~head#1.offset| |create_sub_list_#in~sub#1.offset|) (exists ((v_ArrVal_511 (_ BitVec 32)) (|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (= (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_511) |#length|) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1)))))} assume !(insert_sub_~sub~0#1.base == 0bv32 && insert_sub_~sub~0#1.offset == 0bv32); {6434#(and (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (= |create_sub_list_insert_sub_~head#1.offset| |create_sub_list_#in~sub#1.offset|) (exists ((v_ArrVal_511 (_ BitVec 32)) (|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (= (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_511) |#length|) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1)))))} is VALID [2022-02-20 23:45:05,661 INFO L290 TraceCheckUtils]: 10: Hoare triple {6434#(and (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (= |create_sub_list_insert_sub_~head#1.offset| |create_sub_list_#in~sub#1.offset|) (exists ((v_ArrVal_511 (_ BitVec 32)) (|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (= (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_511) |#length|) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1)))))} SUMMARY for call write~intINTTYPE4(0bv32, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset, 4bv32); srcloc: L571-2 {6434#(and (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (= |create_sub_list_insert_sub_~head#1.offset| |create_sub_list_#in~sub#1.offset|) (exists ((v_ArrVal_511 (_ BitVec 32)) (|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (= (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_511) |#length|) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1)))))} is VALID [2022-02-20 23:45:05,661 INFO L272 TraceCheckUtils]: 11: Hoare triple {6434#(and (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (= |create_sub_list_insert_sub_~head#1.offset| |create_sub_list_#in~sub#1.offset|) (exists ((v_ArrVal_511 (_ BitVec 32)) (|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (= (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_511) |#length|) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1)))))} call list_add_tail(insert_sub_~sub~0#1.base, ~bvadd32(4bv32, insert_sub_~sub~0#1.offset), insert_sub_~head#1.base, insert_sub_~head#1.offset); {6298#true} is VALID [2022-02-20 23:45:05,661 INFO L290 TraceCheckUtils]: 12: Hoare triple {6298#true} ~new#1.base, ~new#1.offset := #in~new#1.base, #in~new#1.offset;~head#1.base, ~head#1.offset := #in~head#1.base, #in~head#1.offset; {6447#(and (= |list_add_tail_#in~head#1.base| |list_add_tail_~head#1.base|) (= |list_add_tail_#in~head#1.offset| |list_add_tail_~head#1.offset|))} is VALID [2022-02-20 23:45:05,662 INFO L290 TraceCheckUtils]: 13: Hoare triple {6447#(and (= |list_add_tail_#in~head#1.base| |list_add_tail_~head#1.base|) (= |list_add_tail_#in~head#1.offset| |list_add_tail_~head#1.offset|))} SUMMARY for call #t~mem3#1.base, #t~mem3#1.offset := read~$Pointer$(~head#1.base, ~bvadd32(4bv32, ~head#1.offset), 4bv32); srcloc: L538 {6447#(and (= |list_add_tail_#in~head#1.base| |list_add_tail_~head#1.base|) (= |list_add_tail_#in~head#1.offset| |list_add_tail_~head#1.offset|))} is VALID [2022-02-20 23:45:05,662 INFO L290 TraceCheckUtils]: 14: Hoare triple {6447#(and (= |list_add_tail_#in~head#1.base| |list_add_tail_~head#1.base|) (= |list_add_tail_#in~head#1.offset| |list_add_tail_~head#1.offset|))} assume { :begin_inline___list_add } true;__list_add_#in~new#1.base, __list_add_#in~new#1.offset, __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset, __list_add_#in~next#1.base, __list_add_#in~next#1.offset := ~new#1.base, ~new#1.offset, #t~mem3#1.base, #t~mem3#1.offset, ~head#1.base, ~head#1.offset;havoc __list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~prev#1.base, __list_add_~prev#1.offset, __list_add_~next#1.base, __list_add_~next#1.offset;__list_add_~new#1.base, __list_add_~new#1.offset := __list_add_#in~new#1.base, __list_add_#in~new#1.offset;__list_add_~prev#1.base, __list_add_~prev#1.offset := __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset;__list_add_~next#1.base, __list_add_~next#1.offset := __list_add_#in~next#1.base, __list_add_#in~next#1.offset; {6454#(and (= |list_add_tail_#in~head#1.base| |list_add_tail___list_add_~next#1.base|) (= |list_add_tail_#in~head#1.offset| |list_add_tail___list_add_~next#1.offset|))} is VALID [2022-02-20 23:45:05,663 INFO L290 TraceCheckUtils]: 15: Hoare triple {6454#(and (= |list_add_tail_#in~head#1.base| |list_add_tail___list_add_~next#1.base|) (= |list_add_tail_#in~head#1.offset| |list_add_tail___list_add_~next#1.offset|))} SUMMARY for call write~$Pointer$(__list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~next#1.base, ~bvadd32(4bv32, __list_add_~next#1.offset), 4bv32); srcloc: L531 {6458#(bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|))} is VALID [2022-02-20 23:45:05,664 INFO L290 TraceCheckUtils]: 16: Hoare triple {6458#(bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|))} SUMMARY for call write~$Pointer$(__list_add_~next#1.base, __list_add_~next#1.offset, __list_add_~new#1.base, __list_add_~new#1.offset, 4bv32); srcloc: L531-1 {6458#(bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|))} is VALID [2022-02-20 23:45:05,664 INFO L290 TraceCheckUtils]: 17: Hoare triple {6458#(bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|))} SUMMARY for call write~$Pointer$(__list_add_~prev#1.base, __list_add_~prev#1.offset, __list_add_~new#1.base, ~bvadd32(4bv32, __list_add_~new#1.offset), 4bv32); srcloc: L532 {6458#(bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|))} is VALID [2022-02-20 23:45:05,664 INFO L290 TraceCheckUtils]: 18: Hoare triple {6458#(bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|))} SUMMARY for call write~$Pointer$(__list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~prev#1.base, __list_add_~prev#1.offset, 4bv32); srcloc: L533 {6458#(bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|))} is VALID [2022-02-20 23:45:05,665 INFO L290 TraceCheckUtils]: 19: Hoare triple {6458#(bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|))} assume { :end_inline___list_add } true;havoc #t~mem3#1.base, #t~mem3#1.offset; {6458#(bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|))} is VALID [2022-02-20 23:45:05,665 INFO L290 TraceCheckUtils]: 20: Hoare triple {6458#(bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|))} assume true; {6458#(bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|))} is VALID [2022-02-20 23:45:05,666 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {6458#(bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|))} {6434#(and (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (= |create_sub_list_insert_sub_~head#1.offset| |create_sub_list_#in~sub#1.offset|) (exists ((v_ArrVal_511 (_ BitVec 32)) (|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (= (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_511) |#length|) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1)))))} #140#return; {6477#(and (exists ((v_ArrVal_511 (_ BitVec 32)) (|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (= (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_511) |#length|) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1)))) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|)))} is VALID [2022-02-20 23:45:05,667 INFO L290 TraceCheckUtils]: 22: Hoare triple {6477#(and (exists ((v_ArrVal_511 (_ BitVec 32)) (|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (= (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_511) |#length|) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1)))) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|)))} assume { :end_inline_insert_sub } true; {6477#(and (exists ((v_ArrVal_511 (_ BitVec 32)) (|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (= (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_511) |#length|) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1)))) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|)))} is VALID [2022-02-20 23:45:05,667 INFO L290 TraceCheckUtils]: 23: Hoare triple {6477#(and (exists ((v_ArrVal_511 (_ BitVec 32)) (|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (= (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_511) |#length|) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1)))) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|)))} assume !(0bv32 != #t~nondet9#1);havoc #t~nondet9#1; {6477#(and (exists ((v_ArrVal_511 (_ BitVec 32)) (|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (= (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_511) |#length|) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1)))) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|)))} is VALID [2022-02-20 23:45:05,668 INFO L290 TraceCheckUtils]: 24: Hoare triple {6477#(and (exists ((v_ArrVal_511 (_ BitVec 32)) (|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (= (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_511) |#length|) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1)))) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|)))} assume true; {6477#(and (exists ((v_ArrVal_511 (_ BitVec 32)) (|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (= (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_511) |#length|) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1)))) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|)))} is VALID [2022-02-20 23:45:05,669 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {6477#(and (exists ((v_ArrVal_511 (_ BitVec 32)) (|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (= (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_511) |#length|) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1)))) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|)))} {6309#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} #142#return; {6381#(and (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:05,670 INFO L272 TraceCheckUtils]: 26: Hoare triple {6381#(and (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(16bv32, insert_top_~top~0#1.offset)); {6385#(and (= (select |#length| |create_sub_list_#in~sub#1.base|) (_ bv24 32)) (= (_ bv16 32) |create_sub_list_#in~sub#1.offset|))} is VALID [2022-02-20 23:45:05,670 INFO L290 TraceCheckUtils]: 27: Hoare triple {6385#(and (= (select |#length| |create_sub_list_#in~sub#1.base|) (_ bv24 32)) (= (_ bv16 32) |create_sub_list_#in~sub#1.offset|))} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {6389#(and (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (_ bv16 32) |create_sub_list_~sub#1.offset|))} is VALID [2022-02-20 23:45:05,671 INFO L290 TraceCheckUtils]: 28: Hoare triple {6389#(and (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (_ bv16 32) |create_sub_list_~sub#1.offset|))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(4bv32, ~sub#1.offset)), #length[~sub#1.base]) && ~bvule32(~bvadd32(4bv32, ~sub#1.offset), ~bvadd32(4bv32, ~bvadd32(4bv32, ~sub#1.offset)))) && ~bvule32(0bv32, ~bvadd32(4bv32, ~sub#1.offset))); {6299#false} is VALID [2022-02-20 23:45:05,671 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:45:05,671 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:45:06,320 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleCvc4 [1416765103] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:45:06,320 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:45:06,320 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 12] total 13 [2022-02-20 23:45:06,320 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1395715543] [2022-02-20 23:45:06,320 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:45:06,321 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 12 states have (on average 3.5) internal successors, (42), 12 states have internal predecessors, (42), 4 states have call successors, (4), 3 states have call predecessors, (4), 4 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) Word has length 29 [2022-02-20 23:45:06,321 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:06,321 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 14 states, 12 states have (on average 3.5) internal successors, (42), 12 states have internal predecessors, (42), 4 states have call successors, (4), 3 states have call predecessors, (4), 4 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-20 23:45:06,407 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:06,407 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-02-20 23:45:06,408 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:45:06,408 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-02-20 23:45:06,408 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=46, Invalid=295, Unknown=1, NotChecked=0, Total=342 [2022-02-20 23:45:06,408 INFO L87 Difference]: Start difference. First operand 131 states and 145 transitions. Second operand has 14 states, 12 states have (on average 3.5) internal successors, (42), 12 states have internal predecessors, (42), 4 states have call successors, (4), 3 states have call predecessors, (4), 4 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-20 23:45:16,332 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:16,332 INFO L93 Difference]: Finished difference Result 146 states and 164 transitions. [2022-02-20 23:45:16,333 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-02-20 23:45:16,333 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 12 states have (on average 3.5) internal successors, (42), 12 states have internal predecessors, (42), 4 states have call successors, (4), 3 states have call predecessors, (4), 4 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) Word has length 29 [2022-02-20 23:45:16,333 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:16,333 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 12 states have (on average 3.5) internal successors, (42), 12 states have internal predecessors, (42), 4 states have call successors, (4), 3 states have call predecessors, (4), 4 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-20 23:45:16,335 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 102 transitions. [2022-02-20 23:45:16,335 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 12 states have (on average 3.5) internal successors, (42), 12 states have internal predecessors, (42), 4 states have call successors, (4), 3 states have call predecessors, (4), 4 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-20 23:45:16,336 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 102 transitions. [2022-02-20 23:45:16,337 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 102 transitions. [2022-02-20 23:45:16,504 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:16,507 INFO L225 Difference]: With dead ends: 146 [2022-02-20 23:45:16,507 INFO L226 Difference]: Without dead ends: 146 [2022-02-20 23:45:16,507 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 71 GetRequests, 47 SyntacticMatches, 2 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 75 ImplicationChecksByTransitivity, 10.9s TimeCoverageRelationStatistics Valid=78, Invalid=469, Unknown=5, NotChecked=0, Total=552 [2022-02-20 23:45:16,508 INFO L933 BasicCegarLoop]: 56 mSDtfsCounter, 60 mSDsluCounter, 377 mSDsCounter, 0 mSdLazyCounter, 280 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 60 SdHoareTripleChecker+Valid, 433 SdHoareTripleChecker+Invalid, 386 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 280 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 99 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:16,508 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [60 Valid, 433 Invalid, 386 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 280 Invalid, 0 Unknown, 99 Unchecked, 0.6s Time] [2022-02-20 23:45:16,508 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 146 states. [2022-02-20 23:45:16,511 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 146 to 139. [2022-02-20 23:45:16,511 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:16,511 INFO L82 GeneralOperation]: Start isEquivalent. First operand 146 states. Second operand has 139 states, 99 states have (on average 1.393939393939394) internal successors, (138), 123 states have internal predecessors, (138), 8 states have call successors, (8), 8 states have call predecessors, (8), 7 states have return successors, (9), 7 states have call predecessors, (9), 8 states have call successors, (9) [2022-02-20 23:45:16,512 INFO L74 IsIncluded]: Start isIncluded. First operand 146 states. Second operand has 139 states, 99 states have (on average 1.393939393939394) internal successors, (138), 123 states have internal predecessors, (138), 8 states have call successors, (8), 8 states have call predecessors, (8), 7 states have return successors, (9), 7 states have call predecessors, (9), 8 states have call successors, (9) [2022-02-20 23:45:16,514 INFO L87 Difference]: Start difference. First operand 146 states. Second operand has 139 states, 99 states have (on average 1.393939393939394) internal successors, (138), 123 states have internal predecessors, (138), 8 states have call successors, (8), 8 states have call predecessors, (8), 7 states have return successors, (9), 7 states have call predecessors, (9), 8 states have call successors, (9) [2022-02-20 23:45:16,517 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:16,517 INFO L93 Difference]: Finished difference Result 146 states and 164 transitions. [2022-02-20 23:45:16,517 INFO L276 IsEmpty]: Start isEmpty. Operand 146 states and 164 transitions. [2022-02-20 23:45:16,517 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:16,517 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:16,517 INFO L74 IsIncluded]: Start isIncluded. First operand has 139 states, 99 states have (on average 1.393939393939394) internal successors, (138), 123 states have internal predecessors, (138), 8 states have call successors, (8), 8 states have call predecessors, (8), 7 states have return successors, (9), 7 states have call predecessors, (9), 8 states have call successors, (9) Second operand 146 states. [2022-02-20 23:45:16,518 INFO L87 Difference]: Start difference. First operand has 139 states, 99 states have (on average 1.393939393939394) internal successors, (138), 123 states have internal predecessors, (138), 8 states have call successors, (8), 8 states have call predecessors, (8), 7 states have return successors, (9), 7 states have call predecessors, (9), 8 states have call successors, (9) Second operand 146 states. [2022-02-20 23:45:16,520 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:16,520 INFO L93 Difference]: Finished difference Result 146 states and 164 transitions. [2022-02-20 23:45:16,520 INFO L276 IsEmpty]: Start isEmpty. Operand 146 states and 164 transitions. [2022-02-20 23:45:16,521 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:16,521 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:16,521 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:16,521 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:16,521 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 139 states, 99 states have (on average 1.393939393939394) internal successors, (138), 123 states have internal predecessors, (138), 8 states have call successors, (8), 8 states have call predecessors, (8), 7 states have return successors, (9), 7 states have call predecessors, (9), 8 states have call successors, (9) [2022-02-20 23:45:16,523 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 139 states to 139 states and 155 transitions. [2022-02-20 23:45:16,524 INFO L78 Accepts]: Start accepts. Automaton has 139 states and 155 transitions. Word has length 29 [2022-02-20 23:45:16,524 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:16,524 INFO L470 AbstractCegarLoop]: Abstraction has 139 states and 155 transitions. [2022-02-20 23:45:16,524 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 12 states have (on average 3.5) internal successors, (42), 12 states have internal predecessors, (42), 4 states have call successors, (4), 3 states have call predecessors, (4), 4 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-20 23:45:16,524 INFO L276 IsEmpty]: Start isEmpty. Operand 139 states and 155 transitions. [2022-02-20 23:45:16,527 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-02-20 23:45:16,527 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:16,528 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:45:16,535 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (16)] Forceful destruction successful, exit code 0 [2022-02-20 23:45:16,741 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:45:16,932 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt,15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:45:16,933 INFO L402 AbstractCegarLoop]: === Iteration 15 === Targeting list_add_tailErr1REQUIRES_VIOLATION === [create_sub_listErr0REQUIRES_VIOLATION, create_sub_listErr1REQUIRES_VIOLATION, create_sub_listErr2REQUIRES_VIOLATION, create_sub_listErr3REQUIRES_VIOLATION (and 27 more)] === [2022-02-20 23:45:16,933 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:16,933 INFO L85 PathProgramCache]: Analyzing trace with hash 1572542800, now seen corresponding path program 1 times [2022-02-20 23:45:16,934 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:45:16,934 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1533548939] [2022-02-20 23:45:16,934 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:16,934 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:45:16,934 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:45:16,935 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:45:16,938 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:45:17,158 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:17,170 INFO L263 TraceCheckSpWp]: Trace formula consists of 299 conjuncts, 39 conjunts are in the unsatisfiable core [2022-02-20 23:45:17,184 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:17,185 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:17,694 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:45:17,695 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:17,704 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:45:17,705 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:17,839 INFO L290 TraceCheckUtils]: 0: Hoare triple {7100#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); {7100#true} is VALID [2022-02-20 23:45:17,839 INFO L290 TraceCheckUtils]: 1: Hoare triple {7100#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_~#top~1#1.base, main_~#top~1#1.offset;call main_~#top~1#1.base, main_~#top~1#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, main_~#top~1#1.offset, 4bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, ~bvadd32(4bv32, main_~#top~1#1.offset), 4bv32);assume { :begin_inline_create_top } true;create_top_#in~top#1.base, create_top_#in~top#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc create_top_#t~nondet11#1, create_top_~top#1.base, create_top_~top#1.offset;create_top_~top#1.base, create_top_~top#1.offset := create_top_#in~top#1.base, create_top_#in~top#1.offset; {7100#true} is VALID [2022-02-20 23:45:17,839 INFO L290 TraceCheckUtils]: 2: Hoare triple {7100#true} assume { :begin_inline_insert_top } true;insert_top_#in~head#1.base, insert_top_#in~head#1.offset := create_top_~top#1.base, create_top_~top#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset, insert_top_~head#1.base, insert_top_~head#1.offset, insert_top_~top~0#1.base, insert_top_~top~0#1.offset;insert_top_~head#1.base, insert_top_~head#1.offset := insert_top_#in~head#1.base, insert_top_#in~head#1.offset;call insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset := #Ultimate.allocOnHeap(24bv32);insert_top_~top~0#1.base, insert_top_~top~0#1.offset := insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset; {7111#(= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:45:17,840 INFO L290 TraceCheckUtils]: 3: Hoare triple {7111#(= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32))} assume !(insert_top_~top~0#1.base == 0bv32 && insert_top_~top~0#1.offset == 0bv32); {7111#(= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:45:17,840 INFO L272 TraceCheckUtils]: 4: Hoare triple {7111#(= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32))} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(8bv32, insert_top_~top~0#1.offset)); {7100#true} is VALID [2022-02-20 23:45:17,840 INFO L290 TraceCheckUtils]: 5: Hoare triple {7100#true} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {7121#(and (= |create_sub_list_#in~sub#1.offset| |create_sub_list_~sub#1.offset|) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} is VALID [2022-02-20 23:45:17,841 INFO L290 TraceCheckUtils]: 6: Hoare triple {7121#(and (= |create_sub_list_#in~sub#1.offset| |create_sub_list_~sub#1.offset|) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~bvadd32(4bv32, ~sub#1.offset), 4bv32); srcloc: L578 {7121#(and (= |create_sub_list_#in~sub#1.offset| |create_sub_list_~sub#1.offset|) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} is VALID [2022-02-20 23:45:17,842 INFO L290 TraceCheckUtils]: 7: Hoare triple {7121#(and (= |create_sub_list_#in~sub#1.offset| |create_sub_list_~sub#1.offset|) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~sub#1.offset, 4bv32); srcloc: L578-1 {7121#(and (= |create_sub_list_#in~sub#1.offset| |create_sub_list_~sub#1.offset|) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} is VALID [2022-02-20 23:45:17,842 INFO L290 TraceCheckUtils]: 8: Hoare triple {7121#(and (= |create_sub_list_#in~sub#1.offset| |create_sub_list_~sub#1.offset|) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} assume { :begin_inline_insert_sub } true;insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset := ~sub#1.base, ~sub#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset, insert_sub_~head#1.base, insert_sub_~head#1.offset, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset;insert_sub_~head#1.base, insert_sub_~head#1.offset := insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset;call insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32);insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset := insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset; {7131#(and (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (= |create_sub_list_insert_sub_~head#1.offset| |create_sub_list_#in~sub#1.offset|))} is VALID [2022-02-20 23:45:17,843 INFO L290 TraceCheckUtils]: 9: Hoare triple {7131#(and (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (= |create_sub_list_insert_sub_~head#1.offset| |create_sub_list_#in~sub#1.offset|))} assume !(insert_sub_~sub~0#1.base == 0bv32 && insert_sub_~sub~0#1.offset == 0bv32); {7131#(and (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (= |create_sub_list_insert_sub_~head#1.offset| |create_sub_list_#in~sub#1.offset|))} is VALID [2022-02-20 23:45:17,844 INFO L290 TraceCheckUtils]: 10: Hoare triple {7131#(and (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (= |create_sub_list_insert_sub_~head#1.offset| |create_sub_list_#in~sub#1.offset|))} SUMMARY for call write~intINTTYPE4(0bv32, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset, 4bv32); srcloc: L571-2 {7131#(and (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (= |create_sub_list_insert_sub_~head#1.offset| |create_sub_list_#in~sub#1.offset|))} is VALID [2022-02-20 23:45:17,844 INFO L272 TraceCheckUtils]: 11: Hoare triple {7131#(and (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (= |create_sub_list_insert_sub_~head#1.offset| |create_sub_list_#in~sub#1.offset|))} call list_add_tail(insert_sub_~sub~0#1.base, ~bvadd32(4bv32, insert_sub_~sub~0#1.offset), insert_sub_~head#1.base, insert_sub_~head#1.offset); {7100#true} is VALID [2022-02-20 23:45:17,844 INFO L290 TraceCheckUtils]: 12: Hoare triple {7100#true} ~new#1.base, ~new#1.offset := #in~new#1.base, #in~new#1.offset;~head#1.base, ~head#1.offset := #in~head#1.base, #in~head#1.offset; {7144#(and (= |list_add_tail_#in~head#1.base| |list_add_tail_~head#1.base|) (= |list_add_tail_#in~head#1.offset| |list_add_tail_~head#1.offset|))} is VALID [2022-02-20 23:45:17,845 INFO L290 TraceCheckUtils]: 13: Hoare triple {7144#(and (= |list_add_tail_#in~head#1.base| |list_add_tail_~head#1.base|) (= |list_add_tail_#in~head#1.offset| |list_add_tail_~head#1.offset|))} SUMMARY for call #t~mem3#1.base, #t~mem3#1.offset := read~$Pointer$(~head#1.base, ~bvadd32(4bv32, ~head#1.offset), 4bv32); srcloc: L538 {7148#(and (= |list_add_tail_#in~head#1.base| |list_add_tail_~head#1.base|) (= |list_add_tail_#in~head#1.offset| |list_add_tail_~head#1.offset|) (= (_ bv1 1) (select |#valid| |list_add_tail_~head#1.base|)))} is VALID [2022-02-20 23:45:17,846 INFO L290 TraceCheckUtils]: 14: Hoare triple {7148#(and (= |list_add_tail_#in~head#1.base| |list_add_tail_~head#1.base|) (= |list_add_tail_#in~head#1.offset| |list_add_tail_~head#1.offset|) (= (_ bv1 1) (select |#valid| |list_add_tail_~head#1.base|)))} assume { :begin_inline___list_add } true;__list_add_#in~new#1.base, __list_add_#in~new#1.offset, __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset, __list_add_#in~next#1.base, __list_add_#in~next#1.offset := ~new#1.base, ~new#1.offset, #t~mem3#1.base, #t~mem3#1.offset, ~head#1.base, ~head#1.offset;havoc __list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~prev#1.base, __list_add_~prev#1.offset, __list_add_~next#1.base, __list_add_~next#1.offset;__list_add_~new#1.base, __list_add_~new#1.offset := __list_add_#in~new#1.base, __list_add_#in~new#1.offset;__list_add_~prev#1.base, __list_add_~prev#1.offset := __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset;__list_add_~next#1.base, __list_add_~next#1.offset := __list_add_#in~next#1.base, __list_add_#in~next#1.offset; {7152#(and (= |list_add_tail_#in~head#1.base| |list_add_tail___list_add_~next#1.base|) (= |list_add_tail_#in~head#1.offset| |list_add_tail___list_add_~next#1.offset|) (= (select |#valid| |list_add_tail___list_add_~next#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:45:17,847 INFO L290 TraceCheckUtils]: 15: Hoare triple {7152#(and (= |list_add_tail_#in~head#1.base| |list_add_tail___list_add_~next#1.base|) (= |list_add_tail_#in~head#1.offset| |list_add_tail___list_add_~next#1.offset|) (= (select |#valid| |list_add_tail___list_add_~next#1.base|) (_ bv1 1)))} SUMMARY for call write~$Pointer$(__list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~next#1.base, ~bvadd32(4bv32, __list_add_~next#1.offset), 4bv32); srcloc: L531 {7156#(and (= (select |#valid| |list_add_tail_#in~head#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|)))} is VALID [2022-02-20 23:45:17,847 INFO L290 TraceCheckUtils]: 16: Hoare triple {7156#(and (= (select |#valid| |list_add_tail_#in~head#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|)))} SUMMARY for call write~$Pointer$(__list_add_~next#1.base, __list_add_~next#1.offset, __list_add_~new#1.base, __list_add_~new#1.offset, 4bv32); srcloc: L531-1 {7156#(and (= (select |#valid| |list_add_tail_#in~head#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|)))} is VALID [2022-02-20 23:45:17,848 INFO L290 TraceCheckUtils]: 17: Hoare triple {7156#(and (= (select |#valid| |list_add_tail_#in~head#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|)))} SUMMARY for call write~$Pointer$(__list_add_~prev#1.base, __list_add_~prev#1.offset, __list_add_~new#1.base, ~bvadd32(4bv32, __list_add_~new#1.offset), 4bv32); srcloc: L532 {7156#(and (= (select |#valid| |list_add_tail_#in~head#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|)))} is VALID [2022-02-20 23:45:17,849 INFO L290 TraceCheckUtils]: 18: Hoare triple {7156#(and (= (select |#valid| |list_add_tail_#in~head#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|)))} SUMMARY for call write~$Pointer$(__list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~prev#1.base, __list_add_~prev#1.offset, 4bv32); srcloc: L533 {7156#(and (= (select |#valid| |list_add_tail_#in~head#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|)))} is VALID [2022-02-20 23:45:17,849 INFO L290 TraceCheckUtils]: 19: Hoare triple {7156#(and (= (select |#valid| |list_add_tail_#in~head#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|)))} assume { :end_inline___list_add } true;havoc #t~mem3#1.base, #t~mem3#1.offset; {7156#(and (= (select |#valid| |list_add_tail_#in~head#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|)))} is VALID [2022-02-20 23:45:17,850 INFO L290 TraceCheckUtils]: 20: Hoare triple {7156#(and (= (select |#valid| |list_add_tail_#in~head#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|)))} assume true; {7156#(and (= (select |#valid| |list_add_tail_#in~head#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|)))} is VALID [2022-02-20 23:45:17,851 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {7156#(and (= (select |#valid| |list_add_tail_#in~head#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|)))} {7131#(and (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (= |create_sub_list_insert_sub_~head#1.offset| |create_sub_list_#in~sub#1.offset|))} #140#return; {7175#(and (= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|)) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|)))} is VALID [2022-02-20 23:45:17,852 INFO L290 TraceCheckUtils]: 22: Hoare triple {7175#(and (= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|)) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|)))} assume { :end_inline_insert_sub } true; {7175#(and (= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|)) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|)))} is VALID [2022-02-20 23:45:17,852 INFO L290 TraceCheckUtils]: 23: Hoare triple {7175#(and (= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|)) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|)))} assume !(0bv32 != #t~nondet9#1);havoc #t~nondet9#1; {7175#(and (= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|)) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|)))} is VALID [2022-02-20 23:45:17,853 INFO L290 TraceCheckUtils]: 24: Hoare triple {7175#(and (= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|)) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|)))} assume true; {7175#(and (= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|)) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|)))} is VALID [2022-02-20 23:45:17,854 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {7175#(and (= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|)) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|)))} {7111#(= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32))} #142#return; {7188#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv16 32) |ULTIMATE.start_insert_top_~top~0#1.offset|) (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:17,854 INFO L272 TraceCheckUtils]: 26: Hoare triple {7188#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv16 32) |ULTIMATE.start_insert_top_~top~0#1.offset|) (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(16bv32, insert_top_~top~0#1.offset)); {7192#(and (bvule |create_sub_list_#in~sub#1.offset| (select |#length| |create_sub_list_#in~sub#1.base|)) (= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|)) (= (bvadd (_ bv4294967280 32) |create_sub_list_#in~sub#1.offset|) (_ bv0 32)))} is VALID [2022-02-20 23:45:17,855 INFO L290 TraceCheckUtils]: 27: Hoare triple {7192#(and (bvule |create_sub_list_#in~sub#1.offset| (select |#length| |create_sub_list_#in~sub#1.base|)) (= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|)) (= (bvadd (_ bv4294967280 32) |create_sub_list_#in~sub#1.offset|) (_ bv0 32)))} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {7196#(and (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)) (= (bvadd (_ bv4294967280 32) |create_sub_list_~sub#1.offset|) (_ bv0 32)) (bvule |create_sub_list_~sub#1.offset| (select |#length| |create_sub_list_~sub#1.base|)))} is VALID [2022-02-20 23:45:17,856 INFO L290 TraceCheckUtils]: 28: Hoare triple {7196#(and (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)) (= (bvadd (_ bv4294967280 32) |create_sub_list_~sub#1.offset|) (_ bv0 32)) (bvule |create_sub_list_~sub#1.offset| (select |#length| |create_sub_list_~sub#1.base|)))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~bvadd32(4bv32, ~sub#1.offset), 4bv32); srcloc: L578 {7200#(and (bvule (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|) (select |#length| |create_sub_list_~sub#1.base|)) (= (bvadd (bvneg (select |#valid| |create_sub_list_~sub#1.base|)) (_ bv1 1)) (_ bv0 1)) (= (_ bv16 32) |create_sub_list_~sub#1.offset|))} is VALID [2022-02-20 23:45:17,857 INFO L290 TraceCheckUtils]: 29: Hoare triple {7200#(and (bvule (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|) (select |#length| |create_sub_list_~sub#1.base|)) (= (bvadd (bvneg (select |#valid| |create_sub_list_~sub#1.base|)) (_ bv1 1)) (_ bv0 1)) (= (_ bv16 32) |create_sub_list_~sub#1.offset|))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~sub#1.offset, 4bv32); srcloc: L578-1 {7200#(and (bvule (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|) (select |#length| |create_sub_list_~sub#1.base|)) (= (bvadd (bvneg (select |#valid| |create_sub_list_~sub#1.base|)) (_ bv1 1)) (_ bv0 1)) (= (_ bv16 32) |create_sub_list_~sub#1.offset|))} is VALID [2022-02-20 23:45:17,858 INFO L290 TraceCheckUtils]: 30: Hoare triple {7200#(and (bvule (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|) (select |#length| |create_sub_list_~sub#1.base|)) (= (bvadd (bvneg (select |#valid| |create_sub_list_~sub#1.base|)) (_ bv1 1)) (_ bv0 1)) (= (_ bv16 32) |create_sub_list_~sub#1.offset|))} assume { :begin_inline_insert_sub } true;insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset := ~sub#1.base, ~sub#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset, insert_sub_~head#1.base, insert_sub_~head#1.offset, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset;insert_sub_~head#1.base, insert_sub_~head#1.offset := insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset;call insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32);insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset := insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset; {7207#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv16 32)) (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_insert_sub_~head#1.base|)))} is VALID [2022-02-20 23:45:17,859 INFO L290 TraceCheckUtils]: 31: Hoare triple {7207#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv16 32)) (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_insert_sub_~head#1.base|)))} assume !(insert_sub_~sub~0#1.base == 0bv32 && insert_sub_~sub~0#1.offset == 0bv32); {7207#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv16 32)) (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_insert_sub_~head#1.base|)))} is VALID [2022-02-20 23:45:17,860 INFO L290 TraceCheckUtils]: 32: Hoare triple {7207#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv16 32)) (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_insert_sub_~head#1.base|)))} SUMMARY for call write~intINTTYPE4(0bv32, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset, 4bv32); srcloc: L571-2 {7207#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv16 32)) (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_insert_sub_~head#1.base|)))} is VALID [2022-02-20 23:45:17,861 INFO L272 TraceCheckUtils]: 33: Hoare triple {7207#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv16 32)) (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_insert_sub_~head#1.base|)))} call list_add_tail(insert_sub_~sub~0#1.base, ~bvadd32(4bv32, insert_sub_~sub~0#1.offset), insert_sub_~head#1.base, insert_sub_~head#1.offset); {7217#(and (bvule (_ bv24 32) (select |#length| |list_add_tail_#in~head#1.base|)) (= (_ bv16 32) |list_add_tail_#in~head#1.offset|))} is VALID [2022-02-20 23:45:17,862 INFO L290 TraceCheckUtils]: 34: Hoare triple {7217#(and (bvule (_ bv24 32) (select |#length| |list_add_tail_#in~head#1.base|)) (= (_ bv16 32) |list_add_tail_#in~head#1.offset|))} ~new#1.base, ~new#1.offset := #in~new#1.base, #in~new#1.offset;~head#1.base, ~head#1.offset := #in~head#1.base, #in~head#1.offset; {7221#(and (= (_ bv16 32) |list_add_tail_~head#1.offset|) (bvule (_ bv24 32) (select |#length| |list_add_tail_~head#1.base|)))} is VALID [2022-02-20 23:45:17,862 INFO L290 TraceCheckUtils]: 35: Hoare triple {7221#(and (= (_ bv16 32) |list_add_tail_~head#1.offset|) (bvule (_ bv24 32) (select |#length| |list_add_tail_~head#1.base|)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(4bv32, ~head#1.offset)), #length[~head#1.base]) && ~bvule32(~bvadd32(4bv32, ~head#1.offset), ~bvadd32(4bv32, ~bvadd32(4bv32, ~head#1.offset)))) && ~bvule32(0bv32, ~bvadd32(4bv32, ~head#1.offset))); {7101#false} is VALID [2022-02-20 23:45:17,863 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 2 proven. 7 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:45:17,863 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:45:19,032 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:45:19,040 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 32 treesize of output 26 [2022-02-20 23:45:19,586 INFO L356 Elim1Store]: treesize reduction 7, result has 12.5 percent of original size [2022-02-20 23:45:19,586 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 38 treesize of output 32 [2022-02-20 23:45:19,599 INFO L356 Elim1Store]: treesize reduction 5, result has 37.5 percent of original size [2022-02-20 23:45:19,599 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 19 treesize of output 18 [2022-02-20 23:45:20,457 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:45:20,458 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 38 treesize of output 40 [2022-02-20 23:45:20,584 INFO L356 Elim1Store]: treesize reduction 5, result has 37.5 percent of original size [2022-02-20 23:45:20,584 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 16 treesize of output 15 [2022-02-20 23:45:20,825 INFO L290 TraceCheckUtils]: 35: Hoare triple {7225#(and (bvule (bvadd (_ bv4 32) |list_add_tail_~head#1.offset|) (bvadd (_ bv8 32) |list_add_tail_~head#1.offset|)) (bvule (bvadd (_ bv8 32) |list_add_tail_~head#1.offset|) (select |#length| |list_add_tail_~head#1.base|)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(4bv32, ~head#1.offset)), #length[~head#1.base]) && ~bvule32(~bvadd32(4bv32, ~head#1.offset), ~bvadd32(4bv32, ~bvadd32(4bv32, ~head#1.offset)))) && ~bvule32(0bv32, ~bvadd32(4bv32, ~head#1.offset))); {7101#false} is VALID [2022-02-20 23:45:20,826 INFO L290 TraceCheckUtils]: 34: Hoare triple {7229#(and (bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|)) (bvule (bvadd (_ bv4 32) |list_add_tail_#in~head#1.offset|) (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|)))} ~new#1.base, ~new#1.offset := #in~new#1.base, #in~new#1.offset;~head#1.base, ~head#1.offset := #in~head#1.base, #in~head#1.offset; {7225#(and (bvule (bvadd (_ bv4 32) |list_add_tail_~head#1.offset|) (bvadd (_ bv8 32) |list_add_tail_~head#1.offset|)) (bvule (bvadd (_ bv8 32) |list_add_tail_~head#1.offset|) (select |#length| |list_add_tail_~head#1.base|)))} is VALID [2022-02-20 23:45:20,827 INFO L272 TraceCheckUtils]: 33: Hoare triple {7233#(and (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_insert_sub_~head#1.base|)) (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv4 32)) (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32))))} call list_add_tail(insert_sub_~sub~0#1.base, ~bvadd32(4bv32, insert_sub_~sub~0#1.offset), insert_sub_~head#1.base, insert_sub_~head#1.offset); {7229#(and (bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|)) (bvule (bvadd (_ bv4 32) |list_add_tail_#in~head#1.offset|) (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|)))} is VALID [2022-02-20 23:45:20,828 INFO L290 TraceCheckUtils]: 32: Hoare triple {7233#(and (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_insert_sub_~head#1.base|)) (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv4 32)) (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32))))} SUMMARY for call write~intINTTYPE4(0bv32, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset, 4bv32); srcloc: L571-2 {7233#(and (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_insert_sub_~head#1.base|)) (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv4 32)) (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32))))} is VALID [2022-02-20 23:45:20,828 INFO L290 TraceCheckUtils]: 31: Hoare triple {7233#(and (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_insert_sub_~head#1.base|)) (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv4 32)) (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32))))} assume !(insert_sub_~sub~0#1.base == 0bv32 && insert_sub_~sub~0#1.offset == 0bv32); {7233#(and (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_insert_sub_~head#1.base|)) (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv4 32)) (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32))))} is VALID [2022-02-20 23:45:20,837 INFO L290 TraceCheckUtils]: 30: Hoare triple {7243#(forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32))) (or (and (bvule (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|) (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|)) (forall ((v_ArrVal_601 (_ BitVec 32))) (bvule (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |create_sub_list_~sub#1.base|)))) (not (= (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|)) (_ bv0 1)))))} assume { :begin_inline_insert_sub } true;insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset := ~sub#1.base, ~sub#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset, insert_sub_~head#1.base, insert_sub_~head#1.offset, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset;insert_sub_~head#1.base, insert_sub_~head#1.offset := insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset;call insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32);insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset := insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset; {7233#(and (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_insert_sub_~head#1.base|)) (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv4 32)) (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32))))} is VALID [2022-02-20 23:45:20,839 INFO L290 TraceCheckUtils]: 29: Hoare triple {7243#(forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32))) (or (and (bvule (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|) (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|)) (forall ((v_ArrVal_601 (_ BitVec 32))) (bvule (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |create_sub_list_~sub#1.base|)))) (not (= (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|)) (_ bv0 1)))))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~sub#1.offset, 4bv32); srcloc: L578-1 {7243#(forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32))) (or (and (bvule (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|) (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|)) (forall ((v_ArrVal_601 (_ BitVec 32))) (bvule (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |create_sub_list_~sub#1.base|)))) (not (= (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|)) (_ bv0 1)))))} is VALID [2022-02-20 23:45:20,840 INFO L290 TraceCheckUtils]: 28: Hoare triple {7250#(or (forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32))) (or (and (bvule (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|) (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|)) (forall ((v_ArrVal_601 (_ BitVec 32))) (bvule (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |create_sub_list_~sub#1.base|)))) (not (= (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|)) (_ bv0 1))))) (not (bvule (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|) (select |#length| |create_sub_list_~sub#1.base|))))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~bvadd32(4bv32, ~sub#1.offset), 4bv32); srcloc: L578 {7243#(forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32))) (or (and (bvule (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|) (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|)) (forall ((v_ArrVal_601 (_ BitVec 32))) (bvule (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |create_sub_list_~sub#1.base|)))) (not (= (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|)) (_ bv0 1)))))} is VALID [2022-02-20 23:45:20,842 INFO L290 TraceCheckUtils]: 27: Hoare triple {7254#(or (forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32))) (or (and (forall ((v_ArrVal_601 (_ BitVec 32))) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |create_sub_list_#in~sub#1.base|))) (bvule (bvadd (_ bv4 32) |create_sub_list_#in~sub#1.offset|) (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)))) (not (= (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|)) (_ bv0 1))))) (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|))))} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {7250#(or (forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32))) (or (and (bvule (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|) (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|)) (forall ((v_ArrVal_601 (_ BitVec 32))) (bvule (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |create_sub_list_~sub#1.base|)))) (not (= (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|)) (_ bv0 1))))) (not (bvule (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|) (select |#length| |create_sub_list_~sub#1.base|))))} is VALID [2022-02-20 23:45:20,947 INFO L272 TraceCheckUtils]: 26: Hoare triple {7258#(or (forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32))) (or (and (bvule (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv20 32)) (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv24 32))) (forall ((v_ArrVal_601 (_ BitVec 32))) (bvule (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv24 32)) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |ULTIMATE.start_insert_top_~top~0#1.base|)))) (not (= (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|)) (_ bv0 1))))) (not (bvule (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv24 32)) (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|))))} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(16bv32, insert_top_~top~0#1.offset)); {7254#(or (forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32))) (or (and (forall ((v_ArrVal_601 (_ BitVec 32))) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |create_sub_list_#in~sub#1.base|))) (bvule (bvadd (_ bv4 32) |create_sub_list_#in~sub#1.offset|) (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)))) (not (= (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|)) (_ bv0 1))))) (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|))))} is VALID [2022-02-20 23:45:21,012 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {7266#(or (forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (bvule (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |create_sub_list_#in~sub#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))))) (not (bvule (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|) (select |#length| |create_sub_list_#in~sub#1.base|))) (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))))} {7262#(bvule (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv20 32)) (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv24 32)))} #142#return; {7258#(or (forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32))) (or (and (bvule (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv20 32)) (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv24 32))) (forall ((v_ArrVal_601 (_ BitVec 32))) (bvule (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv24 32)) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |ULTIMATE.start_insert_top_~top~0#1.base|)))) (not (= (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|)) (_ bv0 1))))) (not (bvule (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv24 32)) (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|))))} is VALID [2022-02-20 23:45:21,014 INFO L290 TraceCheckUtils]: 24: Hoare triple {7266#(or (forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (bvule (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |create_sub_list_#in~sub#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))))) (not (bvule (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|) (select |#length| |create_sub_list_#in~sub#1.base|))) (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))))} assume true; {7266#(or (forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (bvule (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |create_sub_list_#in~sub#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))))) (not (bvule (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|) (select |#length| |create_sub_list_#in~sub#1.base|))) (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))))} is VALID [2022-02-20 23:45:21,015 INFO L290 TraceCheckUtils]: 23: Hoare triple {7266#(or (forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (bvule (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |create_sub_list_#in~sub#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))))) (not (bvule (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|) (select |#length| |create_sub_list_#in~sub#1.base|))) (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))))} assume !(0bv32 != #t~nondet9#1);havoc #t~nondet9#1; {7266#(or (forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (bvule (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |create_sub_list_#in~sub#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))))) (not (bvule (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|) (select |#length| |create_sub_list_#in~sub#1.base|))) (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))))} is VALID [2022-02-20 23:45:21,017 INFO L290 TraceCheckUtils]: 22: Hoare triple {7266#(or (forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (bvule (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |create_sub_list_#in~sub#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))))) (not (bvule (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|) (select |#length| |create_sub_list_#in~sub#1.base|))) (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))))} assume { :end_inline_insert_sub } true; {7266#(or (forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (bvule (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |create_sub_list_#in~sub#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))))) (not (bvule (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|) (select |#length| |create_sub_list_#in~sub#1.base|))) (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))))} is VALID [2022-02-20 23:45:21,054 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {7283#(forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (|v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (not (bvule (bvadd |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ bv12 32)) (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|))) (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |list_add_tail_#in~head#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))) (not (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select |#length| |list_add_tail_#in~head#1.base|)))))} {7279#(or (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))))} #140#return; {7266#(or (forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (bvule (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |create_sub_list_#in~sub#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))))) (not (bvule (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|) (select |#length| |create_sub_list_#in~sub#1.base|))) (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))))} is VALID [2022-02-20 23:45:21,055 INFO L290 TraceCheckUtils]: 20: Hoare triple {7283#(forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (|v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (not (bvule (bvadd |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ bv12 32)) (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|))) (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |list_add_tail_#in~head#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))) (not (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select |#length| |list_add_tail_#in~head#1.base|)))))} assume true; {7283#(forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (|v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (not (bvule (bvadd |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ bv12 32)) (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|))) (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |list_add_tail_#in~head#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))) (not (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select |#length| |list_add_tail_#in~head#1.base|)))))} is VALID [2022-02-20 23:45:21,056 INFO L290 TraceCheckUtils]: 19: Hoare triple {7283#(forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (|v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (not (bvule (bvadd |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ bv12 32)) (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|))) (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |list_add_tail_#in~head#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))) (not (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select |#length| |list_add_tail_#in~head#1.base|)))))} assume { :end_inline___list_add } true;havoc #t~mem3#1.base, #t~mem3#1.offset; {7283#(forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (|v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (not (bvule (bvadd |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ bv12 32)) (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|))) (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |list_add_tail_#in~head#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))) (not (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select |#length| |list_add_tail_#in~head#1.base|)))))} is VALID [2022-02-20 23:45:21,057 INFO L290 TraceCheckUtils]: 18: Hoare triple {7283#(forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (|v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (not (bvule (bvadd |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ bv12 32)) (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|))) (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |list_add_tail_#in~head#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))) (not (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select |#length| |list_add_tail_#in~head#1.base|)))))} SUMMARY for call write~$Pointer$(__list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~prev#1.base, __list_add_~prev#1.offset, 4bv32); srcloc: L533 {7283#(forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (|v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (not (bvule (bvadd |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ bv12 32)) (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|))) (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |list_add_tail_#in~head#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))) (not (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select |#length| |list_add_tail_#in~head#1.base|)))))} is VALID [2022-02-20 23:45:21,057 INFO L290 TraceCheckUtils]: 17: Hoare triple {7283#(forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (|v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (not (bvule (bvadd |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ bv12 32)) (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|))) (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |list_add_tail_#in~head#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))) (not (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select |#length| |list_add_tail_#in~head#1.base|)))))} SUMMARY for call write~$Pointer$(__list_add_~prev#1.base, __list_add_~prev#1.offset, __list_add_~new#1.base, ~bvadd32(4bv32, __list_add_~new#1.offset), 4bv32); srcloc: L532 {7283#(forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (|v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (not (bvule (bvadd |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ bv12 32)) (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|))) (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |list_add_tail_#in~head#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))) (not (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select |#length| |list_add_tail_#in~head#1.base|)))))} is VALID [2022-02-20 23:45:21,058 INFO L290 TraceCheckUtils]: 16: Hoare triple {7283#(forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (|v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (not (bvule (bvadd |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ bv12 32)) (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|))) (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |list_add_tail_#in~head#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))) (not (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select |#length| |list_add_tail_#in~head#1.base|)))))} SUMMARY for call write~$Pointer$(__list_add_~next#1.base, __list_add_~next#1.offset, __list_add_~new#1.base, __list_add_~new#1.offset, 4bv32); srcloc: L531-1 {7283#(forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (|v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (not (bvule (bvadd |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ bv12 32)) (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|))) (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |list_add_tail_#in~head#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))) (not (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select |#length| |list_add_tail_#in~head#1.base|)))))} is VALID [2022-02-20 23:45:21,069 INFO L290 TraceCheckUtils]: 15: Hoare triple {7302#(not (= (_ bv0 1) (bvneg (bvneg (bvneg (select |#valid| |list_add_tail_#in~head#1.base|))))))} SUMMARY for call write~$Pointer$(__list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~next#1.base, ~bvadd32(4bv32, __list_add_~next#1.offset), 4bv32); srcloc: L531 {7283#(forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (|v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (not (bvule (bvadd |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ bv12 32)) (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|))) (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |list_add_tail_#in~head#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))) (not (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select |#length| |list_add_tail_#in~head#1.base|)))))} is VALID [2022-02-20 23:45:21,070 INFO L290 TraceCheckUtils]: 14: Hoare triple {7302#(not (= (_ bv0 1) (bvneg (bvneg (bvneg (select |#valid| |list_add_tail_#in~head#1.base|))))))} assume { :begin_inline___list_add } true;__list_add_#in~new#1.base, __list_add_#in~new#1.offset, __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset, __list_add_#in~next#1.base, __list_add_#in~next#1.offset := ~new#1.base, ~new#1.offset, #t~mem3#1.base, #t~mem3#1.offset, ~head#1.base, ~head#1.offset;havoc __list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~prev#1.base, __list_add_~prev#1.offset, __list_add_~next#1.base, __list_add_~next#1.offset;__list_add_~new#1.base, __list_add_~new#1.offset := __list_add_#in~new#1.base, __list_add_#in~new#1.offset;__list_add_~prev#1.base, __list_add_~prev#1.offset := __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset;__list_add_~next#1.base, __list_add_~next#1.offset := __list_add_#in~next#1.base, __list_add_#in~next#1.offset; {7302#(not (= (_ bv0 1) (bvneg (bvneg (bvneg (select |#valid| |list_add_tail_#in~head#1.base|))))))} is VALID [2022-02-20 23:45:21,070 INFO L290 TraceCheckUtils]: 13: Hoare triple {7309#(= |list_add_tail_#in~head#1.base| |list_add_tail_~head#1.base|)} SUMMARY for call #t~mem3#1.base, #t~mem3#1.offset := read~$Pointer$(~head#1.base, ~bvadd32(4bv32, ~head#1.offset), 4bv32); srcloc: L538 {7302#(not (= (_ bv0 1) (bvneg (bvneg (bvneg (select |#valid| |list_add_tail_#in~head#1.base|))))))} is VALID [2022-02-20 23:45:21,071 INFO L290 TraceCheckUtils]: 12: Hoare triple {7100#true} ~new#1.base, ~new#1.offset := #in~new#1.base, #in~new#1.offset;~head#1.base, ~head#1.offset := #in~head#1.base, #in~head#1.offset; {7309#(= |list_add_tail_#in~head#1.base| |list_add_tail_~head#1.base|)} is VALID [2022-02-20 23:45:21,071 INFO L272 TraceCheckUtils]: 11: Hoare triple {7279#(or (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))))} call list_add_tail(insert_sub_~sub~0#1.base, ~bvadd32(4bv32, insert_sub_~sub~0#1.offset), insert_sub_~head#1.base, insert_sub_~head#1.offset); {7100#true} is VALID [2022-02-20 23:45:21,072 INFO L290 TraceCheckUtils]: 10: Hoare triple {7279#(or (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))))} SUMMARY for call write~intINTTYPE4(0bv32, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset, 4bv32); srcloc: L571-2 {7279#(or (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))))} is VALID [2022-02-20 23:45:21,072 INFO L290 TraceCheckUtils]: 9: Hoare triple {7279#(or (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))))} assume !(insert_sub_~sub~0#1.base == 0bv32 && insert_sub_~sub~0#1.offset == 0bv32); {7279#(or (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))))} is VALID [2022-02-20 23:45:21,073 INFO L290 TraceCheckUtils]: 8: Hoare triple {7322#(or (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} assume { :begin_inline_insert_sub } true;insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset := ~sub#1.base, ~sub#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset, insert_sub_~head#1.base, insert_sub_~head#1.offset, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset;insert_sub_~head#1.base, insert_sub_~head#1.offset := insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset;call insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32);insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset := insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset; {7279#(or (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))))} is VALID [2022-02-20 23:45:21,076 INFO L290 TraceCheckUtils]: 7: Hoare triple {7322#(or (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~sub#1.offset, 4bv32); srcloc: L578-1 {7322#(or (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} is VALID [2022-02-20 23:45:21,077 INFO L290 TraceCheckUtils]: 6: Hoare triple {7322#(or (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~bvadd32(4bv32, ~sub#1.offset), 4bv32); srcloc: L578 {7322#(or (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} is VALID [2022-02-20 23:45:21,078 INFO L290 TraceCheckUtils]: 5: Hoare triple {7100#true} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {7322#(or (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} is VALID [2022-02-20 23:45:21,078 INFO L272 TraceCheckUtils]: 4: Hoare triple {7262#(bvule (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv20 32)) (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv24 32)))} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(8bv32, insert_top_~top~0#1.offset)); {7100#true} is VALID [2022-02-20 23:45:21,078 INFO L290 TraceCheckUtils]: 3: Hoare triple {7262#(bvule (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv20 32)) (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv24 32)))} assume !(insert_top_~top~0#1.base == 0bv32 && insert_top_~top~0#1.offset == 0bv32); {7262#(bvule (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv20 32)) (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv24 32)))} is VALID [2022-02-20 23:45:21,079 INFO L290 TraceCheckUtils]: 2: Hoare triple {7100#true} assume { :begin_inline_insert_top } true;insert_top_#in~head#1.base, insert_top_#in~head#1.offset := create_top_~top#1.base, create_top_~top#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset, insert_top_~head#1.base, insert_top_~head#1.offset, insert_top_~top~0#1.base, insert_top_~top~0#1.offset;insert_top_~head#1.base, insert_top_~head#1.offset := insert_top_#in~head#1.base, insert_top_#in~head#1.offset;call insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset := #Ultimate.allocOnHeap(24bv32);insert_top_~top~0#1.base, insert_top_~top~0#1.offset := insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset; {7262#(bvule (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv20 32)) (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv24 32)))} is VALID [2022-02-20 23:45:21,079 INFO L290 TraceCheckUtils]: 1: Hoare triple {7100#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_~#top~1#1.base, main_~#top~1#1.offset;call main_~#top~1#1.base, main_~#top~1#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, main_~#top~1#1.offset, 4bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, ~bvadd32(4bv32, main_~#top~1#1.offset), 4bv32);assume { :begin_inline_create_top } true;create_top_#in~top#1.base, create_top_#in~top#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc create_top_#t~nondet11#1, create_top_~top#1.base, create_top_~top#1.offset;create_top_~top#1.base, create_top_~top#1.offset := create_top_#in~top#1.base, create_top_#in~top#1.offset; {7100#true} is VALID [2022-02-20 23:45:21,079 INFO L290 TraceCheckUtils]: 0: Hoare triple {7100#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); {7100#true} is VALID [2022-02-20 23:45:21,079 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 2 proven. 7 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:45:21,080 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:45:21,080 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1533548939] [2022-02-20 23:45:21,080 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1533548939] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:45:21,080 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:45:21,080 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 15] total 30 [2022-02-20 23:45:21,080 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [723395903] [2022-02-20 23:45:21,080 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:45:21,081 INFO L78 Accepts]: Start accepts. Automaton has has 31 states, 28 states have (on average 2.0714285714285716) internal successors, (58), 25 states have internal predecessors, (58), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Word has length 36 [2022-02-20 23:45:21,081 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:21,082 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 31 states, 28 states have (on average 2.0714285714285716) internal successors, (58), 25 states have internal predecessors, (58), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:45:21,946 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:21,946 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 31 states [2022-02-20 23:45:21,946 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:45:21,946 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 31 interpolants. [2022-02-20 23:45:21,946 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=86, Invalid=844, Unknown=0, NotChecked=0, Total=930 [2022-02-20 23:45:21,947 INFO L87 Difference]: Start difference. First operand 139 states and 155 transitions. Second operand has 31 states, 28 states have (on average 2.0714285714285716) internal successors, (58), 25 states have internal predecessors, (58), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:45:29,343 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:29,343 INFO L93 Difference]: Finished difference Result 139 states and 149 transitions. [2022-02-20 23:45:29,343 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-02-20 23:45:29,343 INFO L78 Accepts]: Start accepts. Automaton has has 31 states, 28 states have (on average 2.0714285714285716) internal successors, (58), 25 states have internal predecessors, (58), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Word has length 36 [2022-02-20 23:45:29,344 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:29,344 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 28 states have (on average 2.0714285714285716) internal successors, (58), 25 states have internal predecessors, (58), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:45:29,345 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 113 transitions. [2022-02-20 23:45:29,346 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 28 states have (on average 2.0714285714285716) internal successors, (58), 25 states have internal predecessors, (58), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:45:29,347 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 113 transitions. [2022-02-20 23:45:29,347 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states and 113 transitions. [2022-02-20 23:45:29,531 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 113 edges. 113 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:29,532 INFO L225 Difference]: With dead ends: 139 [2022-02-20 23:45:29,533 INFO L226 Difference]: Without dead ends: 139 [2022-02-20 23:45:29,533 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 86 GetRequests, 41 SyntacticMatches, 4 SemanticMatches, 41 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 286 ImplicationChecksByTransitivity, 2.7s TimeCoverageRelationStatistics Valid=227, Invalid=1579, Unknown=0, NotChecked=0, Total=1806 [2022-02-20 23:45:29,534 INFO L933 BasicCegarLoop]: 66 mSDtfsCounter, 148 mSDsluCounter, 891 mSDsCounter, 0 mSdLazyCounter, 648 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 149 SdHoareTripleChecker+Valid, 957 SdHoareTripleChecker+Invalid, 1015 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 648 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 346 IncrementalHoareTripleChecker+Unchecked, 2.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:29,534 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [149 Valid, 957 Invalid, 1015 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 648 Invalid, 0 Unknown, 346 Unchecked, 2.1s Time] [2022-02-20 23:45:29,535 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 139 states. [2022-02-20 23:45:29,537 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 139 to 136. [2022-02-20 23:45:29,537 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:29,538 INFO L82 GeneralOperation]: Start isEquivalent. First operand 139 states. Second operand has 136 states, 98 states have (on average 1.336734693877551) internal successors, (131), 120 states have internal predecessors, (131), 8 states have call successors, (8), 8 states have call predecessors, (8), 7 states have return successors, (9), 7 states have call predecessors, (9), 8 states have call successors, (9) [2022-02-20 23:45:29,538 INFO L74 IsIncluded]: Start isIncluded. First operand 139 states. Second operand has 136 states, 98 states have (on average 1.336734693877551) internal successors, (131), 120 states have internal predecessors, (131), 8 states have call successors, (8), 8 states have call predecessors, (8), 7 states have return successors, (9), 7 states have call predecessors, (9), 8 states have call successors, (9) [2022-02-20 23:45:29,539 INFO L87 Difference]: Start difference. First operand 139 states. Second operand has 136 states, 98 states have (on average 1.336734693877551) internal successors, (131), 120 states have internal predecessors, (131), 8 states have call successors, (8), 8 states have call predecessors, (8), 7 states have return successors, (9), 7 states have call predecessors, (9), 8 states have call successors, (9) [2022-02-20 23:45:29,541 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:29,542 INFO L93 Difference]: Finished difference Result 139 states and 149 transitions. [2022-02-20 23:45:29,542 INFO L276 IsEmpty]: Start isEmpty. Operand 139 states and 149 transitions. [2022-02-20 23:45:29,542 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:29,542 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:29,543 INFO L74 IsIncluded]: Start isIncluded. First operand has 136 states, 98 states have (on average 1.336734693877551) internal successors, (131), 120 states have internal predecessors, (131), 8 states have call successors, (8), 8 states have call predecessors, (8), 7 states have return successors, (9), 7 states have call predecessors, (9), 8 states have call successors, (9) Second operand 139 states. [2022-02-20 23:45:29,543 INFO L87 Difference]: Start difference. First operand has 136 states, 98 states have (on average 1.336734693877551) internal successors, (131), 120 states have internal predecessors, (131), 8 states have call successors, (8), 8 states have call predecessors, (8), 7 states have return successors, (9), 7 states have call predecessors, (9), 8 states have call successors, (9) Second operand 139 states. [2022-02-20 23:45:29,548 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:29,549 INFO L93 Difference]: Finished difference Result 139 states and 149 transitions. [2022-02-20 23:45:29,549 INFO L276 IsEmpty]: Start isEmpty. Operand 139 states and 149 transitions. [2022-02-20 23:45:29,549 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:29,549 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:29,549 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:29,550 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:29,550 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 136 states, 98 states have (on average 1.336734693877551) internal successors, (131), 120 states have internal predecessors, (131), 8 states have call successors, (8), 8 states have call predecessors, (8), 7 states have return successors, (9), 7 states have call predecessors, (9), 8 states have call successors, (9) [2022-02-20 23:45:29,552 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 136 states to 136 states and 148 transitions. [2022-02-20 23:45:29,552 INFO L78 Accepts]: Start accepts. Automaton has 136 states and 148 transitions. Word has length 36 [2022-02-20 23:45:29,553 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:29,553 INFO L470 AbstractCegarLoop]: Abstraction has 136 states and 148 transitions. [2022-02-20 23:45:29,553 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 31 states, 28 states have (on average 2.0714285714285716) internal successors, (58), 25 states have internal predecessors, (58), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:45:29,553 INFO L276 IsEmpty]: Start isEmpty. Operand 136 states and 148 transitions. [2022-02-20 23:45:29,554 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-02-20 23:45:29,554 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:29,554 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:45:29,570 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (17)] Ended with exit code 0 [2022-02-20 23:45:29,769 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 17 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:45:29,770 INFO L402 AbstractCegarLoop]: === Iteration 16 === Targeting list_add_tailErr8REQUIRES_VIOLATION === [create_sub_listErr0REQUIRES_VIOLATION, create_sub_listErr1REQUIRES_VIOLATION, create_sub_listErr2REQUIRES_VIOLATION, create_sub_listErr3REQUIRES_VIOLATION (and 27 more)] === [2022-02-20 23:45:29,770 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:29,770 INFO L85 PathProgramCache]: Analyzing trace with hash 1746009876, now seen corresponding path program 1 times [2022-02-20 23:45:29,771 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:45:29,771 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [529395180] [2022-02-20 23:45:29,771 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:29,771 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:45:29,771 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:45:29,772 INFO L229 MonitoredProcess]: Starting monitored process 18 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:29,773 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (18)] Waiting until timeout for monitored process [2022-02-20 23:45:30,166 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:30,181 INFO L263 TraceCheckSpWp]: Trace formula consists of 314 conjuncts, 76 conjunts are in the unsatisfiable core [2022-02-20 23:45:30,203 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:30,205 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:30,214 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:30,290 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 13 treesize of output 9 [2022-02-20 23:45:30,296 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 13 treesize of output 9 [2022-02-20 23:45:30,346 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:45:30,347 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:45:30,357 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:45:30,358 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:45:30,433 INFO L356 Elim1Store]: treesize reduction 15, result has 46.4 percent of original size [2022-02-20 23:45:30,433 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 18 treesize of output 25 [2022-02-20 23:45:30,571 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 16 treesize of output 18 [2022-02-20 23:45:30,592 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 16 treesize of output 18 [2022-02-20 23:45:30,680 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 7 treesize of output 3 [2022-02-20 23:45:30,701 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 7 treesize of output 3 [2022-02-20 23:45:32,356 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 2 new quantified variables, introduced 0 case distinctions, treesize of input 65 treesize of output 36 [2022-02-20 23:45:32,369 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:45:32,370 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [529395180] [2022-02-20 23:45:32,370 WARN L325 FreeRefinementEngine]: Global settings require throwing the following exception [2022-02-20 23:45:32,384 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (18)] Forceful destruction successful, exit code 0 [2022-02-20 23:45:32,570 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 18 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:45:32,571 FATAL L? ?]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction has thrown an exception: java.lang.AssertionError: var is still there: v_arrayElimArr_1 at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.arrays.Elim1Store.elim1(Elim1Store.java:285) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.arrays.ElimStorePlain.applyComplexEliminationRules(ElimStorePlain.java:427) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.DualJunctionSaa.tryToEliminate(DualJunctionSaa.java:184) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.DualJunctionSaa.tryToEliminateOne3(DualJunctionSaa.java:166) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.DualJunctionSaa.tryToEliminateOne2(DualJunctionSaa.java:154) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.DualJunctionSaa.tryToEliminateOne1(DualJunctionSaa.java:142) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.DualJunctionSaa.tryToEliminateOne0(DualJunctionSaa.java:126) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.DualJunctionSaa.tryToEliminateOne(DualJunctionSaa.java:110) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.DualJunctionSaa.tryExhaustivelyToEliminate(DualJunctionSaa.java:95) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.DualJunctionSaa.tryToEliminate(DualJunctionSaa.java:90) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.tryToEliminateOne(QuantifierPusher.java:904) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.applyNewEliminationTechniquesExhaustively(QuantifierPusher.java:865) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.applyDualJunctionEliminationTechniques(QuantifierPusher.java:783) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.tryToPushOverDualFiniteConnective2(QuantifierPusher.java:425) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.tryToPushOverDualFiniteConnective(QuantifierPusher.java:355) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.QuantifierPushTermWalker.convert(QuantifierPushTermWalker.java:172) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.QuantifierPushTermWalker.convert(QuantifierPushTermWalker.java:1) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.TermContextTransformationEngine$ApplicationTermTask.doStep(TermContextTransformationEngine.java:169) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.TermContextTransformationEngine.transform(TermContextTransformationEngine.java:77) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.TermContextTransformationEngine.transform(TermContextTransformationEngine.java:61) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.QuantifierPushTermWalker.eliminate(QuantifierPushTermWalker.java:261) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.QuantifierPushTermWalker.eliminate(QuantifierPushTermWalker.java:247) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.PartialQuantifierElimination.eliminate(PartialQuantifierElimination.java:92) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.predicates.IterativePredicateTransformer$QuantifierEliminationPostprocessor.postprocess(IterativePredicateTransformer.java:238) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.predicates.IterativePredicateTransformer.applyPostprocessors(IterativePredicateTransformer.java:420) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.predicates.IterativePredicateTransformer.computeStrongestPostconditionSequence(IterativePredicateTransformer.java:199) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.singletracecheck.TraceCheckSpWp.computeInterpolantsUsingUnsatCore(TraceCheckSpWp.java:299) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.singletracecheck.TraceCheckSpWp.computeInterpolants(TraceCheckSpWp.java:185) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.singletracecheck.TraceCheckSpWp.(TraceCheckSpWp.java:163) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.IpTcStrategyModuleSpWp.construct(IpTcStrategyModuleSpWp.java:108) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.IpTcStrategyModuleSpWp.construct(IpTcStrategyModuleSpWp.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:32,576 INFO L158 Benchmark]: Toolchain (without parser) took 53069.67ms. Allocated memory was 58.7MB in the beginning and 92.3MB in the end (delta: 33.6MB). Free memory was 36.1MB in the beginning and 38.7MB in the end (delta: -2.6MB). Peak memory consumption was 30.7MB. Max. memory is 16.1GB. [2022-02-20 23:45:32,576 INFO L158 Benchmark]: CDTParser took 0.23ms. Allocated memory is still 58.7MB. Free memory is still 40.7MB. There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 23:45:32,576 INFO L158 Benchmark]: CACSL2BoogieTranslator took 469.56ms. Allocated memory is still 58.7MB. Free memory was 35.8MB in the beginning and 26.6MB in the end (delta: 9.3MB). Peak memory consumption was 12.6MB. Max. memory is 16.1GB. [2022-02-20 23:45:32,576 INFO L158 Benchmark]: Boogie Procedure Inliner took 78.05ms. Allocated memory was 58.7MB in the beginning and 75.5MB in the end (delta: 16.8MB). Free memory was 26.4MB in the beginning and 56.0MB in the end (delta: -29.7MB). Peak memory consumption was 5.3MB. Max. memory is 16.1GB. [2022-02-20 23:45:32,576 INFO L158 Benchmark]: Boogie Preprocessor took 55.15ms. Allocated memory is still 75.5MB. Free memory was 56.0MB in the beginning and 53.3MB in the end (delta: 2.7MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2022-02-20 23:45:32,577 INFO L158 Benchmark]: RCFGBuilder took 635.12ms. Allocated memory is still 75.5MB. Free memory was 53.3MB in the beginning and 51.6MB in the end (delta: 1.7MB). Peak memory consumption was 18.9MB. Max. memory is 16.1GB. [2022-02-20 23:45:32,577 INFO L158 Benchmark]: TraceAbstraction took 51826.33ms. Allocated memory was 75.5MB in the beginning and 92.3MB in the end (delta: 16.8MB). Free memory was 51.1MB in the beginning and 38.7MB in the end (delta: 12.5MB). Peak memory consumption was 28.5MB. Max. memory is 16.1GB. [2022-02-20 23:45:32,578 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.23ms. Allocated memory is still 58.7MB. Free memory is still 40.7MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 469.56ms. Allocated memory is still 58.7MB. Free memory was 35.8MB in the beginning and 26.6MB in the end (delta: 9.3MB). Peak memory consumption was 12.6MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 78.05ms. Allocated memory was 58.7MB in the beginning and 75.5MB in the end (delta: 16.8MB). Free memory was 26.4MB in the beginning and 56.0MB in the end (delta: -29.7MB). Peak memory consumption was 5.3MB. Max. memory is 16.1GB. * Boogie Preprocessor took 55.15ms. Allocated memory is still 75.5MB. Free memory was 56.0MB in the beginning and 53.3MB in the end (delta: 2.7MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * RCFGBuilder took 635.12ms. Allocated memory is still 75.5MB. Free memory was 53.3MB in the beginning and 51.6MB in the end (delta: 1.7MB). Peak memory consumption was 18.9MB. Max. memory is 16.1GB. * TraceAbstraction took 51826.33ms. Allocated memory was 75.5MB in the beginning and 92.3MB in the end (delta: 16.8MB). Free memory was 51.1MB in the beginning and 38.7MB in the end (delta: 12.5MB). Peak memory consumption was 28.5MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - ExceptionOrErrorResult: AssertionError: var is still there: v_arrayElimArr_1 de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: AssertionError: var is still there: v_arrayElimArr_1: de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.arrays.Elim1Store.elim1(Elim1Store.java:285) RESULT: Ultimate could not prove your program: Toolchain returned no result. [2022-02-20 23:45:32,609 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 Writing output log to file Ultimate.log Result: ERROR: ExceptionOrErrorResult: AssertionError: var is still there: v_arrayElimArr_1