./Ultimate.py --spec ../sv-benchmarks/c/properties/valid-memsafety.prp --file ../sv-benchmarks/c/memsafety/test-0134.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-0134.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 554aa7448188134a862651a68c0992659f18748881f2b6912b6dbf17d440798c --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:44:39,480 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:44:39,482 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:44:39,516 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:44:39,516 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:44:39,519 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:44:39,520 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:44:39,522 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:44:39,523 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:44:39,526 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:44:39,527 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:44:39,528 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:44:39,528 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:44:39,530 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:44:39,531 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:44:39,533 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:44:39,534 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:44:39,534 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:44:39,536 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:44:39,540 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:44:39,541 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:44:39,542 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:44:39,543 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:44:39,544 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:44:39,548 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:44:39,549 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:44:39,549 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:44:39,550 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:44:39,550 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:44:39,551 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:44:39,551 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:44:39,552 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:44:39,553 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:44:39,554 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:44:39,554 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:44:39,555 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:44:39,555 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:44:39,555 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:44:39,555 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:44:39,556 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:44:39,556 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:44:39,557 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:39,579 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:44:39,580 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:44:39,580 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:44:39,580 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:44:39,581 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:44:39,581 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:44:39,581 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:44:39,581 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:44:39,582 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:44:39,582 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:44:39,582 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:44:39,582 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:44:39,583 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:44:39,583 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:44:39,583 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:44:39,583 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:44:39,583 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:44:39,583 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2022-02-20 23:44:39,583 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:44:39,584 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:44:39,584 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:44:39,584 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:44:39,584 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:44:39,584 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:44:39,584 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:44:39,584 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:44:39,585 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:44:39,585 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:44:39,586 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 23:44:39,586 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 23:44:39,586 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 -> 554aa7448188134a862651a68c0992659f18748881f2b6912b6dbf17d440798c [2022-02-20 23:44:39,782 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:44:39,822 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:44:39,824 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:44:39,825 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:44:39,825 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:44:39,826 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/memsafety/test-0134.i [2022-02-20 23:44:39,888 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d0492f998/6595d297a23943bb87e97d2578b45efc/FLAG8090ff368 [2022-02-20 23:44:40,262 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:44:40,262 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/memsafety/test-0134.i [2022-02-20 23:44:40,278 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d0492f998/6595d297a23943bb87e97d2578b45efc/FLAG8090ff368 [2022-02-20 23:44:40,286 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d0492f998/6595d297a23943bb87e97d2578b45efc [2022-02-20 23:44:40,289 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:44:40,290 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:44:40,299 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:44:40,300 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:44:40,302 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:44:40,303 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:44:40" (1/1) ... [2022-02-20 23:44:40,304 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7295a80a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:40, skipping insertion in model container [2022-02-20 23:44:40,304 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:44:40" (1/1) ... [2022-02-20 23:44:40,308 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:44:40,351 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:44:40,636 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:44:40,652 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:40,653 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@4ac34f94 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:40, skipping insertion in model container [2022-02-20 23:44:40,653 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:44:40,654 INFO L184 ToolchainWalker]: Toolchain execution was canceled (user or tool) before executing de.uni_freiburg.informatik.ultimate.boogie.procedureinliner [2022-02-20 23:44:40,656 INFO L158 Benchmark]: Toolchain (without parser) took 365.17ms. Allocated memory is still 142.6MB. Free memory was 99.1MB in the beginning and 110.3MB in the end (delta: -11.1MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2022-02-20 23:44:40,657 INFO L158 Benchmark]: CDTParser took 0.16ms. Allocated memory is still 142.6MB. Free memory was 118.0MB in the beginning and 117.8MB in the end (delta: 140.0kB). There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 23:44:40,658 INFO L158 Benchmark]: CACSL2BoogieTranslator took 354.25ms. Allocated memory is still 142.6MB. Free memory was 98.9MB in the beginning and 110.3MB in the end (delta: -11.4MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2022-02-20 23:44:40,659 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.16ms. Allocated memory is still 142.6MB. Free memory was 118.0MB in the beginning and 117.8MB in the end (delta: 140.0kB). There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 354.25ms. Allocated memory is still 142.6MB. Free memory was 98.9MB in the beginning and 110.3MB in the end (delta: -11.4MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: - UnsupportedSyntaxResult [Line: 585]: 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-0134.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 554aa7448188134a862651a68c0992659f18748881f2b6912b6dbf17d440798c --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:44:42,270 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:44:42,272 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:44:42,310 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:44:42,310 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:44:42,313 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:44:42,314 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:44:42,318 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:44:42,320 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:44:42,324 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:44:42,325 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:44:42,328 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:44:42,328 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:44:42,330 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:44:42,331 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:44:42,333 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:44:42,334 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:44:42,334 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:44:42,336 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:44:42,341 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:44:42,342 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:44:42,342 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:44:42,344 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:44:42,345 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:44:42,349 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:44:42,350 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:44:42,350 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:44:42,351 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:44:42,352 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:44:42,352 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:44:42,352 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:44:42,353 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:44:42,354 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:44:42,355 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:44:42,356 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:44:42,356 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:44:42,356 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:44:42,357 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:44:42,357 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:44:42,358 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:44:42,358 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:44:42,359 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:42,387 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:44:42,388 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:44:42,388 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:44:42,388 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:44:42,389 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:44:42,389 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:44:42,390 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:44:42,391 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:44:42,391 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:44:42,391 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:44:42,392 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:44:42,392 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:44:42,392 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:44:42,393 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:44:42,393 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:44:42,393 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:44:42,393 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:44:42,393 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2022-02-20 23:44:42,393 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:44:42,394 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:44:42,394 INFO L138 SettingsManager]: * Use bitvectors instead of ints=true [2022-02-20 23:44:42,394 INFO L138 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2022-02-20 23:44:42,394 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:44:42,394 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:44:42,394 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:44:42,395 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:44:42,395 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:44:42,395 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:44:42,395 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:44:42,395 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:44:42,395 INFO L138 SettingsManager]: * Trace refinement strategy=WOLF [2022-02-20 23:44:42,396 INFO L138 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2022-02-20 23:44:42,396 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-02-20 23:44:42,396 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 -> 554aa7448188134a862651a68c0992659f18748881f2b6912b6dbf17d440798c [2022-02-20 23:44:42,683 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:44:42,703 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:44:42,705 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:44:42,706 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:44:42,706 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:44:42,707 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/memsafety/test-0134.i [2022-02-20 23:44:42,754 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a8b0cd651/9482f64c83a9412da46e02036e567e9b/FLAGaef72724a [2022-02-20 23:44:43,126 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:44:43,126 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/memsafety/test-0134.i [2022-02-20 23:44:43,145 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a8b0cd651/9482f64c83a9412da46e02036e567e9b/FLAGaef72724a [2022-02-20 23:44:43,529 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a8b0cd651/9482f64c83a9412da46e02036e567e9b [2022-02-20 23:44:43,532 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:44:43,533 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:44:43,535 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:44:43,535 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:44:43,538 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:44:43,538 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:44:43" (1/1) ... [2022-02-20 23:44:43,539 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@3ffc6da2 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:43, skipping insertion in model container [2022-02-20 23:44:43,539 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:44:43" (1/1) ... [2022-02-20 23:44:43,544 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:44:43,580 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:44:43,853 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:44:43,864 INFO L200 MainTranslator]: Restarting translation with changed settings: SettingsChange [mNewPreferredMemoryModel=HoenickeLindenmann_1ByteResolution] [2022-02-20 23:44:43,868 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:44:43,892 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:44:43,900 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 23:44:43,932 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:44:43,953 INFO L208 MainTranslator]: Completed translation [2022-02-20 23:44:43,954 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:43 WrapperNode [2022-02-20 23:44:43,954 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:44:43,955 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 23:44:43,955 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 23:44:43,955 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 23:44:43,959 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:43" (1/1) ... [2022-02-20 23:44:43,976 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:43" (1/1) ... [2022-02-20 23:44:44,013 INFO L137 Inliner]: procedures = 140, calls = 54, calls flagged for inlining = 10, calls inlined = 10, statements flattened = 133 [2022-02-20 23:44:44,015 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 23:44:44,016 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 23:44:44,016 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 23:44:44,016 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 23:44:44,022 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:43" (1/1) ... [2022-02-20 23:44:44,023 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:43" (1/1) ... [2022-02-20 23:44:44,040 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:43" (1/1) ... [2022-02-20 23:44:44,042 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:43" (1/1) ... [2022-02-20 23:44:44,054 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:43" (1/1) ... [2022-02-20 23:44:44,068 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:43" (1/1) ... [2022-02-20 23:44:44,074 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:43" (1/1) ... [2022-02-20 23:44:44,084 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 23:44:44,085 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 23:44:44,085 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 23:44:44,086 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 23:44:44,086 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:43" (1/1) ... [2022-02-20 23:44:44,097 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:44:44,107 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:44:44,121 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:44,123 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:44,149 INFO L130 BoogieDeclarations]: Found specification of procedure list_empty [2022-02-20 23:44:44,149 INFO L138 BoogieDeclarations]: Found implementation of procedure list_empty [2022-02-20 23:44:44,149 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2022-02-20 23:44:44,149 INFO L130 BoogieDeclarations]: Found specification of procedure __list_del [2022-02-20 23:44:44,150 INFO L138 BoogieDeclarations]: Found implementation of procedure __list_del [2022-02-20 23:44:44,150 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2022-02-20 23:44:44,150 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 23:44:44,150 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-02-20 23:44:44,150 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2022-02-20 23:44:44,150 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2022-02-20 23:44:44,151 INFO L130 BoogieDeclarations]: Found specification of procedure list_add [2022-02-20 23:44:44,151 INFO L138 BoogieDeclarations]: Found implementation of procedure list_add [2022-02-20 23:44:44,151 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 23:44:44,151 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2022-02-20 23:44:44,151 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~$Pointer$ [2022-02-20 23:44:44,151 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1 [2022-02-20 23:44:44,151 INFO L130 BoogieDeclarations]: Found specification of procedure val_from_node [2022-02-20 23:44:44,151 INFO L138 BoogieDeclarations]: Found implementation of procedure val_from_node [2022-02-20 23:44:44,152 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 23:44:44,152 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 23:44:44,248 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 23:44:44,250 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 23:44:44,773 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 23:44:44,785 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 23:44:44,797 INFO L299 CfgBuilder]: Removed 4 assume(true) statements. [2022-02-20 23:44:44,799 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:44:44 BoogieIcfgContainer [2022-02-20 23:44:44,800 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 23:44:44,801 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 23:44:44,801 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 23:44:44,803 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 23:44:44,803 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 11:44:43" (1/3) ... [2022-02-20 23:44:44,804 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6be7088 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:44:44, skipping insertion in model container [2022-02-20 23:44:44,804 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:43" (2/3) ... [2022-02-20 23:44:44,804 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6be7088 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:44:44, skipping insertion in model container [2022-02-20 23:44:44,805 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:44:44" (3/3) ... [2022-02-20 23:44:44,806 INFO L111 eAbstractionObserver]: Analyzing ICFG test-0134.i [2022-02-20 23:44:44,813 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 23:44:44,814 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 48 error locations. [2022-02-20 23:44:44,887 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 23:44:44,893 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:44,894 INFO L340 AbstractCegarLoop]: Starting to check reachability of 48 error locations. [2022-02-20 23:44:44,917 INFO L276 IsEmpty]: Start isEmpty. Operand has 131 states, 69 states have (on average 1.8695652173913044) internal successors, (129), 117 states have internal predecessors, (129), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 23:44:44,921 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 6 [2022-02-20 23:44:44,921 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:44,921 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1] [2022-02-20 23:44:44,922 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0REQUIRES_VIOLATION === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, list_emptyErr0REQUIRES_VIOLATION, list_emptyErr1REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:44:44,925 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:44,926 INFO L85 PathProgramCache]: Analyzing trace with hash 66866992, now seen corresponding path program 1 times [2022-02-20 23:44:44,935 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:44,935 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [659629162] [2022-02-20 23:44:44,936 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:44,936 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:44,936 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:44,938 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:44,940 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:45,014 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:45,016 INFO L263 TraceCheckSpWp]: Trace formula consists of 34 conjuncts, 1 conjunts are in the unsatisfiable core [2022-02-20 23:44:45,025 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:45,028 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:45,059 INFO L290 TraceCheckUtils]: 0: Hoare triple {134#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(12bv32, 2bv32);~#gl_list~0.base, ~#gl_list~0.offset := 3bv32, 0bv32;call #Ultimate.allocInit(8bv32, 3bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~#gl_list~0.offset, 4bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~bvadd32(4bv32, ~#gl_list~0.offset), 4bv32); {134#true} is VALID [2022-02-20 23:44:45,060 INFO L290 TraceCheckUtils]: 1: Hoare triple {134#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;assume { :begin_inline_gl_read } true;havoc gl_read_#t~nondet11#1, gl_read_#t~nondet10#1; {134#true} is VALID [2022-02-20 23:44:45,061 INFO L290 TraceCheckUtils]: 2: Hoare triple {134#true} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet11#1;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset, gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12bv32);gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset := gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset; {134#true} is VALID [2022-02-20 23:44:45,063 INFO L290 TraceCheckUtils]: 3: Hoare triple {134#true} assume gl_insert_~node~0#1.base == 0bv32 && gl_insert_~node~0#1.offset == 0bv32;assume false; {135#false} is VALID [2022-02-20 23:44:45,063 INFO L290 TraceCheckUtils]: 4: Hoare triple {135#false} assume !(1bv1 == #valid[gl_insert_~node~0#1.base]); {135#false} is VALID [2022-02-20 23:44:45,064 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,064 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:45,065 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:45,065 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [659629162] [2022-02-20 23:44:45,065 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [659629162] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:45,065 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:45,065 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:44:45,067 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1590334275] [2022-02-20 23:44:45,067 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:45,070 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:45,071 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:45,073 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:45,080 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:45,081 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-02-20 23:44:45,081 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:45,104 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-02-20 23:44:45,105 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 23:44:45,110 INFO L87 Difference]: Start difference. First operand has 131 states, 69 states have (on average 1.8695652173913044) internal successors, (129), 117 states have internal predecessors, (129), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) 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:45,282 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:45,283 INFO L93 Difference]: Finished difference Result 131 states and 142 transitions. [2022-02-20 23:44:45,283 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-02-20 23:44:45,283 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:45,283 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:45,292 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:45,298 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 147 transitions. [2022-02-20 23:44:45,299 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:45,302 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 147 transitions. [2022-02-20 23:44:45,302 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 147 transitions. [2022-02-20 23:44:45,449 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 147 edges. 147 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:45,458 INFO L225 Difference]: With dead ends: 131 [2022-02-20 23:44:45,458 INFO L226 Difference]: Without dead ends: 129 [2022-02-20 23:44:45,459 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:45,461 INFO L933 BasicCegarLoop]: 142 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, 142 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:45,462 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 142 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:45,473 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 129 states. [2022-02-20 23:44:45,483 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 129 to 129. [2022-02-20 23:44:45,483 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:45,484 INFO L82 GeneralOperation]: Start isEquivalent. First operand 129 states. Second operand has 129 states, 68 states have (on average 1.7941176470588236) internal successors, (122), 115 states have internal predecessors, (122), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 23:44:45,485 INFO L74 IsIncluded]: Start isIncluded. First operand 129 states. Second operand has 129 states, 68 states have (on average 1.7941176470588236) internal successors, (122), 115 states have internal predecessors, (122), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 23:44:45,486 INFO L87 Difference]: Start difference. First operand 129 states. Second operand has 129 states, 68 states have (on average 1.7941176470588236) internal successors, (122), 115 states have internal predecessors, (122), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 23:44:45,492 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:45,492 INFO L93 Difference]: Finished difference Result 129 states and 140 transitions. [2022-02-20 23:44:45,492 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 140 transitions. [2022-02-20 23:44:45,493 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:45,494 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:45,494 INFO L74 IsIncluded]: Start isIncluded. First operand has 129 states, 68 states have (on average 1.7941176470588236) internal successors, (122), 115 states have internal predecessors, (122), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 129 states. [2022-02-20 23:44:45,495 INFO L87 Difference]: Start difference. First operand has 129 states, 68 states have (on average 1.7941176470588236) internal successors, (122), 115 states have internal predecessors, (122), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 129 states. [2022-02-20 23:44:45,500 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:45,500 INFO L93 Difference]: Finished difference Result 129 states and 140 transitions. [2022-02-20 23:44:45,500 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 140 transitions. [2022-02-20 23:44:45,501 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:45,501 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:45,501 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:45,501 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:45,502 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 129 states, 68 states have (on average 1.7941176470588236) internal successors, (122), 115 states have internal predecessors, (122), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 23:44:45,505 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 129 states to 129 states and 140 transitions. [2022-02-20 23:44:45,506 INFO L78 Accepts]: Start accepts. Automaton has 129 states and 140 transitions. Word has length 5 [2022-02-20 23:44:45,506 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:45,507 INFO L470 AbstractCegarLoop]: Abstraction has 129 states and 140 transitions. [2022-02-20 23:44:45,507 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:45,507 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 140 transitions. [2022-02-20 23:44:45,507 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 6 [2022-02-20 23:44:45,507 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:45,508 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1] [2022-02-20 23:44:45,522 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (2)] Ended with exit code 0 [2022-02-20 23:44:45,716 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:45,716 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0REQUIRES_VIOLATION === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, list_emptyErr0REQUIRES_VIOLATION, list_emptyErr1REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:44:45,717 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:45,717 INFO L85 PathProgramCache]: Analyzing trace with hash 66867054, now seen corresponding path program 1 times [2022-02-20 23:44:45,717 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:45,717 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [600795695] [2022-02-20 23:44:45,717 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:45,717 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:45,717 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:45,719 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:45,721 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:45,788 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:45,789 INFO L263 TraceCheckSpWp]: Trace formula consists of 34 conjuncts, 3 conjunts are in the unsatisfiable core [2022-02-20 23:44:45,793 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:45,793 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:45,827 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,836 INFO L290 TraceCheckUtils]: 0: Hoare triple {668#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(12bv32, 2bv32);~#gl_list~0.base, ~#gl_list~0.offset := 3bv32, 0bv32;call #Ultimate.allocInit(8bv32, 3bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~#gl_list~0.offset, 4bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~bvadd32(4bv32, ~#gl_list~0.offset), 4bv32); {668#true} is VALID [2022-02-20 23:44:45,836 INFO L290 TraceCheckUtils]: 1: Hoare triple {668#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;assume { :begin_inline_gl_read } true;havoc gl_read_#t~nondet11#1, gl_read_#t~nondet10#1; {668#true} is VALID [2022-02-20 23:44:45,837 INFO L290 TraceCheckUtils]: 2: Hoare triple {668#true} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet11#1;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset, gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12bv32);gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset := gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset; {679#(= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:45,837 INFO L290 TraceCheckUtils]: 3: Hoare triple {679#(= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1))} assume !(gl_insert_~node~0#1.base == 0bv32 && gl_insert_~node~0#1.offset == 0bv32); {679#(= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:45,838 INFO L290 TraceCheckUtils]: 4: Hoare triple {679#(= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[gl_insert_~node~0#1.base]); {669#false} is VALID [2022-02-20 23:44:45,838 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,838 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:45,838 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:45,839 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [600795695] [2022-02-20 23:44:45,839 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [600795695] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:45,839 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:45,839 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:44:45,839 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [680179077] [2022-02-20 23:44:45,839 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:45,840 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 5 [2022-02-20 23:44:45,840 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:45,841 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:45,845 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:45,845 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:44:45,846 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:45,846 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:44:45,846 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:44:45,846 INFO L87 Difference]: Start difference. First operand 129 states and 140 transitions. Second operand has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:46,211 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:46,211 INFO L93 Difference]: Finished difference Result 151 states and 162 transitions. [2022-02-20 23:44:46,211 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:44:46,211 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 5 [2022-02-20 23:44:46,211 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:46,212 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:46,214 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 163 transitions. [2022-02-20 23:44:46,214 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:46,216 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 163 transitions. [2022-02-20 23:44:46,216 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 163 transitions. [2022-02-20 23:44:46,363 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 163 edges. 163 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:46,366 INFO L225 Difference]: With dead ends: 151 [2022-02-20 23:44:46,366 INFO L226 Difference]: Without dead ends: 151 [2022-02-20 23:44:46,366 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:44:46,367 INFO L933 BasicCegarLoop]: 107 mSDtfsCounter, 75 mSDsluCounter, 34 mSDsCounter, 0 mSdLazyCounter, 72 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 84 SdHoareTripleChecker+Valid, 141 SdHoareTripleChecker+Invalid, 73 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 72 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:46,367 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [84 Valid, 141 Invalid, 73 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 72 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:44:46,368 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 151 states. [2022-02-20 23:44:46,376 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 151 to 128. [2022-02-20 23:44:46,376 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:46,377 INFO L82 GeneralOperation]: Start isEquivalent. First operand 151 states. Second operand has 128 states, 68 states have (on average 1.7794117647058822) internal successors, (121), 114 states have internal predecessors, (121), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 23:44:46,377 INFO L74 IsIncluded]: Start isIncluded. First operand 151 states. Second operand has 128 states, 68 states have (on average 1.7794117647058822) internal successors, (121), 114 states have internal predecessors, (121), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 23:44:46,377 INFO L87 Difference]: Start difference. First operand 151 states. Second operand has 128 states, 68 states have (on average 1.7794117647058822) internal successors, (121), 114 states have internal predecessors, (121), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 23:44:46,382 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:46,382 INFO L93 Difference]: Finished difference Result 151 states and 162 transitions. [2022-02-20 23:44:46,382 INFO L276 IsEmpty]: Start isEmpty. Operand 151 states and 162 transitions. [2022-02-20 23:44:46,383 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:46,383 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:46,383 INFO L74 IsIncluded]: Start isIncluded. First operand has 128 states, 68 states have (on average 1.7794117647058822) internal successors, (121), 114 states have internal predecessors, (121), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 151 states. [2022-02-20 23:44:46,384 INFO L87 Difference]: Start difference. First operand has 128 states, 68 states have (on average 1.7794117647058822) internal successors, (121), 114 states have internal predecessors, (121), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 151 states. [2022-02-20 23:44:46,388 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:46,388 INFO L93 Difference]: Finished difference Result 151 states and 162 transitions. [2022-02-20 23:44:46,389 INFO L276 IsEmpty]: Start isEmpty. Operand 151 states and 162 transitions. [2022-02-20 23:44:46,389 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:46,389 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:46,390 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:46,390 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:46,390 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 128 states, 68 states have (on average 1.7794117647058822) internal successors, (121), 114 states have internal predecessors, (121), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 23:44:46,393 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 128 states to 128 states and 139 transitions. [2022-02-20 23:44:46,393 INFO L78 Accepts]: Start accepts. Automaton has 128 states and 139 transitions. Word has length 5 [2022-02-20 23:44:46,394 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:46,394 INFO L470 AbstractCegarLoop]: Abstraction has 128 states and 139 transitions. [2022-02-20 23:44:46,394 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:46,394 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 139 transitions. [2022-02-20 23:44:46,394 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 6 [2022-02-20 23:44:46,395 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:46,395 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1] [2022-02-20 23:44:46,415 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:46,601 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:46,602 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, list_emptyErr0REQUIRES_VIOLATION, list_emptyErr1REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:44:46,602 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:46,602 INFO L85 PathProgramCache]: Analyzing trace with hash 66867055, now seen corresponding path program 1 times [2022-02-20 23:44:46,603 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:46,603 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [882603732] [2022-02-20 23:44:46,603 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:46,603 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:46,604 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:46,606 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:46,611 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:46,648 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:46,649 INFO L263 TraceCheckSpWp]: Trace formula consists of 34 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 23:44:46,653 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:46,654 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:46,668 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:46,684 INFO L290 TraceCheckUtils]: 0: Hoare triple {1266#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(12bv32, 2bv32);~#gl_list~0.base, ~#gl_list~0.offset := 3bv32, 0bv32;call #Ultimate.allocInit(8bv32, 3bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~#gl_list~0.offset, 4bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~bvadd32(4bv32, ~#gl_list~0.offset), 4bv32); {1266#true} is VALID [2022-02-20 23:44:46,684 INFO L290 TraceCheckUtils]: 1: Hoare triple {1266#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;assume { :begin_inline_gl_read } true;havoc gl_read_#t~nondet11#1, gl_read_#t~nondet10#1; {1266#true} is VALID [2022-02-20 23:44:46,685 INFO L290 TraceCheckUtils]: 2: Hoare triple {1266#true} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet11#1;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset, gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12bv32);gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset := gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset; {1277#(and (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)))} is VALID [2022-02-20 23:44:46,686 INFO L290 TraceCheckUtils]: 3: Hoare triple {1277#(and (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)))} assume !(gl_insert_~node~0#1.base == 0bv32 && gl_insert_~node~0#1.offset == 0bv32); {1277#(and (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)))} is VALID [2022-02-20 23:44:46,686 INFO L290 TraceCheckUtils]: 4: Hoare triple {1277#(and (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)))} assume !((~bvule32(~bvadd32(4bv32, gl_insert_~node~0#1.offset), #length[gl_insert_~node~0#1.base]) && ~bvule32(gl_insert_~node~0#1.offset, ~bvadd32(4bv32, gl_insert_~node~0#1.offset))) && ~bvule32(0bv32, gl_insert_~node~0#1.offset)); {1267#false} is VALID [2022-02-20 23:44:46,687 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,687 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:46,687 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:46,687 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [882603732] [2022-02-20 23:44:46,687 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [882603732] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:46,687 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:46,688 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:44:46,688 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1871986103] [2022-02-20 23:44:46,688 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:46,688 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 5 [2022-02-20 23:44:46,689 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:46,689 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:46,694 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:46,695 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:44:46,695 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:46,695 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:44:46,695 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:44:46,696 INFO L87 Difference]: Start difference. First operand 128 states and 139 transitions. Second operand has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:47,088 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:47,089 INFO L93 Difference]: Finished difference Result 150 states and 161 transitions. [2022-02-20 23:44:47,089 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:44:47,089 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 5 [2022-02-20 23:44:47,089 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:47,089 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:47,091 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 162 transitions. [2022-02-20 23:44:47,091 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:47,092 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 162 transitions. [2022-02-20 23:44:47,093 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 162 transitions. [2022-02-20 23:44:47,239 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 162 edges. 162 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:47,241 INFO L225 Difference]: With dead ends: 150 [2022-02-20 23:44:47,241 INFO L226 Difference]: Without dead ends: 150 [2022-02-20 23:44:47,241 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:44:47,242 INFO L933 BasicCegarLoop]: 129 mSDtfsCounter, 28 mSDsluCounter, 82 mSDsCounter, 0 mSdLazyCounter, 56 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 30 SdHoareTripleChecker+Valid, 211 SdHoareTripleChecker+Invalid, 56 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 56 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:47,242 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [30 Valid, 211 Invalid, 56 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 56 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:44:47,243 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 150 states. [2022-02-20 23:44:47,246 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 150 to 127. [2022-02-20 23:44:47,246 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:47,247 INFO L82 GeneralOperation]: Start isEquivalent. First operand 150 states. Second operand has 127 states, 68 states have (on average 1.7647058823529411) internal successors, (120), 113 states have internal predecessors, (120), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 23:44:47,247 INFO L74 IsIncluded]: Start isIncluded. First operand 150 states. Second operand has 127 states, 68 states have (on average 1.7647058823529411) internal successors, (120), 113 states have internal predecessors, (120), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 23:44:47,247 INFO L87 Difference]: Start difference. First operand 150 states. Second operand has 127 states, 68 states have (on average 1.7647058823529411) internal successors, (120), 113 states have internal predecessors, (120), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 23:44:47,253 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:47,254 INFO L93 Difference]: Finished difference Result 150 states and 161 transitions. [2022-02-20 23:44:47,254 INFO L276 IsEmpty]: Start isEmpty. Operand 150 states and 161 transitions. [2022-02-20 23:44:47,254 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:47,254 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:47,255 INFO L74 IsIncluded]: Start isIncluded. First operand has 127 states, 68 states have (on average 1.7647058823529411) internal successors, (120), 113 states have internal predecessors, (120), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 150 states. [2022-02-20 23:44:47,255 INFO L87 Difference]: Start difference. First operand has 127 states, 68 states have (on average 1.7647058823529411) internal successors, (120), 113 states have internal predecessors, (120), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 150 states. [2022-02-20 23:44:47,258 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:47,258 INFO L93 Difference]: Finished difference Result 150 states and 161 transitions. [2022-02-20 23:44:47,258 INFO L276 IsEmpty]: Start isEmpty. Operand 150 states and 161 transitions. [2022-02-20 23:44:47,259 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:47,259 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:47,259 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:47,259 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:47,259 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 127 states, 68 states have (on average 1.7647058823529411) internal successors, (120), 113 states have internal predecessors, (120), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 23:44:47,262 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 127 states to 127 states and 138 transitions. [2022-02-20 23:44:47,262 INFO L78 Accepts]: Start accepts. Automaton has 127 states and 138 transitions. Word has length 5 [2022-02-20 23:44:47,262 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:47,262 INFO L470 AbstractCegarLoop]: Abstraction has 127 states and 138 transitions. [2022-02-20 23:44:47,262 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:47,263 INFO L276 IsEmpty]: Start isEmpty. Operand 127 states and 138 transitions. [2022-02-20 23:44:47,263 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 9 [2022-02-20 23:44:47,263 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:47,263 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:47,272 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (4)] Forceful destruction successful, exit code 0 [2022-02-20 23:44:47,469 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:47,470 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting list_addErr0REQUIRES_VIOLATION === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, list_emptyErr0REQUIRES_VIOLATION, list_emptyErr1REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:44:47,471 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:47,471 INFO L85 PathProgramCache]: Analyzing trace with hash -828261384, now seen corresponding path program 1 times [2022-02-20 23:44:47,471 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:47,471 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1763388921] [2022-02-20 23:44:47,471 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:47,472 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:47,472 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:47,473 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:47,500 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:47,533 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:47,536 INFO L263 TraceCheckSpWp]: Trace formula consists of 70 conjuncts, 7 conjunts are in the unsatisfiable core [2022-02-20 23:44:47,542 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:47,543 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:47,599 INFO L356 Elim1Store]: treesize reduction 12, result has 40.0 percent of original size [2022-02-20 23:44:47,599 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:47,650 INFO L290 TraceCheckUtils]: 0: Hoare triple {1860#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(12bv32, 2bv32);~#gl_list~0.base, ~#gl_list~0.offset := 3bv32, 0bv32;call #Ultimate.allocInit(8bv32, 3bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~#gl_list~0.offset, 4bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~bvadd32(4bv32, ~#gl_list~0.offset), 4bv32); {1865#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:44:47,650 INFO L290 TraceCheckUtils]: 1: Hoare triple {1865#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|))} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;assume { :begin_inline_gl_read } true;havoc gl_read_#t~nondet11#1, gl_read_#t~nondet10#1; {1865#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:44:47,651 INFO L290 TraceCheckUtils]: 2: Hoare triple {1865#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|))} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet11#1;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset, gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12bv32);gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset := gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset; {1865#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:44:47,654 INFO L290 TraceCheckUtils]: 3: Hoare triple {1865#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|))} assume !(gl_insert_~node~0#1.base == 0bv32 && gl_insert_~node~0#1.offset == 0bv32); {1865#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:44:47,655 INFO L290 TraceCheckUtils]: 4: Hoare triple {1865#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset, 4bv32); srcloc: L568-2 {1865#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:44:47,656 INFO L272 TraceCheckUtils]: 5: Hoare triple {1865#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|))} call list_add(gl_insert_~node~0#1.base, ~bvadd32(4bv32, gl_insert_~node~0#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {1881#(and (= |list_add_#in~head#1.base| (_ bv3 32)) (= (select |#valid| (_ bv3 32)) (_ bv1 1)))} is VALID [2022-02-20 23:44:47,657 INFO L290 TraceCheckUtils]: 6: Hoare triple {1881#(and (= |list_add_#in~head#1.base| (_ bv3 32)) (= (select |#valid| (_ bv3 32)) (_ 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; {1885#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= |list_add_~head#1.base| (_ bv3 32)))} is VALID [2022-02-20 23:44:47,657 INFO L290 TraceCheckUtils]: 7: Hoare triple {1885#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= |list_add_~head#1.base| (_ bv3 32)))} assume !(1bv1 == #valid[~head#1.base]); {1861#false} is VALID [2022-02-20 23:44:47,657 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:47,657 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:47,658 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:47,658 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1763388921] [2022-02-20 23:44:47,658 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1763388921] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:47,658 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:47,658 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:44:47,658 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [392942483] [2022-02-20 23:44:47,658 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:47,659 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 1.75) internal successors, (7), 3 states have internal predecessors, (7), 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 8 [2022-02-20 23:44:47,659 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:47,659 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 1.75) internal successors, (7), 3 states have internal predecessors, (7), 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:47,670 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 8 edges. 8 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:47,670 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:44:47,670 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:47,671 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:44:47,671 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:44:47,671 INFO L87 Difference]: Start difference. First operand 127 states and 138 transitions. Second operand has 5 states, 4 states have (on average 1.75) internal successors, (7), 3 states have internal predecessors, (7), 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:48,576 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:48,576 INFO L93 Difference]: Finished difference Result 165 states and 175 transitions. [2022-02-20 23:44:48,577 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:44:48,577 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 1.75) internal successors, (7), 3 states have internal predecessors, (7), 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 8 [2022-02-20 23:44:48,577 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:48,577 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 1.75) internal successors, (7), 3 states have internal predecessors, (7), 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:48,579 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 179 transitions. [2022-02-20 23:44:48,579 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 1.75) internal successors, (7), 3 states have internal predecessors, (7), 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:48,581 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 179 transitions. [2022-02-20 23:44:48,581 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 179 transitions. [2022-02-20 23:44:48,749 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 179 edges. 179 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:48,751 INFO L225 Difference]: With dead ends: 165 [2022-02-20 23:44:48,751 INFO L226 Difference]: Without dead ends: 165 [2022-02-20 23:44:48,751 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 9 GetRequests, 3 SyntacticMatches, 1 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=25, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:44:48,752 INFO L933 BasicCegarLoop]: 79 mSDtfsCounter, 179 mSDsluCounter, 129 mSDsCounter, 0 mSdLazyCounter, 225 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 180 SdHoareTripleChecker+Valid, 208 SdHoareTripleChecker+Invalid, 229 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 225 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:48,753 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [180 Valid, 208 Invalid, 229 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 225 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-02-20 23:44:48,753 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 165 states. [2022-02-20 23:44:48,757 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 165 to 142. [2022-02-20 23:44:48,757 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:48,758 INFO L82 GeneralOperation]: Start isEquivalent. First operand 165 states. Second operand has 142 states, 83 states have (on average 1.783132530120482) internal successors, (148), 127 states have internal predecessors, (148), 9 states have call successors, (9), 5 states have call predecessors, (9), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 23:44:48,758 INFO L74 IsIncluded]: Start isIncluded. First operand 165 states. Second operand has 142 states, 83 states have (on average 1.783132530120482) internal successors, (148), 127 states have internal predecessors, (148), 9 states have call successors, (9), 5 states have call predecessors, (9), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 23:44:48,758 INFO L87 Difference]: Start difference. First operand 165 states. Second operand has 142 states, 83 states have (on average 1.783132530120482) internal successors, (148), 127 states have internal predecessors, (148), 9 states have call successors, (9), 5 states have call predecessors, (9), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 23:44:48,762 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:48,762 INFO L93 Difference]: Finished difference Result 165 states and 175 transitions. [2022-02-20 23:44:48,762 INFO L276 IsEmpty]: Start isEmpty. Operand 165 states and 175 transitions. [2022-02-20 23:44:48,763 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:48,763 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:48,763 INFO L74 IsIncluded]: Start isIncluded. First operand has 142 states, 83 states have (on average 1.783132530120482) internal successors, (148), 127 states have internal predecessors, (148), 9 states have call successors, (9), 5 states have call predecessors, (9), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 165 states. [2022-02-20 23:44:48,764 INFO L87 Difference]: Start difference. First operand has 142 states, 83 states have (on average 1.783132530120482) internal successors, (148), 127 states have internal predecessors, (148), 9 states have call successors, (9), 5 states have call predecessors, (9), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 165 states. [2022-02-20 23:44:48,767 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:48,767 INFO L93 Difference]: Finished difference Result 165 states and 175 transitions. [2022-02-20 23:44:48,767 INFO L276 IsEmpty]: Start isEmpty. Operand 165 states and 175 transitions. [2022-02-20 23:44:48,767 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:48,767 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:48,768 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:48,768 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:48,768 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 142 states, 83 states have (on average 1.783132530120482) internal successors, (148), 127 states have internal predecessors, (148), 9 states have call successors, (9), 5 states have call predecessors, (9), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 23:44:48,771 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 142 states to 142 states and 166 transitions. [2022-02-20 23:44:48,771 INFO L78 Accepts]: Start accepts. Automaton has 142 states and 166 transitions. Word has length 8 [2022-02-20 23:44:48,771 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:48,771 INFO L470 AbstractCegarLoop]: Abstraction has 142 states and 166 transitions. [2022-02-20 23:44:48,772 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 1.75) internal successors, (7), 3 states have internal predecessors, (7), 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:48,772 INFO L276 IsEmpty]: Start isEmpty. Operand 142 states and 166 transitions. [2022-02-20 23:44:48,772 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 9 [2022-02-20 23:44:48,772 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:48,772 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:48,779 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (5)] Ended with exit code 0 [2022-02-20 23:44:48,979 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:48,979 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting list_addErr1REQUIRES_VIOLATION === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, list_emptyErr0REQUIRES_VIOLATION, list_emptyErr1REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:44:48,980 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:48,980 INFO L85 PathProgramCache]: Analyzing trace with hash -828261383, now seen corresponding path program 1 times [2022-02-20 23:44:48,980 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:48,980 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1523876255] [2022-02-20 23:44:48,980 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:48,980 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:48,981 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:48,982 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:48,982 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:49,081 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:49,102 INFO L263 TraceCheckSpWp]: Trace formula consists of 70 conjuncts, 11 conjunts are in the unsatisfiable core [2022-02-20 23:44:49,108 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:49,108 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:49,178 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:44:49,179 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:49,237 INFO L290 TraceCheckUtils]: 0: Hoare triple {2529#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(12bv32, 2bv32);~#gl_list~0.base, ~#gl_list~0.offset := 3bv32, 0bv32;call #Ultimate.allocInit(8bv32, 3bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~#gl_list~0.offset, 4bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~bvadd32(4bv32, ~#gl_list~0.offset), 4bv32); {2534#(and (= (_ bv8 32) (select |#length| (_ bv3 32))) (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:44:49,238 INFO L290 TraceCheckUtils]: 1: Hoare triple {2534#(and (= (_ bv8 32) (select |#length| (_ bv3 32))) (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;assume { :begin_inline_gl_read } true;havoc gl_read_#t~nondet11#1, gl_read_#t~nondet10#1; {2534#(and (= (_ bv8 32) (select |#length| (_ bv3 32))) (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:44:49,239 INFO L290 TraceCheckUtils]: 2: Hoare triple {2534#(and (= (_ bv8 32) (select |#length| (_ bv3 32))) (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet11#1;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset, gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12bv32);gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset := gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset; {2541#(and (= (_ bv8 32) (select |#length| (_ bv3 32))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:44:49,240 INFO L290 TraceCheckUtils]: 3: Hoare triple {2541#(and (= (_ bv8 32) (select |#length| (_ bv3 32))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} assume !(gl_insert_~node~0#1.base == 0bv32 && gl_insert_~node~0#1.offset == 0bv32); {2541#(and (= (_ bv8 32) (select |#length| (_ bv3 32))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:44:49,241 INFO L290 TraceCheckUtils]: 4: Hoare triple {2541#(and (= (_ bv8 32) (select |#length| (_ bv3 32))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset, 4bv32); srcloc: L568-2 {2541#(and (= (_ bv8 32) (select |#length| (_ bv3 32))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:44:49,242 INFO L272 TraceCheckUtils]: 5: Hoare triple {2541#(and (= (_ bv8 32) (select |#length| (_ bv3 32))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} call list_add(gl_insert_~node~0#1.base, ~bvadd32(4bv32, gl_insert_~node~0#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {2551#(and (= |list_add_#in~head#1.base| (_ bv3 32)) (= (_ bv8 32) (select |#length| (_ bv3 32))) (= (_ bv0 32) |list_add_#in~head#1.offset|))} is VALID [2022-02-20 23:44:49,242 INFO L290 TraceCheckUtils]: 6: Hoare triple {2551#(and (= |list_add_#in~head#1.base| (_ bv3 32)) (= (_ bv8 32) (select |#length| (_ bv3 32))) (= (_ bv0 32) |list_add_#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; {2555#(and (= (_ bv8 32) (select |#length| (_ bv3 32))) (= |list_add_~head#1.base| (_ bv3 32)) (= |list_add_~head#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:44:49,242 INFO L290 TraceCheckUtils]: 7: Hoare triple {2555#(and (= (_ bv8 32) (select |#length| (_ bv3 32))) (= |list_add_~head#1.base| (_ bv3 32)) (= |list_add_~head#1.offset| (_ bv0 32)))} assume !((~bvule32(~bvadd32(4bv32, ~head#1.offset), #length[~head#1.base]) && ~bvule32(~head#1.offset, ~bvadd32(4bv32, ~head#1.offset))) && ~bvule32(0bv32, ~head#1.offset)); {2530#false} is VALID [2022-02-20 23:44:49,243 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:49,243 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:49,243 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:49,243 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1523876255] [2022-02-20 23:44:49,243 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1523876255] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:49,243 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:49,243 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:44:49,243 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1207622484] [2022-02-20 23:44:49,243 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:49,244 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 1.4) internal successors, (7), 4 states have internal predecessors, (7), 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 8 [2022-02-20 23:44:49,244 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:49,244 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 1.4) internal successors, (7), 4 states have internal predecessors, (7), 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:49,252 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 8 edges. 8 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:49,252 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:44:49,252 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:49,253 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:44:49,253 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:44:49,253 INFO L87 Difference]: Start difference. First operand 142 states and 166 transitions. Second operand has 6 states, 5 states have (on average 1.4) internal successors, (7), 4 states have internal predecessors, (7), 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:50,172 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:50,173 INFO L93 Difference]: Finished difference Result 146 states and 159 transitions. [2022-02-20 23:44:50,173 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:44:50,173 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 1.4) internal successors, (7), 4 states have internal predecessors, (7), 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 8 [2022-02-20 23:44:50,173 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:50,173 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 1.4) internal successors, (7), 4 states have internal predecessors, (7), 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:50,175 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 158 transitions. [2022-02-20 23:44:50,175 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 1.4) internal successors, (7), 4 states have internal predecessors, (7), 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:50,177 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 158 transitions. [2022-02-20 23:44:50,177 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 158 transitions. [2022-02-20 23:44:50,335 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 158 edges. 158 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:50,343 INFO L225 Difference]: With dead ends: 146 [2022-02-20 23:44:50,343 INFO L226 Difference]: Without dead ends: 146 [2022-02-20 23:44:50,346 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 9 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=22, Invalid=34, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:44:50,347 INFO L933 BasicCegarLoop]: 60 mSDtfsCounter, 302 mSDsluCounter, 86 mSDsCounter, 0 mSdLazyCounter, 256 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 303 SdHoareTripleChecker+Valid, 146 SdHoareTripleChecker+Invalid, 286 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 256 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:50,347 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [303 Valid, 146 Invalid, 286 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 256 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-02-20 23:44:50,348 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 146 states. [2022-02-20 23:44:50,366 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 146 to 134. [2022-02-20 23:44:50,366 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:50,367 INFO L82 GeneralOperation]: Start isEquivalent. First operand 146 states. Second operand has 134 states, 79 states have (on average 1.6962025316455696) internal successors, (134), 119 states have internal predecessors, (134), 9 states have call successors, (9), 5 states have call predecessors, (9), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 23:44:50,369 INFO L74 IsIncluded]: Start isIncluded. First operand 146 states. Second operand has 134 states, 79 states have (on average 1.6962025316455696) internal successors, (134), 119 states have internal predecessors, (134), 9 states have call successors, (9), 5 states have call predecessors, (9), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 23:44:50,369 INFO L87 Difference]: Start difference. First operand 146 states. Second operand has 134 states, 79 states have (on average 1.6962025316455696) internal successors, (134), 119 states have internal predecessors, (134), 9 states have call successors, (9), 5 states have call predecessors, (9), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 23:44:50,372 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:50,377 INFO L93 Difference]: Finished difference Result 146 states and 159 transitions. [2022-02-20 23:44:50,377 INFO L276 IsEmpty]: Start isEmpty. Operand 146 states and 159 transitions. [2022-02-20 23:44:50,378 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:50,378 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:50,378 INFO L74 IsIncluded]: Start isIncluded. First operand has 134 states, 79 states have (on average 1.6962025316455696) internal successors, (134), 119 states have internal predecessors, (134), 9 states have call successors, (9), 5 states have call predecessors, (9), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 146 states. [2022-02-20 23:44:50,379 INFO L87 Difference]: Start difference. First operand has 134 states, 79 states have (on average 1.6962025316455696) internal successors, (134), 119 states have internal predecessors, (134), 9 states have call successors, (9), 5 states have call predecessors, (9), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 146 states. [2022-02-20 23:44:50,390 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:50,391 INFO L93 Difference]: Finished difference Result 146 states and 159 transitions. [2022-02-20 23:44:50,391 INFO L276 IsEmpty]: Start isEmpty. Operand 146 states and 159 transitions. [2022-02-20 23:44:50,391 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:50,391 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:50,391 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:50,391 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:50,392 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 134 states, 79 states have (on average 1.6962025316455696) internal successors, (134), 119 states have internal predecessors, (134), 9 states have call successors, (9), 5 states have call predecessors, (9), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 23:44:50,394 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 134 states to 134 states and 152 transitions. [2022-02-20 23:44:50,394 INFO L78 Accepts]: Start accepts. Automaton has 134 states and 152 transitions. Word has length 8 [2022-02-20 23:44:50,394 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:50,395 INFO L470 AbstractCegarLoop]: Abstraction has 134 states and 152 transitions. [2022-02-20 23:44:50,395 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 1.4) internal successors, (7), 4 states have internal predecessors, (7), 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:50,395 INFO L276 IsEmpty]: Start isEmpty. Operand 134 states and 152 transitions. [2022-02-20 23:44:50,395 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 11 [2022-02-20 23:44:50,395 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:50,395 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:50,403 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:50,603 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:50,603 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting list_addErr2REQUIRES_VIOLATION === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, list_emptyErr0REQUIRES_VIOLATION, list_emptyErr1REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:44:50,604 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:50,604 INFO L85 PathProgramCache]: Analyzing trace with hash -1390240455, now seen corresponding path program 1 times [2022-02-20 23:44:50,604 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:50,604 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [434495004] [2022-02-20 23:44:50,604 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:50,605 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:50,605 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:50,606 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:50,606 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:50,671 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:50,675 INFO L263 TraceCheckSpWp]: Trace formula consists of 88 conjuncts, 17 conjunts are in the unsatisfiable core [2022-02-20 23:44:50,682 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:50,683 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:50,750 INFO L356 Elim1Store]: treesize reduction 13, result has 23.5 percent of original size [2022-02-20 23:44:50,752 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 2 case distinctions, treesize of input 16 treesize of output 14 [2022-02-20 23:44:50,809 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:50,883 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:50,926 INFO L290 TraceCheckUtils]: 0: Hoare triple {3134#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(12bv32, 2bv32);~#gl_list~0.base, ~#gl_list~0.offset := 3bv32, 0bv32;call #Ultimate.allocInit(8bv32, 3bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~#gl_list~0.offset, 4bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~bvadd32(4bv32, ~#gl_list~0.offset), 4bv32); {3139#(and (= |~#gl_list~0.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv0 1) (select |#valid| (_ bv0 32))))} is VALID [2022-02-20 23:44:50,926 INFO L290 TraceCheckUtils]: 1: Hoare triple {3139#(and (= |~#gl_list~0.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv0 1) (select |#valid| (_ bv0 32))))} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;assume { :begin_inline_gl_read } true;havoc gl_read_#t~nondet11#1, gl_read_#t~nondet10#1; {3139#(and (= |~#gl_list~0.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv0 1) (select |#valid| (_ bv0 32))))} is VALID [2022-02-20 23:44:50,927 INFO L290 TraceCheckUtils]: 2: Hoare triple {3139#(and (= |~#gl_list~0.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv0 1) (select |#valid| (_ bv0 32))))} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet11#1;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset, gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12bv32);gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset := gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset; {3146#(and (= |~#gl_list~0.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| (_ bv3 32))) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:44:50,928 INFO L290 TraceCheckUtils]: 3: Hoare triple {3146#(and (= |~#gl_list~0.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| (_ bv3 32))) (= (_ bv3 32) |~#gl_list~0.base|))} assume !(gl_insert_~node~0#1.base == 0bv32 && gl_insert_~node~0#1.offset == 0bv32); {3146#(and (= |~#gl_list~0.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| (_ bv3 32))) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:44:50,930 INFO L290 TraceCheckUtils]: 4: Hoare triple {3146#(and (= |~#gl_list~0.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| (_ bv3 32))) (= (_ bv3 32) |~#gl_list~0.base|))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset, 4bv32); srcloc: L568-2 {3153#(and (= |~#gl_list~0.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:44:50,931 INFO L272 TraceCheckUtils]: 5: Hoare triple {3153#(and (= |~#gl_list~0.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (_ bv3 32) |~#gl_list~0.base|))} call list_add(gl_insert_~node~0#1.base, ~bvadd32(4bv32, gl_insert_~node~0#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {3157#(and (= |list_add_#in~head#1.base| (_ bv3 32)) (= |list_add_#in~head#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} is VALID [2022-02-20 23:44:50,932 INFO L290 TraceCheckUtils]: 6: Hoare triple {3157#(and (= |list_add_#in~head#1.base| (_ bv3 32)) (= |list_add_#in~head#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#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; {3161#(and (= (select (select |#memory_$Pointer$.base| (_ bv3 32)) |list_add_~head#1.offset|) (_ bv3 32)) (= |list_add_~head#1.base| (_ bv3 32)))} is VALID [2022-02-20 23:44:50,932 INFO L290 TraceCheckUtils]: 7: Hoare triple {3161#(and (= (select (select |#memory_$Pointer$.base| (_ bv3 32)) |list_add_~head#1.offset|) (_ bv3 32)) (= |list_add_~head#1.base| (_ bv3 32)))} SUMMARY for call #t~mem4#1.base, #t~mem4#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L547 {3165#(and (= |list_add_#t~mem4#1.base| (_ bv3 32)) (= (select |#valid| (_ bv3 32)) (_ bv1 1)))} is VALID [2022-02-20 23:44:50,933 INFO L290 TraceCheckUtils]: 8: Hoare triple {3165#(and (= |list_add_#t~mem4#1.base| (_ bv3 32)) (= (select |#valid| (_ bv3 32)) (_ 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, ~head#1.base, ~head#1.offset, #t~mem4#1.base, #t~mem4#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; {3169#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= (_ bv3 32) |list_add___list_add_~next#1.base|))} is VALID [2022-02-20 23:44:50,936 INFO L290 TraceCheckUtils]: 9: Hoare triple {3169#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= (_ bv3 32) |list_add___list_add_~next#1.base|))} assume !(1bv1 == #valid[__list_add_~next#1.base]); {3135#false} is VALID [2022-02-20 23:44:50,937 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,937 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:50,937 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:50,937 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [434495004] [2022-02-20 23:44:50,937 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [434495004] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:50,937 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:50,937 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-20 23:44:50,937 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1389858067] [2022-02-20 23:44:50,938 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:50,938 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 7 states have (on average 1.2857142857142858) internal successors, (9), 7 states have internal predecessors, (9), 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 10 [2022-02-20 23:44:50,938 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:50,939 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 7 states have (on average 1.2857142857142858) internal successors, (9), 7 states have internal predecessors, (9), 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:50,950 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 10 edges. 10 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:50,951 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 23:44:50,951 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:50,952 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 23:44:50,952 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:44:50,952 INFO L87 Difference]: Start difference. First operand 134 states and 152 transitions. Second operand has 9 states, 7 states have (on average 1.2857142857142858) internal successors, (9), 7 states have internal predecessors, (9), 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:52,605 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:52,606 INFO L93 Difference]: Finished difference Result 155 states and 173 transitions. [2022-02-20 23:44:52,606 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-02-20 23:44:52,606 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 7 states have (on average 1.2857142857142858) internal successors, (9), 7 states have internal predecessors, (9), 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 10 [2022-02-20 23:44:52,606 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:52,606 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 7 states have (on average 1.2857142857142858) internal successors, (9), 7 states have internal predecessors, (9), 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:52,617 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 155 transitions. [2022-02-20 23:44:52,617 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 7 states have (on average 1.2857142857142858) internal successors, (9), 7 states have internal predecessors, (9), 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:52,619 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 155 transitions. [2022-02-20 23:44:52,619 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 155 transitions. [2022-02-20 23:44:52,722 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 155 edges. 155 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:52,725 INFO L225 Difference]: With dead ends: 155 [2022-02-20 23:44:52,725 INFO L226 Difference]: Without dead ends: 155 [2022-02-20 23:44:52,726 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 15 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=59, Invalid=151, Unknown=0, NotChecked=0, Total=210 [2022-02-20 23:44:52,728 INFO L933 BasicCegarLoop]: 118 mSDtfsCounter, 36 mSDsluCounter, 538 mSDsCounter, 0 mSdLazyCounter, 285 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 36 SdHoareTripleChecker+Valid, 656 SdHoareTripleChecker+Invalid, 292 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 285 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:52,728 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [36 Valid, 656 Invalid, 292 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 285 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-02-20 23:44:52,729 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 155 states. [2022-02-20 23:44:52,732 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 155 to 148. [2022-02-20 23:44:52,732 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:52,733 INFO L82 GeneralOperation]: Start isEquivalent. First operand 155 states. Second operand has 148 states, 91 states have (on average 1.6813186813186813) internal successors, (153), 132 states have internal predecessors, (153), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:44:52,734 INFO L74 IsIncluded]: Start isIncluded. First operand 155 states. Second operand has 148 states, 91 states have (on average 1.6813186813186813) internal successors, (153), 132 states have internal predecessors, (153), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:44:52,735 INFO L87 Difference]: Start difference. First operand 155 states. Second operand has 148 states, 91 states have (on average 1.6813186813186813) internal successors, (153), 132 states have internal predecessors, (153), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:44:52,743 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:52,743 INFO L93 Difference]: Finished difference Result 155 states and 173 transitions. [2022-02-20 23:44:52,743 INFO L276 IsEmpty]: Start isEmpty. Operand 155 states and 173 transitions. [2022-02-20 23:44:52,744 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:52,744 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:52,745 INFO L74 IsIncluded]: Start isIncluded. First operand has 148 states, 91 states have (on average 1.6813186813186813) internal successors, (153), 132 states have internal predecessors, (153), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) Second operand 155 states. [2022-02-20 23:44:52,746 INFO L87 Difference]: Start difference. First operand has 148 states, 91 states have (on average 1.6813186813186813) internal successors, (153), 132 states have internal predecessors, (153), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) Second operand 155 states. [2022-02-20 23:44:52,749 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:52,749 INFO L93 Difference]: Finished difference Result 155 states and 173 transitions. [2022-02-20 23:44:52,750 INFO L276 IsEmpty]: Start isEmpty. Operand 155 states and 173 transitions. [2022-02-20 23:44:52,751 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:52,751 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:52,751 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:52,751 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:52,752 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 148 states, 91 states have (on average 1.6813186813186813) internal successors, (153), 132 states have internal predecessors, (153), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:44:52,754 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 148 states to 148 states and 173 transitions. [2022-02-20 23:44:52,754 INFO L78 Accepts]: Start accepts. Automaton has 148 states and 173 transitions. Word has length 10 [2022-02-20 23:44:52,754 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:52,755 INFO L470 AbstractCegarLoop]: Abstraction has 148 states and 173 transitions. [2022-02-20 23:44:52,755 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 7 states have (on average 1.2857142857142858) internal successors, (9), 7 states have internal predecessors, (9), 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:52,755 INFO L276 IsEmpty]: Start isEmpty. Operand 148 states and 173 transitions. [2022-02-20 23:44:52,755 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 11 [2022-02-20 23:44:52,755 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:52,755 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:52,763 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:52,963 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:52,964 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting list_addErr3REQUIRES_VIOLATION === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, list_emptyErr0REQUIRES_VIOLATION, list_emptyErr1REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:44:52,964 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:52,964 INFO L85 PathProgramCache]: Analyzing trace with hash -1390240454, now seen corresponding path program 1 times [2022-02-20 23:44:52,970 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:52,970 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [220487227] [2022-02-20 23:44:52,970 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:52,970 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:52,971 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:52,971 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:52,972 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:53,045 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:53,049 INFO L263 TraceCheckSpWp]: Trace formula consists of 88 conjuncts, 25 conjunts are in the unsatisfiable core [2022-02-20 23:44:53,057 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:53,058 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:53,147 INFO L356 Elim1Store]: treesize reduction 11, result has 45.0 percent of original size [2022-02-20 23:44:53,147 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 18 [2022-02-20 23:44:53,164 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:44:53,164 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 11 [2022-02-20 23:44:53,254 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:53,265 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:53,383 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:53,388 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:53,431 INFO L290 TraceCheckUtils]: 0: Hoare triple {3797#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(12bv32, 2bv32);~#gl_list~0.base, ~#gl_list~0.offset := 3bv32, 0bv32;call #Ultimate.allocInit(8bv32, 3bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~#gl_list~0.offset, 4bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~bvadd32(4bv32, ~#gl_list~0.offset), 4bv32); {3802#(and (= |~#gl_list~0.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (_ bv8 32) (select |#length| (_ bv3 32))) (= (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|) |~#gl_list~0.offset|) (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:44:53,432 INFO L290 TraceCheckUtils]: 1: Hoare triple {3802#(and (= |~#gl_list~0.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (_ bv8 32) (select |#length| (_ bv3 32))) (= (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|) |~#gl_list~0.offset|) (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;assume { :begin_inline_gl_read } true;havoc gl_read_#t~nondet11#1, gl_read_#t~nondet10#1; {3802#(and (= |~#gl_list~0.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (_ bv8 32) (select |#length| (_ bv3 32))) (= (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|) |~#gl_list~0.offset|) (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:44:53,434 INFO L290 TraceCheckUtils]: 2: Hoare triple {3802#(and (= |~#gl_list~0.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (_ bv8 32) (select |#length| (_ bv3 32))) (= (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|) |~#gl_list~0.offset|) (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet11#1;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset, gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12bv32);gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset := gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset; {3809#(and (= |~#gl_list~0.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (_ bv8 32) (select |#length| (_ bv3 32))) (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| (_ bv3 32))) (= (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|) |~#gl_list~0.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:44:53,434 INFO L290 TraceCheckUtils]: 3: Hoare triple {3809#(and (= |~#gl_list~0.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (_ bv8 32) (select |#length| (_ bv3 32))) (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| (_ bv3 32))) (= (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|) |~#gl_list~0.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} assume !(gl_insert_~node~0#1.base == 0bv32 && gl_insert_~node~0#1.offset == 0bv32); {3809#(and (= |~#gl_list~0.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (_ bv8 32) (select |#length| (_ bv3 32))) (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| (_ bv3 32))) (= (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|) |~#gl_list~0.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:44:53,437 INFO L290 TraceCheckUtils]: 4: Hoare triple {3809#(and (= |~#gl_list~0.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (_ bv8 32) (select |#length| (_ bv3 32))) (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| (_ bv3 32))) (= (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|) |~#gl_list~0.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset, 4bv32); srcloc: L568-2 {3816#(and (= |~#gl_list~0.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (_ bv8 32) (select |#length| (_ bv3 32))) (= (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|) |~#gl_list~0.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:44:53,438 INFO L272 TraceCheckUtils]: 5: Hoare triple {3816#(and (= |~#gl_list~0.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (_ bv8 32) (select |#length| (_ bv3 32))) (= (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|) |~#gl_list~0.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} call list_add(gl_insert_~node~0#1.base, ~bvadd32(4bv32, gl_insert_~node~0#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {3820#(and (= |list_add_#in~head#1.base| (_ bv3 32)) (= (_ bv8 32) (select |#length| (_ bv3 32))) (= (_ bv0 32) |list_add_#in~head#1.offset|) (= (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) (_ bv0 32)) (_ bv0 32)) (= |list_add_#in~head#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) (_ bv0 32))))} is VALID [2022-02-20 23:44:53,439 INFO L290 TraceCheckUtils]: 6: Hoare triple {3820#(and (= |list_add_#in~head#1.base| (_ bv3 32)) (= (_ bv8 32) (select |#length| (_ bv3 32))) (= (_ bv0 32) |list_add_#in~head#1.offset|) (= (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) (_ bv0 32)) (_ bv0 32)) (= |list_add_#in~head#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) (_ bv0 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; {3824#(and (= (select (select |#memory_$Pointer$.offset| (_ bv3 32)) (_ bv0 32)) (_ bv0 32)) (= (_ bv3 32) (select (select |#memory_$Pointer$.base| (_ bv3 32)) (_ bv0 32))) (= (_ bv8 32) (select |#length| (_ bv3 32))) (= |list_add_~head#1.base| (_ bv3 32)) (= |list_add_~head#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:44:53,439 INFO L290 TraceCheckUtils]: 7: Hoare triple {3824#(and (= (select (select |#memory_$Pointer$.offset| (_ bv3 32)) (_ bv0 32)) (_ bv0 32)) (= (_ bv3 32) (select (select |#memory_$Pointer$.base| (_ bv3 32)) (_ bv0 32))) (= (_ bv8 32) (select |#length| (_ bv3 32))) (= |list_add_~head#1.base| (_ bv3 32)) (= |list_add_~head#1.offset| (_ bv0 32)))} SUMMARY for call #t~mem4#1.base, #t~mem4#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L547 {3828#(and (= |list_add_#t~mem4#1.offset| (_ bv0 32)) (= |list_add_#t~mem4#1.base| (_ bv3 32)) (= (_ bv8 32) (select |#length| (_ bv3 32))))} is VALID [2022-02-20 23:44:53,440 INFO L290 TraceCheckUtils]: 8: Hoare triple {3828#(and (= |list_add_#t~mem4#1.offset| (_ bv0 32)) (= |list_add_#t~mem4#1.base| (_ bv3 32)) (= (_ bv8 32) (select |#length| (_ bv3 32))))} 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, ~head#1.base, ~head#1.offset, #t~mem4#1.base, #t~mem4#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; {3832#(and (= (_ bv8 32) (select |#length| (_ bv3 32))) (= |list_add___list_add_~next#1.offset| (_ bv0 32)) (= (_ bv3 32) |list_add___list_add_~next#1.base|))} is VALID [2022-02-20 23:44:53,440 INFO L290 TraceCheckUtils]: 9: Hoare triple {3832#(and (= (_ bv8 32) (select |#length| (_ bv3 32))) (= |list_add___list_add_~next#1.offset| (_ bv0 32)) (= (_ bv3 32) |list_add___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))); {3798#false} is VALID [2022-02-20 23:44:53,441 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,441 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:53,441 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:53,441 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [220487227] [2022-02-20 23:44:53,441 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [220487227] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:53,441 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:53,441 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-20 23:44:53,441 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1788497606] [2022-02-20 23:44:53,442 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:53,442 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 7 states have (on average 1.2857142857142858) internal successors, (9), 7 states have internal predecessors, (9), 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 10 [2022-02-20 23:44:53,442 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:53,442 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 7 states have (on average 1.2857142857142858) internal successors, (9), 7 states have internal predecessors, (9), 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:53,460 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 10 edges. 10 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:53,460 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 23:44:53,460 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:53,460 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 23:44:53,461 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:44:53,461 INFO L87 Difference]: Start difference. First operand 148 states and 173 transitions. Second operand has 9 states, 7 states have (on average 1.2857142857142858) internal successors, (9), 7 states have internal predecessors, (9), 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:55,386 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:55,386 INFO L93 Difference]: Finished difference Result 154 states and 172 transitions. [2022-02-20 23:44:55,386 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-02-20 23:44:55,387 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 7 states have (on average 1.2857142857142858) internal successors, (9), 7 states have internal predecessors, (9), 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 10 [2022-02-20 23:44:55,387 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:55,387 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 7 states have (on average 1.2857142857142858) internal successors, (9), 7 states have internal predecessors, (9), 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:55,398 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 154 transitions. [2022-02-20 23:44:55,399 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 7 states have (on average 1.2857142857142858) internal successors, (9), 7 states have internal predecessors, (9), 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:55,400 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 154 transitions. [2022-02-20 23:44:55,400 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 154 transitions. [2022-02-20 23:44:55,545 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 154 edges. 154 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:55,547 INFO L225 Difference]: With dead ends: 154 [2022-02-20 23:44:55,547 INFO L226 Difference]: Without dead ends: 154 [2022-02-20 23:44:55,547 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 15 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=59, Invalid=151, Unknown=0, NotChecked=0, Total=210 [2022-02-20 23:44:55,548 INFO L933 BasicCegarLoop]: 117 mSDtfsCounter, 47 mSDsluCounter, 420 mSDsCounter, 0 mSdLazyCounter, 277 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 47 SdHoareTripleChecker+Valid, 537 SdHoareTripleChecker+Invalid, 298 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 277 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:55,548 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [47 Valid, 537 Invalid, 298 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 277 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-02-20 23:44:55,548 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 154 states. [2022-02-20 23:44:55,550 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 154 to 148. [2022-02-20 23:44:55,550 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:55,551 INFO L82 GeneralOperation]: Start isEquivalent. First operand 154 states. Second operand has 148 states, 91 states have (on average 1.6703296703296704) internal successors, (152), 132 states have internal predecessors, (152), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:44:55,551 INFO L74 IsIncluded]: Start isIncluded. First operand 154 states. Second operand has 148 states, 91 states have (on average 1.6703296703296704) internal successors, (152), 132 states have internal predecessors, (152), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:44:55,551 INFO L87 Difference]: Start difference. First operand 154 states. Second operand has 148 states, 91 states have (on average 1.6703296703296704) internal successors, (152), 132 states have internal predecessors, (152), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:44:55,554 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:55,554 INFO L93 Difference]: Finished difference Result 154 states and 172 transitions. [2022-02-20 23:44:55,554 INFO L276 IsEmpty]: Start isEmpty. Operand 154 states and 172 transitions. [2022-02-20 23:44:55,554 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:55,554 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:55,555 INFO L74 IsIncluded]: Start isIncluded. First operand has 148 states, 91 states have (on average 1.6703296703296704) internal successors, (152), 132 states have internal predecessors, (152), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) Second operand 154 states. [2022-02-20 23:44:55,555 INFO L87 Difference]: Start difference. First operand has 148 states, 91 states have (on average 1.6703296703296704) internal successors, (152), 132 states have internal predecessors, (152), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) Second operand 154 states. [2022-02-20 23:44:55,558 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:55,558 INFO L93 Difference]: Finished difference Result 154 states and 172 transitions. [2022-02-20 23:44:55,558 INFO L276 IsEmpty]: Start isEmpty. Operand 154 states and 172 transitions. [2022-02-20 23:44:55,559 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:55,559 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:55,559 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:55,559 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:55,559 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 148 states, 91 states have (on average 1.6703296703296704) internal successors, (152), 132 states have internal predecessors, (152), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:44:55,562 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 148 states to 148 states and 172 transitions. [2022-02-20 23:44:55,562 INFO L78 Accepts]: Start accepts. Automaton has 148 states and 172 transitions. Word has length 10 [2022-02-20 23:44:55,562 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:55,562 INFO L470 AbstractCegarLoop]: Abstraction has 148 states and 172 transitions. [2022-02-20 23:44:55,562 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 7 states have (on average 1.2857142857142858) internal successors, (9), 7 states have internal predecessors, (9), 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:55,562 INFO L276 IsEmpty]: Start isEmpty. Operand 148 states and 172 transitions. [2022-02-20 23:44:55,562 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2022-02-20 23:44:55,563 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:55,563 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:55,570 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:55,770 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:55,772 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting list_addErr4REQUIRES_VIOLATION === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, list_emptyErr0REQUIRES_VIOLATION, list_emptyErr1REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:44:55,772 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:55,773 INFO L85 PathProgramCache]: Analyzing trace with hash -147781147, now seen corresponding path program 1 times [2022-02-20 23:44:55,773 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:55,773 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1128854925] [2022-02-20 23:44:55,773 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:55,773 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:55,773 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:55,774 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:55,775 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:55,827 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:55,830 INFO L263 TraceCheckSpWp]: Trace formula consists of 101 conjuncts, 7 conjunts are in the unsatisfiable core [2022-02-20 23:44:55,836 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:55,837 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:55,845 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,888 INFO L290 TraceCheckUtils]: 0: Hoare triple {4457#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(12bv32, 2bv32);~#gl_list~0.base, ~#gl_list~0.offset := 3bv32, 0bv32;call #Ultimate.allocInit(8bv32, 3bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~#gl_list~0.offset, 4bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~bvadd32(4bv32, ~#gl_list~0.offset), 4bv32); {4457#true} is VALID [2022-02-20 23:44:55,889 INFO L290 TraceCheckUtils]: 1: Hoare triple {4457#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;assume { :begin_inline_gl_read } true;havoc gl_read_#t~nondet11#1, gl_read_#t~nondet10#1; {4457#true} is VALID [2022-02-20 23:44:55,890 INFO L290 TraceCheckUtils]: 2: Hoare triple {4457#true} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet11#1;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset, gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12bv32);gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset := gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset; {4468#(= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:55,890 INFO L290 TraceCheckUtils]: 3: Hoare triple {4468#(= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1))} assume !(gl_insert_~node~0#1.base == 0bv32 && gl_insert_~node~0#1.offset == 0bv32); {4468#(= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:55,891 INFO L290 TraceCheckUtils]: 4: Hoare triple {4468#(= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset, 4bv32); srcloc: L568-2 {4468#(= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:55,892 INFO L272 TraceCheckUtils]: 5: Hoare triple {4468#(= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1))} call list_add(gl_insert_~node~0#1.base, ~bvadd32(4bv32, gl_insert_~node~0#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {4478#(= (select |#valid| |list_add_#in~new#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:55,892 INFO L290 TraceCheckUtils]: 6: Hoare triple {4478#(= (select |#valid| |list_add_#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; {4482#(= (select |#valid| |list_add_~new#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:55,893 INFO L290 TraceCheckUtils]: 7: Hoare triple {4482#(= (select |#valid| |list_add_~new#1.base|) (_ bv1 1))} SUMMARY for call #t~mem4#1.base, #t~mem4#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L547 {4482#(= (select |#valid| |list_add_~new#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:55,893 INFO L290 TraceCheckUtils]: 8: Hoare triple {4482#(= (select |#valid| |list_add_~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, ~head#1.base, ~head#1.offset, #t~mem4#1.base, #t~mem4#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; {4489#(= (select |#valid| |list_add___list_add_~new#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:55,894 INFO L290 TraceCheckUtils]: 9: Hoare triple {4489#(= (select |#valid| |list_add___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: L535 {4489#(= (select |#valid| |list_add___list_add_~new#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:55,894 INFO L290 TraceCheckUtils]: 10: Hoare triple {4489#(= (select |#valid| |list_add___list_add_~new#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[__list_add_~new#1.base]); {4458#false} is VALID [2022-02-20 23:44:55,894 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,894 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:55,895 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:55,895 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1128854925] [2022-02-20 23:44:55,895 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1128854925] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:55,895 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:55,895 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:44:55,895 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [982140363] [2022-02-20 23:44:55,895 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:55,896 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.0) internal successors, (10), 5 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:55,896 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:55,896 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 2.0) internal successors, (10), 5 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:55,911 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:55,912 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:44:55,912 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:55,912 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:44:55,913 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:44:55,913 INFO L87 Difference]: Start difference. First operand 148 states and 172 transitions. Second operand has 6 states, 5 states have (on average 2.0) internal successors, (10), 5 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:57,082 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:57,083 INFO L93 Difference]: Finished difference Result 169 states and 183 transitions. [2022-02-20 23:44:57,083 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:44:57,083 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.0) internal successors, (10), 5 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:57,083 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:57,083 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.0) internal successors, (10), 5 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:57,084 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 169 transitions. [2022-02-20 23:44:57,084 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.0) internal successors, (10), 5 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:57,086 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 169 transitions. [2022-02-20 23:44:57,086 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 169 transitions. [2022-02-20 23:44:57,241 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 169 edges. 169 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:57,243 INFO L225 Difference]: With dead ends: 169 [2022-02-20 23:44:57,243 INFO L226 Difference]: Without dead ends: 169 [2022-02-20 23:44:57,243 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 12 GetRequests, 6 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:57,244 INFO L933 BasicCegarLoop]: 90 mSDtfsCounter, 113 mSDsluCounter, 211 mSDsCounter, 0 mSdLazyCounter, 291 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 122 SdHoareTripleChecker+Valid, 301 SdHoareTripleChecker+Invalid, 295 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 291 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:57,244 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [122 Valid, 301 Invalid, 295 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 291 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-02-20 23:44:57,244 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 169 states. [2022-02-20 23:44:57,246 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 169 to 147. [2022-02-20 23:44:57,246 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:57,246 INFO L82 GeneralOperation]: Start isEquivalent. First operand 169 states. Second operand has 147 states, 91 states have (on average 1.6153846153846154) internal successors, (147), 131 states have internal predecessors, (147), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:44:57,247 INFO L74 IsIncluded]: Start isIncluded. First operand 169 states. Second operand has 147 states, 91 states have (on average 1.6153846153846154) internal successors, (147), 131 states have internal predecessors, (147), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:44:57,247 INFO L87 Difference]: Start difference. First operand 169 states. Second operand has 147 states, 91 states have (on average 1.6153846153846154) internal successors, (147), 131 states have internal predecessors, (147), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:44:57,250 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:57,250 INFO L93 Difference]: Finished difference Result 169 states and 183 transitions. [2022-02-20 23:44:57,250 INFO L276 IsEmpty]: Start isEmpty. Operand 169 states and 183 transitions. [2022-02-20 23:44:57,250 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:57,250 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:57,251 INFO L74 IsIncluded]: Start isIncluded. First operand has 147 states, 91 states have (on average 1.6153846153846154) internal successors, (147), 131 states have internal predecessors, (147), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) Second operand 169 states. [2022-02-20 23:44:57,251 INFO L87 Difference]: Start difference. First operand has 147 states, 91 states have (on average 1.6153846153846154) internal successors, (147), 131 states have internal predecessors, (147), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) Second operand 169 states. [2022-02-20 23:44:57,255 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:57,255 INFO L93 Difference]: Finished difference Result 169 states and 183 transitions. [2022-02-20 23:44:57,255 INFO L276 IsEmpty]: Start isEmpty. Operand 169 states and 183 transitions. [2022-02-20 23:44:57,255 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:57,256 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:57,256 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:57,256 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:57,256 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 147 states, 91 states have (on average 1.6153846153846154) internal successors, (147), 131 states have internal predecessors, (147), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:44:57,259 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 147 states to 147 states and 167 transitions. [2022-02-20 23:44:57,259 INFO L78 Accepts]: Start accepts. Automaton has 147 states and 167 transitions. Word has length 11 [2022-02-20 23:44:57,259 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:57,259 INFO L470 AbstractCegarLoop]: Abstraction has 147 states and 167 transitions. [2022-02-20 23:44:57,260 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 2.0) internal successors, (10), 5 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:57,260 INFO L276 IsEmpty]: Start isEmpty. Operand 147 states and 167 transitions. [2022-02-20 23:44:57,260 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2022-02-20 23:44:57,260 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:57,260 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:57,270 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:57,466 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:57,467 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting list_addErr5REQUIRES_VIOLATION === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, list_emptyErr0REQUIRES_VIOLATION, list_emptyErr1REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:44:57,467 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:57,467 INFO L85 PathProgramCache]: Analyzing trace with hash -147781146, now seen corresponding path program 1 times [2022-02-20 23:44:57,468 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:57,468 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1788099287] [2022-02-20 23:44:57,468 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:57,468 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:57,468 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:57,469 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:57,470 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:57,542 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:57,545 INFO L263 TraceCheckSpWp]: Trace formula consists of 101 conjuncts, 12 conjunts are in the unsatisfiable core [2022-02-20 23:44:57,551 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:57,552 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:57,563 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:57,667 INFO L290 TraceCheckUtils]: 0: Hoare triple {5153#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(12bv32, 2bv32);~#gl_list~0.base, ~#gl_list~0.offset := 3bv32, 0bv32;call #Ultimate.allocInit(8bv32, 3bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~#gl_list~0.offset, 4bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~bvadd32(4bv32, ~#gl_list~0.offset), 4bv32); {5153#true} is VALID [2022-02-20 23:44:57,668 INFO L290 TraceCheckUtils]: 1: Hoare triple {5153#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;assume { :begin_inline_gl_read } true;havoc gl_read_#t~nondet11#1, gl_read_#t~nondet10#1; {5153#true} is VALID [2022-02-20 23:44:57,669 INFO L290 TraceCheckUtils]: 2: Hoare triple {5153#true} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet11#1;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset, gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12bv32);gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset := gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset; {5164#(and (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)))} is VALID [2022-02-20 23:44:57,669 INFO L290 TraceCheckUtils]: 3: Hoare triple {5164#(and (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)))} assume !(gl_insert_~node~0#1.base == 0bv32 && gl_insert_~node~0#1.offset == 0bv32); {5164#(and (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)))} is VALID [2022-02-20 23:44:57,670 INFO L290 TraceCheckUtils]: 4: Hoare triple {5164#(and (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset, 4bv32); srcloc: L568-2 {5164#(and (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)))} is VALID [2022-02-20 23:44:57,671 INFO L272 TraceCheckUtils]: 5: Hoare triple {5164#(and (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)))} call list_add(gl_insert_~node~0#1.base, ~bvadd32(4bv32, gl_insert_~node~0#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {5174#(and (= (bvadd (_ bv4294967292 32) |list_add_#in~new#1.offset|) (_ bv0 32)) (= (select |#length| |list_add_#in~new#1.base|) (_ bv12 32)))} is VALID [2022-02-20 23:44:57,671 INFO L290 TraceCheckUtils]: 6: Hoare triple {5174#(and (= (bvadd (_ bv4294967292 32) |list_add_#in~new#1.offset|) (_ bv0 32)) (= (select |#length| |list_add_#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; {5178#(and (= |list_add_~new#1.offset| (_ bv4 32)) (= (select |#length| |list_add_~new#1.base|) (_ bv12 32)))} is VALID [2022-02-20 23:44:57,672 INFO L290 TraceCheckUtils]: 7: Hoare triple {5178#(and (= |list_add_~new#1.offset| (_ bv4 32)) (= (select |#length| |list_add_~new#1.base|) (_ bv12 32)))} SUMMARY for call #t~mem4#1.base, #t~mem4#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L547 {5178#(and (= |list_add_~new#1.offset| (_ bv4 32)) (= (select |#length| |list_add_~new#1.base|) (_ bv12 32)))} is VALID [2022-02-20 23:44:57,672 INFO L290 TraceCheckUtils]: 8: Hoare triple {5178#(and (= |list_add_~new#1.offset| (_ bv4 32)) (= (select |#length| |list_add_~new#1.base|) (_ bv12 32)))} 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, ~head#1.base, ~head#1.offset, #t~mem4#1.base, #t~mem4#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; {5185#(and (= (_ bv4 32) |list_add___list_add_~new#1.offset|) (= (select |#length| |list_add___list_add_~new#1.base|) (_ bv12 32)))} is VALID [2022-02-20 23:44:57,673 INFO L290 TraceCheckUtils]: 9: Hoare triple {5185#(and (= (_ bv4 32) |list_add___list_add_~new#1.offset|) (= (select |#length| |list_add___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: L535 {5185#(and (= (_ bv4 32) |list_add___list_add_~new#1.offset|) (= (select |#length| |list_add___list_add_~new#1.base|) (_ bv12 32)))} is VALID [2022-02-20 23:44:57,674 INFO L290 TraceCheckUtils]: 10: Hoare triple {5185#(and (= (_ bv4 32) |list_add___list_add_~new#1.offset|) (= (select |#length| |list_add___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)); {5154#false} is VALID [2022-02-20 23:44:57,674 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:57,674 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:57,674 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:57,674 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1788099287] [2022-02-20 23:44:57,674 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1788099287] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:57,674 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:57,674 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:44:57,674 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1894384725] [2022-02-20 23:44:57,674 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:57,674 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.0) internal successors, (10), 5 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:57,675 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:57,675 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 2.0) internal successors, (10), 5 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:57,689 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:57,689 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:44:57,689 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:57,689 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:44:57,689 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:44:57,689 INFO L87 Difference]: Start difference. First operand 147 states and 167 transitions. Second operand has 6 states, 5 states have (on average 2.0) internal successors, (10), 5 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:58,952 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:58,952 INFO L93 Difference]: Finished difference Result 169 states and 181 transitions. [2022-02-20 23:44:58,952 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:44:58,952 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.0) internal successors, (10), 5 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:58,952 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:58,952 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.0) internal successors, (10), 5 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:58,953 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 167 transitions. [2022-02-20 23:44:58,958 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.0) internal successors, (10), 5 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:58,959 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 167 transitions. [2022-02-20 23:44:58,960 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 167 transitions. [2022-02-20 23:44:59,109 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 167 edges. 167 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:59,111 INFO L225 Difference]: With dead ends: 169 [2022-02-20 23:44:59,111 INFO L226 Difference]: Without dead ends: 169 [2022-02-20 23:44:59,111 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 12 GetRequests, 6 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:59,111 INFO L933 BasicCegarLoop]: 115 mSDtfsCounter, 57 mSDsluCounter, 321 mSDsCounter, 0 mSdLazyCounter, 217 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 59 SdHoareTripleChecker+Valid, 436 SdHoareTripleChecker+Invalid, 218 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 217 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:59,111 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [59 Valid, 436 Invalid, 218 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 217 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-02-20 23:44:59,112 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 169 states. [2022-02-20 23:44:59,114 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 169 to 147. [2022-02-20 23:44:59,114 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:59,114 INFO L82 GeneralOperation]: Start isEquivalent. First operand 169 states. Second operand has 147 states, 91 states have (on average 1.5714285714285714) internal successors, (143), 131 states have internal predecessors, (143), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:44:59,115 INFO L74 IsIncluded]: Start isIncluded. First operand 169 states. Second operand has 147 states, 91 states have (on average 1.5714285714285714) internal successors, (143), 131 states have internal predecessors, (143), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:44:59,115 INFO L87 Difference]: Start difference. First operand 169 states. Second operand has 147 states, 91 states have (on average 1.5714285714285714) internal successors, (143), 131 states have internal predecessors, (143), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:44:59,117 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:59,117 INFO L93 Difference]: Finished difference Result 169 states and 181 transitions. [2022-02-20 23:44:59,118 INFO L276 IsEmpty]: Start isEmpty. Operand 169 states and 181 transitions. [2022-02-20 23:44:59,118 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:59,118 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:59,118 INFO L74 IsIncluded]: Start isIncluded. First operand has 147 states, 91 states have (on average 1.5714285714285714) internal successors, (143), 131 states have internal predecessors, (143), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) Second operand 169 states. [2022-02-20 23:44:59,119 INFO L87 Difference]: Start difference. First operand has 147 states, 91 states have (on average 1.5714285714285714) internal successors, (143), 131 states have internal predecessors, (143), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) Second operand 169 states. [2022-02-20 23:44:59,121 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:59,121 INFO L93 Difference]: Finished difference Result 169 states and 181 transitions. [2022-02-20 23:44:59,121 INFO L276 IsEmpty]: Start isEmpty. Operand 169 states and 181 transitions. [2022-02-20 23:44:59,122 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:59,122 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:59,122 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:59,122 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:59,122 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 147 states, 91 states have (on average 1.5714285714285714) internal successors, (143), 131 states have internal predecessors, (143), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:44:59,124 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 147 states to 147 states and 163 transitions. [2022-02-20 23:44:59,124 INFO L78 Accepts]: Start accepts. Automaton has 147 states and 163 transitions. Word has length 11 [2022-02-20 23:44:59,124 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:59,124 INFO L470 AbstractCegarLoop]: Abstraction has 147 states and 163 transitions. [2022-02-20 23:44:59,124 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 2.0) internal successors, (10), 5 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:59,125 INFO L276 IsEmpty]: Start isEmpty. Operand 147 states and 163 transitions. [2022-02-20 23:44:59,125 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 14 [2022-02-20 23:44:59,125 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:59,125 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:59,134 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (10)] Forceful destruction successful, exit code 0 [2022-02-20 23:44:59,332 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:59,332 INFO L402 AbstractCegarLoop]: === Iteration 10 === Targeting list_addErr8REQUIRES_VIOLATION === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, list_emptyErr0REQUIRES_VIOLATION, list_emptyErr1REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:44:59,332 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:59,333 INFO L85 PathProgramCache]: Analyzing trace with hash -283761464, now seen corresponding path program 1 times [2022-02-20 23:44:59,333 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:59,333 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [2060070635] [2022-02-20 23:44:59,333 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:59,333 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:59,334 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:59,335 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:59,339 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:59,420 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:59,424 INFO L263 TraceCheckSpWp]: Trace formula consists of 127 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 23:44:59,431 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:59,431 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:59,470 INFO L290 TraceCheckUtils]: 0: Hoare triple {5849#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(12bv32, 2bv32);~#gl_list~0.base, ~#gl_list~0.offset := 3bv32, 0bv32;call #Ultimate.allocInit(8bv32, 3bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~#gl_list~0.offset, 4bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~bvadd32(4bv32, ~#gl_list~0.offset), 4bv32); {5849#true} is VALID [2022-02-20 23:44:59,470 INFO L290 TraceCheckUtils]: 1: Hoare triple {5849#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;assume { :begin_inline_gl_read } true;havoc gl_read_#t~nondet11#1, gl_read_#t~nondet10#1; {5849#true} is VALID [2022-02-20 23:44:59,470 INFO L290 TraceCheckUtils]: 2: Hoare triple {5849#true} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet11#1;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset, gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12bv32);gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset := gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset; {5849#true} is VALID [2022-02-20 23:44:59,470 INFO L290 TraceCheckUtils]: 3: Hoare triple {5849#true} assume !(gl_insert_~node~0#1.base == 0bv32 && gl_insert_~node~0#1.offset == 0bv32); {5849#true} is VALID [2022-02-20 23:44:59,470 INFO L290 TraceCheckUtils]: 4: Hoare triple {5849#true} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset, 4bv32); srcloc: L568-2 {5849#true} is VALID [2022-02-20 23:44:59,470 INFO L272 TraceCheckUtils]: 5: Hoare triple {5849#true} call list_add(gl_insert_~node~0#1.base, ~bvadd32(4bv32, gl_insert_~node~0#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {5849#true} is VALID [2022-02-20 23:44:59,471 INFO L290 TraceCheckUtils]: 6: Hoare triple {5849#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; {5849#true} is VALID [2022-02-20 23:44:59,471 INFO L290 TraceCheckUtils]: 7: Hoare triple {5849#true} SUMMARY for call #t~mem4#1.base, #t~mem4#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L547 {5875#(= (select |#valid| |list_add_~head#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:59,472 INFO L290 TraceCheckUtils]: 8: Hoare triple {5875#(= (select |#valid| |list_add_~head#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, ~head#1.base, ~head#1.offset, #t~mem4#1.base, #t~mem4#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; {5879#(= (select |#valid| |list_add___list_add_~prev#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:59,472 INFO L290 TraceCheckUtils]: 9: Hoare triple {5879#(= (select |#valid| |list_add___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: L535 {5879#(= (select |#valid| |list_add___list_add_~prev#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:59,472 INFO L290 TraceCheckUtils]: 10: Hoare triple {5879#(= (select |#valid| |list_add___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: L535-1 {5879#(= (select |#valid| |list_add___list_add_~prev#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:59,473 INFO L290 TraceCheckUtils]: 11: Hoare triple {5879#(= (select |#valid| |list_add___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: L536 {5879#(= (select |#valid| |list_add___list_add_~prev#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:59,473 INFO L290 TraceCheckUtils]: 12: Hoare triple {5879#(= (select |#valid| |list_add___list_add_~prev#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[__list_add_~prev#1.base]); {5850#false} is VALID [2022-02-20 23:44:59,473 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:44:59,473 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:59,474 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:59,474 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [2060070635] [2022-02-20 23:44:59,474 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [2060070635] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:59,474 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:59,474 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:44:59,474 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [593065498] [2022-02-20 23:44:59,474 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:59,475 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 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 13 [2022-02-20 23:44:59,475 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:59,475 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 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:59,491 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 13 edges. 13 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:59,491 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:44:59,491 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:59,492 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:44:59,492 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:44:59,492 INFO L87 Difference]: Start difference. First operand 147 states and 163 transitions. Second operand has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 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:59,997 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:59,998 INFO L93 Difference]: Finished difference Result 146 states and 160 transitions. [2022-02-20 23:44:59,998 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:44:59,998 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 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 13 [2022-02-20 23:44:59,998 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:59,998 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 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:59,999 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 132 transitions. [2022-02-20 23:44:59,999 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 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:45:00,000 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 132 transitions. [2022-02-20 23:45:00,000 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 132 transitions. [2022-02-20 23:45:00,124 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 132 edges. 132 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:00,125 INFO L225 Difference]: With dead ends: 146 [2022-02-20 23:45:00,126 INFO L226 Difference]: Without dead ends: 146 [2022-02-20 23:45:00,126 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 13 GetRequests, 10 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:45:00,126 INFO L933 BasicCegarLoop]: 123 mSDtfsCounter, 22 mSDsluCounter, 146 mSDsCounter, 0 mSdLazyCounter, 97 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 269 SdHoareTripleChecker+Invalid, 97 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 97 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:00,126 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [22 Valid, 269 Invalid, 97 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 97 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:45:00,127 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 146 states. [2022-02-20 23:45:00,128 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 146 to 146. [2022-02-20 23:45:00,128 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:00,129 INFO L82 GeneralOperation]: Start isEquivalent. First operand 146 states. Second operand has 146 states, 91 states have (on average 1.5384615384615385) internal successors, (140), 130 states have internal predecessors, (140), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:45:00,129 INFO L74 IsIncluded]: Start isIncluded. First operand 146 states. Second operand has 146 states, 91 states have (on average 1.5384615384615385) internal successors, (140), 130 states have internal predecessors, (140), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:45:00,129 INFO L87 Difference]: Start difference. First operand 146 states. Second operand has 146 states, 91 states have (on average 1.5384615384615385) internal successors, (140), 130 states have internal predecessors, (140), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:45:00,131 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:00,131 INFO L93 Difference]: Finished difference Result 146 states and 160 transitions. [2022-02-20 23:45:00,131 INFO L276 IsEmpty]: Start isEmpty. Operand 146 states and 160 transitions. [2022-02-20 23:45:00,131 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:00,131 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:00,132 INFO L74 IsIncluded]: Start isIncluded. First operand has 146 states, 91 states have (on average 1.5384615384615385) internal successors, (140), 130 states have internal predecessors, (140), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) Second operand 146 states. [2022-02-20 23:45:00,132 INFO L87 Difference]: Start difference. First operand has 146 states, 91 states have (on average 1.5384615384615385) internal successors, (140), 130 states have internal predecessors, (140), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) Second operand 146 states. [2022-02-20 23:45:00,134 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:00,134 INFO L93 Difference]: Finished difference Result 146 states and 160 transitions. [2022-02-20 23:45:00,134 INFO L276 IsEmpty]: Start isEmpty. Operand 146 states and 160 transitions. [2022-02-20 23:45:00,135 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:00,135 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:00,135 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:00,135 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:00,135 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 146 states, 91 states have (on average 1.5384615384615385) internal successors, (140), 130 states have internal predecessors, (140), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:45:00,137 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 146 states to 146 states and 160 transitions. [2022-02-20 23:45:00,137 INFO L78 Accepts]: Start accepts. Automaton has 146 states and 160 transitions. Word has length 13 [2022-02-20 23:45:00,137 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:00,137 INFO L470 AbstractCegarLoop]: Abstraction has 146 states and 160 transitions. [2022-02-20 23:45:00,138 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 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:45:00,138 INFO L276 IsEmpty]: Start isEmpty. Operand 146 states and 160 transitions. [2022-02-20 23:45:00,138 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 14 [2022-02-20 23:45:00,138 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:00,138 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:45:00,145 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (11)] Forceful destruction successful, exit code 0 [2022-02-20 23:45:00,345 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:45:00,345 INFO L402 AbstractCegarLoop]: === Iteration 11 === Targeting list_addErr9REQUIRES_VIOLATION === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, list_emptyErr0REQUIRES_VIOLATION, list_emptyErr1REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:00,345 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:00,346 INFO L85 PathProgramCache]: Analyzing trace with hash -283761463, now seen corresponding path program 1 times [2022-02-20 23:45:00,346 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:45:00,346 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [21616461] [2022-02-20 23:45:00,346 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:00,346 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:45:00,346 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:45:00,347 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:45:00,348 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (12)] Waiting until timeout for monitored process [2022-02-20 23:45:00,440 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:00,445 INFO L263 TraceCheckSpWp]: Trace formula consists of 127 conjuncts, 9 conjunts are in the unsatisfiable core [2022-02-20 23:45:00,453 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:00,454 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:00,595 INFO L290 TraceCheckUtils]: 0: Hoare triple {6477#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(12bv32, 2bv32);~#gl_list~0.base, ~#gl_list~0.offset := 3bv32, 0bv32;call #Ultimate.allocInit(8bv32, 3bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~#gl_list~0.offset, 4bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~bvadd32(4bv32, ~#gl_list~0.offset), 4bv32); {6482#(= |~#gl_list~0.offset| (_ bv0 32))} is VALID [2022-02-20 23:45:00,596 INFO L290 TraceCheckUtils]: 1: Hoare triple {6482#(= |~#gl_list~0.offset| (_ bv0 32))} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;assume { :begin_inline_gl_read } true;havoc gl_read_#t~nondet11#1, gl_read_#t~nondet10#1; {6482#(= |~#gl_list~0.offset| (_ bv0 32))} is VALID [2022-02-20 23:45:00,596 INFO L290 TraceCheckUtils]: 2: Hoare triple {6482#(= |~#gl_list~0.offset| (_ bv0 32))} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet11#1;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset, gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12bv32);gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset := gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset; {6482#(= |~#gl_list~0.offset| (_ bv0 32))} is VALID [2022-02-20 23:45:00,597 INFO L290 TraceCheckUtils]: 3: Hoare triple {6482#(= |~#gl_list~0.offset| (_ bv0 32))} assume !(gl_insert_~node~0#1.base == 0bv32 && gl_insert_~node~0#1.offset == 0bv32); {6482#(= |~#gl_list~0.offset| (_ bv0 32))} is VALID [2022-02-20 23:45:00,597 INFO L290 TraceCheckUtils]: 4: Hoare triple {6482#(= |~#gl_list~0.offset| (_ bv0 32))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset, 4bv32); srcloc: L568-2 {6482#(= |~#gl_list~0.offset| (_ bv0 32))} is VALID [2022-02-20 23:45:00,598 INFO L272 TraceCheckUtils]: 5: Hoare triple {6482#(= |~#gl_list~0.offset| (_ bv0 32))} call list_add(gl_insert_~node~0#1.base, ~bvadd32(4bv32, gl_insert_~node~0#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {6498#(= (_ bv0 32) |list_add_#in~head#1.offset|)} is VALID [2022-02-20 23:45:00,598 INFO L290 TraceCheckUtils]: 6: Hoare triple {6498#(= (_ bv0 32) |list_add_#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; {6502#(= |list_add_~head#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:45:00,599 INFO L290 TraceCheckUtils]: 7: Hoare triple {6502#(= |list_add_~head#1.offset| (_ bv0 32))} SUMMARY for call #t~mem4#1.base, #t~mem4#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L547 {6506#(and (bvule (bvadd |list_add_~head#1.offset| (_ bv4 32)) (select |#length| |list_add_~head#1.base|)) (= |list_add_~head#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:00,600 INFO L290 TraceCheckUtils]: 8: Hoare triple {6506#(and (bvule (bvadd |list_add_~head#1.offset| (_ bv4 32)) (select |#length| |list_add_~head#1.base|)) (= |list_add_~head#1.offset| (_ bv0 32)))} 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, ~head#1.base, ~head#1.offset, #t~mem4#1.base, #t~mem4#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; {6510#(and (= |list_add___list_add_~prev#1.offset| (_ bv0 32)) (bvule (bvadd |list_add___list_add_~prev#1.offset| (_ bv4 32)) (select |#length| |list_add___list_add_~prev#1.base|)))} is VALID [2022-02-20 23:45:00,600 INFO L290 TraceCheckUtils]: 9: Hoare triple {6510#(and (= |list_add___list_add_~prev#1.offset| (_ bv0 32)) (bvule (bvadd |list_add___list_add_~prev#1.offset| (_ bv4 32)) (select |#length| |list_add___list_add_~prev#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: L535 {6510#(and (= |list_add___list_add_~prev#1.offset| (_ bv0 32)) (bvule (bvadd |list_add___list_add_~prev#1.offset| (_ bv4 32)) (select |#length| |list_add___list_add_~prev#1.base|)))} is VALID [2022-02-20 23:45:00,601 INFO L290 TraceCheckUtils]: 10: Hoare triple {6510#(and (= |list_add___list_add_~prev#1.offset| (_ bv0 32)) (bvule (bvadd |list_add___list_add_~prev#1.offset| (_ bv4 32)) (select |#length| |list_add___list_add_~prev#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: L535-1 {6510#(and (= |list_add___list_add_~prev#1.offset| (_ bv0 32)) (bvule (bvadd |list_add___list_add_~prev#1.offset| (_ bv4 32)) (select |#length| |list_add___list_add_~prev#1.base|)))} is VALID [2022-02-20 23:45:00,601 INFO L290 TraceCheckUtils]: 11: Hoare triple {6510#(and (= |list_add___list_add_~prev#1.offset| (_ bv0 32)) (bvule (bvadd |list_add___list_add_~prev#1.offset| (_ bv4 32)) (select |#length| |list_add___list_add_~prev#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: L536 {6510#(and (= |list_add___list_add_~prev#1.offset| (_ bv0 32)) (bvule (bvadd |list_add___list_add_~prev#1.offset| (_ bv4 32)) (select |#length| |list_add___list_add_~prev#1.base|)))} is VALID [2022-02-20 23:45:00,602 INFO L290 TraceCheckUtils]: 12: Hoare triple {6510#(and (= |list_add___list_add_~prev#1.offset| (_ bv0 32)) (bvule (bvadd |list_add___list_add_~prev#1.offset| (_ bv4 32)) (select |#length| |list_add___list_add_~prev#1.base|)))} 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)); {6478#false} is VALID [2022-02-20 23:45:00,602 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:45:00,602 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:45:00,602 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:45:00,602 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [21616461] [2022-02-20 23:45:00,602 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [21616461] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:00,602 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:00,602 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:45:00,603 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [546325430] [2022-02-20 23:45:00,603 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:00,603 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 2.0) internal successors, (12), 5 states have internal predecessors, (12), 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 13 [2022-02-20 23:45:00,603 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:00,603 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 6 states have (on average 2.0) internal successors, (12), 5 states have internal predecessors, (12), 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:45:00,620 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 13 edges. 13 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:00,621 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 23:45:00,621 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:45:00,621 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 23:45:00,621 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=30, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:45:00,621 INFO L87 Difference]: Start difference. First operand 146 states and 160 transitions. Second operand has 7 states, 6 states have (on average 2.0) internal successors, (12), 5 states have internal predecessors, (12), 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:45:01,930 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:01,930 INFO L93 Difference]: Finished difference Result 148 states and 158 transitions. [2022-02-20 23:45:01,930 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:45:01,930 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 2.0) internal successors, (12), 5 states have internal predecessors, (12), 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 13 [2022-02-20 23:45:01,930 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:01,930 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 2.0) internal successors, (12), 5 states have internal predecessors, (12), 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:45:01,931 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 143 transitions. [2022-02-20 23:45:01,931 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 2.0) internal successors, (12), 5 states have internal predecessors, (12), 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:45:01,932 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 143 transitions. [2022-02-20 23:45:01,932 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 143 transitions. [2022-02-20 23:45:02,069 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 143 edges. 143 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:02,070 INFO L225 Difference]: With dead ends: 148 [2022-02-20 23:45:02,070 INFO L226 Difference]: Without dead ends: 148 [2022-02-20 23:45:02,071 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 16 GetRequests, 7 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=40, Invalid=70, Unknown=0, NotChecked=0, Total=110 [2022-02-20 23:45:02,071 INFO L933 BasicCegarLoop]: 115 mSDtfsCounter, 162 mSDsluCounter, 399 mSDsCounter, 0 mSdLazyCounter, 140 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 163 SdHoareTripleChecker+Valid, 514 SdHoareTripleChecker+Invalid, 140 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 140 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:02,071 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [163 Valid, 514 Invalid, 140 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 140 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-02-20 23:45:02,072 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 148 states. [2022-02-20 23:45:02,073 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 148 to 146. [2022-02-20 23:45:02,073 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:02,074 INFO L82 GeneralOperation]: Start isEquivalent. First operand 148 states. Second operand has 146 states, 91 states have (on average 1.5164835164835164) internal successors, (138), 130 states have internal predecessors, (138), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:45:02,074 INFO L74 IsIncluded]: Start isIncluded. First operand 148 states. Second operand has 146 states, 91 states have (on average 1.5164835164835164) internal successors, (138), 130 states have internal predecessors, (138), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:45:02,074 INFO L87 Difference]: Start difference. First operand 148 states. Second operand has 146 states, 91 states have (on average 1.5164835164835164) internal successors, (138), 130 states have internal predecessors, (138), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:45:02,076 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:02,076 INFO L93 Difference]: Finished difference Result 148 states and 158 transitions. [2022-02-20 23:45:02,076 INFO L276 IsEmpty]: Start isEmpty. Operand 148 states and 158 transitions. [2022-02-20 23:45:02,076 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:02,077 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:02,077 INFO L74 IsIncluded]: Start isIncluded. First operand has 146 states, 91 states have (on average 1.5164835164835164) internal successors, (138), 130 states have internal predecessors, (138), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) Second operand 148 states. [2022-02-20 23:45:02,077 INFO L87 Difference]: Start difference. First operand has 146 states, 91 states have (on average 1.5164835164835164) internal successors, (138), 130 states have internal predecessors, (138), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) Second operand 148 states. [2022-02-20 23:45:02,079 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:02,079 INFO L93 Difference]: Finished difference Result 148 states and 158 transitions. [2022-02-20 23:45:02,079 INFO L276 IsEmpty]: Start isEmpty. Operand 148 states and 158 transitions. [2022-02-20 23:45:02,079 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:02,079 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:02,079 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:02,079 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:02,080 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 146 states, 91 states have (on average 1.5164835164835164) internal successors, (138), 130 states have internal predecessors, (138), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:45:02,082 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 146 states to 146 states and 158 transitions. [2022-02-20 23:45:02,082 INFO L78 Accepts]: Start accepts. Automaton has 146 states and 158 transitions. Word has length 13 [2022-02-20 23:45:02,082 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:02,082 INFO L470 AbstractCegarLoop]: Abstraction has 146 states and 158 transitions. [2022-02-20 23:45:02,082 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 6 states have (on average 2.0) internal successors, (12), 5 states have internal predecessors, (12), 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:45:02,082 INFO L276 IsEmpty]: Start isEmpty. Operand 146 states and 158 transitions. [2022-02-20 23:45:02,082 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-02-20 23:45:02,082 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:02,082 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:45:02,090 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (12)] Ended with exit code 0 [2022-02-20 23:45:02,287 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:45:02,287 INFO L402 AbstractCegarLoop]: === Iteration 12 === Targeting list_emptyErr0REQUIRES_VIOLATION === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, list_emptyErr0REQUIRES_VIOLATION, list_emptyErr1REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:02,287 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:02,288 INFO L85 PathProgramCache]: Analyzing trace with hash -1628861501, now seen corresponding path program 1 times [2022-02-20 23:45:02,288 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:45:02,288 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1773225890] [2022-02-20 23:45:02,288 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:02,288 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:45:02,288 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:45:02,289 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:45:02,291 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (13)] Waiting until timeout for monitored process [2022-02-20 23:45:02,369 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:02,373 INFO L263 TraceCheckSpWp]: Trace formula consists of 152 conjuncts, 6 conjunts are in the unsatisfiable core [2022-02-20 23:45:02,382 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:02,382 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:02,467 INFO L290 TraceCheckUtils]: 0: Hoare triple {7120#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(12bv32, 2bv32);~#gl_list~0.base, ~#gl_list~0.offset := 3bv32, 0bv32;call #Ultimate.allocInit(8bv32, 3bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~#gl_list~0.offset, 4bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~bvadd32(4bv32, ~#gl_list~0.offset), 4bv32); {7120#true} is VALID [2022-02-20 23:45:02,467 INFO L290 TraceCheckUtils]: 1: Hoare triple {7120#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;assume { :begin_inline_gl_read } true;havoc gl_read_#t~nondet11#1, gl_read_#t~nondet10#1; {7120#true} is VALID [2022-02-20 23:45:02,468 INFO L290 TraceCheckUtils]: 2: Hoare triple {7120#true} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet11#1;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset, gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12bv32);gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset := gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset; {7120#true} is VALID [2022-02-20 23:45:02,468 INFO L290 TraceCheckUtils]: 3: Hoare triple {7120#true} assume !(gl_insert_~node~0#1.base == 0bv32 && gl_insert_~node~0#1.offset == 0bv32); {7120#true} is VALID [2022-02-20 23:45:02,468 INFO L290 TraceCheckUtils]: 4: Hoare triple {7120#true} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset, 4bv32); srcloc: L568-2 {7120#true} is VALID [2022-02-20 23:45:02,468 INFO L272 TraceCheckUtils]: 5: Hoare triple {7120#true} call list_add(gl_insert_~node~0#1.base, ~bvadd32(4bv32, gl_insert_~node~0#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {7120#true} is VALID [2022-02-20 23:45:02,471 INFO L290 TraceCheckUtils]: 6: Hoare triple {7120#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; {7143#(= |list_add_#in~head#1.base| |list_add_~head#1.base|)} is VALID [2022-02-20 23:45:02,472 INFO L290 TraceCheckUtils]: 7: Hoare triple {7143#(= |list_add_#in~head#1.base| |list_add_~head#1.base|)} SUMMARY for call #t~mem4#1.base, #t~mem4#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L547 {7147#(= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:45:02,472 INFO L290 TraceCheckUtils]: 8: Hoare triple {7147#(= (select |#valid| |list_add_#in~head#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, ~head#1.base, ~head#1.offset, #t~mem4#1.base, #t~mem4#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; {7147#(= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:45:02,472 INFO L290 TraceCheckUtils]: 9: Hoare triple {7147#(= (select |#valid| |list_add_#in~head#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: L535 {7147#(= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:45:02,473 INFO L290 TraceCheckUtils]: 10: Hoare triple {7147#(= (select |#valid| |list_add_#in~head#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: L535-1 {7147#(= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:45:02,473 INFO L290 TraceCheckUtils]: 11: Hoare triple {7147#(= (select |#valid| |list_add_#in~head#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: L536 {7147#(= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:45:02,474 INFO L290 TraceCheckUtils]: 12: Hoare triple {7147#(= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1))} 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: L537 {7147#(= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:45:02,475 INFO L290 TraceCheckUtils]: 13: Hoare triple {7147#(= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1))} assume { :end_inline___list_add } true;havoc #t~mem4#1.base, #t~mem4#1.offset; {7147#(= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:45:02,475 INFO L290 TraceCheckUtils]: 14: Hoare triple {7147#(= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1))} assume true; {7147#(= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:45:02,476 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7147#(= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1))} {7120#true} #196#return; {7172#(= (_ bv1 1) (select |#valid| |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:02,477 INFO L290 TraceCheckUtils]: 16: Hoare triple {7172#(= (_ bv1 1) (select |#valid| |~#gl_list~0.base|))} assume { :end_inline_gl_insert } true;havoc gl_read_#t~nondet11#1; {7172#(= (_ bv1 1) (select |#valid| |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:02,479 INFO L290 TraceCheckUtils]: 17: Hoare triple {7172#(= (_ bv1 1) (select |#valid| |~#gl_list~0.base|))} assume !(0bv32 != gl_read_#t~nondet10#1);havoc gl_read_#t~nondet10#1; {7172#(= (_ bv1 1) (select |#valid| |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:02,484 INFO L290 TraceCheckUtils]: 18: Hoare triple {7172#(= (_ bv1 1) (select |#valid| |~#gl_list~0.base|))} assume { :end_inline_gl_read } true;assume { :begin_inline_gl_sort } true;havoc gl_sort_#t~ret21#1, gl_sort_#t~ret22#1.base, gl_sort_#t~ret22#1.offset, gl_sort_~#dst~0#1.base, gl_sort_~#dst~0#1.offset, gl_sort_~max_pos~1#1.base, gl_sort_~max_pos~1#1.offset; {7172#(= (_ bv1 1) (select |#valid| |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:02,491 INFO L272 TraceCheckUtils]: 19: Hoare triple {7172#(= (_ bv1 1) (select |#valid| |~#gl_list~0.base|))} call gl_sort_#t~ret21#1 := list_empty(~#gl_list~0.base, ~#gl_list~0.offset); {7185#(= (select |#valid| |list_empty_#in~head.base|) (_ bv1 1))} is VALID [2022-02-20 23:45:02,496 INFO L290 TraceCheckUtils]: 20: Hoare triple {7185#(= (select |#valid| |list_empty_#in~head.base|) (_ bv1 1))} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {7189#(= (select |#valid| list_empty_~head.base) (_ bv1 1))} is VALID [2022-02-20 23:45:02,497 INFO L290 TraceCheckUtils]: 21: Hoare triple {7189#(= (select |#valid| list_empty_~head.base) (_ bv1 1))} assume !(1bv1 == #valid[~head.base]); {7121#false} is VALID [2022-02-20 23:45:02,497 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:45:02,497 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:45:02,498 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:45:02,498 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1773225890] [2022-02-20 23:45:02,498 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1773225890] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:02,498 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:02,498 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-02-20 23:45:02,498 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [203351] [2022-02-20 23:45:02,498 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:02,499 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 6 states have internal predecessors, (19), 2 states have call successors, (2), 2 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 22 [2022-02-20 23:45:02,499 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:02,499 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 6 states have internal predecessors, (19), 2 states have call successors, (2), 2 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:45:02,522 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:02,522 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 23:45:02,522 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:45:02,523 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 23:45:02,523 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:45:02,523 INFO L87 Difference]: Start difference. First operand 146 states and 158 transitions. Second operand has 7 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 6 states have internal predecessors, (19), 2 states have call successors, (2), 2 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:45:03,755 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:03,755 INFO L93 Difference]: Finished difference Result 145 states and 157 transitions. [2022-02-20 23:45:03,755 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-20 23:45:03,755 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 6 states have internal predecessors, (19), 2 states have call successors, (2), 2 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 22 [2022-02-20 23:45:03,755 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:03,755 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 6 states have internal predecessors, (19), 2 states have call successors, (2), 2 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:45:03,756 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 135 transitions. [2022-02-20 23:45:03,756 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 6 states have internal predecessors, (19), 2 states have call successors, (2), 2 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:45:03,757 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 135 transitions. [2022-02-20 23:45:03,757 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 135 transitions. [2022-02-20 23:45:03,880 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 135 edges. 135 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:03,881 INFO L225 Difference]: With dead ends: 145 [2022-02-20 23:45:03,881 INFO L226 Difference]: Without dead ends: 145 [2022-02-20 23:45:03,882 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 26 GetRequests, 16 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2022-02-20 23:45:03,882 INFO L933 BasicCegarLoop]: 71 mSDtfsCounter, 151 mSDsluCounter, 223 mSDsCounter, 0 mSdLazyCounter, 316 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 155 SdHoareTripleChecker+Valid, 294 SdHoareTripleChecker+Invalid, 322 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 316 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:03,882 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [155 Valid, 294 Invalid, 322 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 316 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-02-20 23:45:03,883 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 145 states. [2022-02-20 23:45:03,884 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 145 to 145. [2022-02-20 23:45:03,884 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:03,885 INFO L82 GeneralOperation]: Start isEquivalent. First operand 145 states. Second operand has 145 states, 91 states have (on average 1.5054945054945055) internal successors, (137), 129 states have internal predecessors, (137), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:45:03,885 INFO L74 IsIncluded]: Start isIncluded. First operand 145 states. Second operand has 145 states, 91 states have (on average 1.5054945054945055) internal successors, (137), 129 states have internal predecessors, (137), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:45:03,885 INFO L87 Difference]: Start difference. First operand 145 states. Second operand has 145 states, 91 states have (on average 1.5054945054945055) internal successors, (137), 129 states have internal predecessors, (137), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:45:03,887 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:03,887 INFO L93 Difference]: Finished difference Result 145 states and 157 transitions. [2022-02-20 23:45:03,887 INFO L276 IsEmpty]: Start isEmpty. Operand 145 states and 157 transitions. [2022-02-20 23:45:03,888 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:03,888 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:03,888 INFO L74 IsIncluded]: Start isIncluded. First operand has 145 states, 91 states have (on average 1.5054945054945055) internal successors, (137), 129 states have internal predecessors, (137), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) Second operand 145 states. [2022-02-20 23:45:03,889 INFO L87 Difference]: Start difference. First operand has 145 states, 91 states have (on average 1.5054945054945055) internal successors, (137), 129 states have internal predecessors, (137), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) Second operand 145 states. [2022-02-20 23:45:03,890 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:03,890 INFO L93 Difference]: Finished difference Result 145 states and 157 transitions. [2022-02-20 23:45:03,891 INFO L276 IsEmpty]: Start isEmpty. Operand 145 states and 157 transitions. [2022-02-20 23:45:03,891 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:03,891 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:03,891 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:03,891 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:03,891 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 145 states, 91 states have (on average 1.5054945054945055) internal successors, (137), 129 states have internal predecessors, (137), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:45:03,899 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 145 states to 145 states and 157 transitions. [2022-02-20 23:45:03,899 INFO L78 Accepts]: Start accepts. Automaton has 145 states and 157 transitions. Word has length 22 [2022-02-20 23:45:03,899 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:03,899 INFO L470 AbstractCegarLoop]: Abstraction has 145 states and 157 transitions. [2022-02-20 23:45:03,903 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 6 states have internal predecessors, (19), 2 states have call successors, (2), 2 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:45:03,903 INFO L276 IsEmpty]: Start isEmpty. Operand 145 states and 157 transitions. [2022-02-20 23:45:03,903 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-02-20 23:45:03,903 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:03,903 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:45:03,917 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:45:04,110 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:45:04,111 INFO L402 AbstractCegarLoop]: === Iteration 13 === Targeting list_emptyErr1REQUIRES_VIOLATION === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, list_emptyErr0REQUIRES_VIOLATION, list_emptyErr1REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:04,111 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:04,111 INFO L85 PathProgramCache]: Analyzing trace with hash -1628861500, now seen corresponding path program 1 times [2022-02-20 23:45:04,111 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:45:04,111 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [139412172] [2022-02-20 23:45:04,112 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:04,112 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:45:04,112 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:45:04,113 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:45:04,114 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:45:04,210 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:04,227 INFO L263 TraceCheckSpWp]: Trace formula consists of 152 conjuncts, 11 conjunts are in the unsatisfiable core [2022-02-20 23:45:04,235 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:04,236 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:04,422 INFO L290 TraceCheckUtils]: 0: Hoare triple {7782#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(12bv32, 2bv32);~#gl_list~0.base, ~#gl_list~0.offset := 3bv32, 0bv32;call #Ultimate.allocInit(8bv32, 3bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~#gl_list~0.offset, 4bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~bvadd32(4bv32, ~#gl_list~0.offset), 4bv32); {7787#(= |~#gl_list~0.offset| (_ bv0 32))} is VALID [2022-02-20 23:45:04,425 INFO L290 TraceCheckUtils]: 1: Hoare triple {7787#(= |~#gl_list~0.offset| (_ bv0 32))} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;assume { :begin_inline_gl_read } true;havoc gl_read_#t~nondet11#1, gl_read_#t~nondet10#1; {7787#(= |~#gl_list~0.offset| (_ bv0 32))} is VALID [2022-02-20 23:45:04,426 INFO L290 TraceCheckUtils]: 2: Hoare triple {7787#(= |~#gl_list~0.offset| (_ bv0 32))} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet11#1;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset, gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12bv32);gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset := gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset; {7787#(= |~#gl_list~0.offset| (_ bv0 32))} is VALID [2022-02-20 23:45:04,426 INFO L290 TraceCheckUtils]: 3: Hoare triple {7787#(= |~#gl_list~0.offset| (_ bv0 32))} assume !(gl_insert_~node~0#1.base == 0bv32 && gl_insert_~node~0#1.offset == 0bv32); {7787#(= |~#gl_list~0.offset| (_ bv0 32))} is VALID [2022-02-20 23:45:04,427 INFO L290 TraceCheckUtils]: 4: Hoare triple {7787#(= |~#gl_list~0.offset| (_ bv0 32))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset, 4bv32); srcloc: L568-2 {7787#(= |~#gl_list~0.offset| (_ bv0 32))} is VALID [2022-02-20 23:45:04,427 INFO L272 TraceCheckUtils]: 5: Hoare triple {7787#(= |~#gl_list~0.offset| (_ bv0 32))} call list_add(gl_insert_~node~0#1.base, ~bvadd32(4bv32, gl_insert_~node~0#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {7787#(= |~#gl_list~0.offset| (_ bv0 32))} is VALID [2022-02-20 23:45:04,428 INFO L290 TraceCheckUtils]: 6: Hoare triple {7787#(= |~#gl_list~0.offset| (_ bv0 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; {7806#(and (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~head#1.base| |list_add_~head#1.base|))} is VALID [2022-02-20 23:45:04,429 INFO L290 TraceCheckUtils]: 7: Hoare triple {7806#(and (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~head#1.base| |list_add_~head#1.base|))} SUMMARY for call #t~mem4#1.base, #t~mem4#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L547 {7810#(and (= |~#gl_list~0.offset| (_ bv0 32)) (bvule (bvadd (_ bv4 32) |list_add_#in~head#1.offset|) (select |#length| |list_add_#in~head#1.base|)))} is VALID [2022-02-20 23:45:04,429 INFO L290 TraceCheckUtils]: 8: Hoare triple {7810#(and (= |~#gl_list~0.offset| (_ bv0 32)) (bvule (bvadd (_ bv4 32) |list_add_#in~head#1.offset|) (select |#length| |list_add_#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, ~head#1.base, ~head#1.offset, #t~mem4#1.base, #t~mem4#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; {7810#(and (= |~#gl_list~0.offset| (_ bv0 32)) (bvule (bvadd (_ bv4 32) |list_add_#in~head#1.offset|) (select |#length| |list_add_#in~head#1.base|)))} is VALID [2022-02-20 23:45:04,430 INFO L290 TraceCheckUtils]: 9: Hoare triple {7810#(and (= |~#gl_list~0.offset| (_ bv0 32)) (bvule (bvadd (_ bv4 32) |list_add_#in~head#1.offset|) (select |#length| |list_add_#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: L535 {7810#(and (= |~#gl_list~0.offset| (_ bv0 32)) (bvule (bvadd (_ bv4 32) |list_add_#in~head#1.offset|) (select |#length| |list_add_#in~head#1.base|)))} is VALID [2022-02-20 23:45:04,431 INFO L290 TraceCheckUtils]: 10: Hoare triple {7810#(and (= |~#gl_list~0.offset| (_ bv0 32)) (bvule (bvadd (_ bv4 32) |list_add_#in~head#1.offset|) (select |#length| |list_add_#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: L535-1 {7810#(and (= |~#gl_list~0.offset| (_ bv0 32)) (bvule (bvadd (_ bv4 32) |list_add_#in~head#1.offset|) (select |#length| |list_add_#in~head#1.base|)))} is VALID [2022-02-20 23:45:04,431 INFO L290 TraceCheckUtils]: 11: Hoare triple {7810#(and (= |~#gl_list~0.offset| (_ bv0 32)) (bvule (bvadd (_ bv4 32) |list_add_#in~head#1.offset|) (select |#length| |list_add_#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: L536 {7810#(and (= |~#gl_list~0.offset| (_ bv0 32)) (bvule (bvadd (_ bv4 32) |list_add_#in~head#1.offset|) (select |#length| |list_add_#in~head#1.base|)))} is VALID [2022-02-20 23:45:04,432 INFO L290 TraceCheckUtils]: 12: Hoare triple {7810#(and (= |~#gl_list~0.offset| (_ bv0 32)) (bvule (bvadd (_ bv4 32) |list_add_#in~head#1.offset|) (select |#length| |list_add_#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: L537 {7810#(and (= |~#gl_list~0.offset| (_ bv0 32)) (bvule (bvadd (_ bv4 32) |list_add_#in~head#1.offset|) (select |#length| |list_add_#in~head#1.base|)))} is VALID [2022-02-20 23:45:04,432 INFO L290 TraceCheckUtils]: 13: Hoare triple {7810#(and (= |~#gl_list~0.offset| (_ bv0 32)) (bvule (bvadd (_ bv4 32) |list_add_#in~head#1.offset|) (select |#length| |list_add_#in~head#1.base|)))} assume { :end_inline___list_add } true;havoc #t~mem4#1.base, #t~mem4#1.offset; {7810#(and (= |~#gl_list~0.offset| (_ bv0 32)) (bvule (bvadd (_ bv4 32) |list_add_#in~head#1.offset|) (select |#length| |list_add_#in~head#1.base|)))} is VALID [2022-02-20 23:45:04,432 INFO L290 TraceCheckUtils]: 14: Hoare triple {7810#(and (= |~#gl_list~0.offset| (_ bv0 32)) (bvule (bvadd (_ bv4 32) |list_add_#in~head#1.offset|) (select |#length| |list_add_#in~head#1.base|)))} assume true; {7810#(and (= |~#gl_list~0.offset| (_ bv0 32)) (bvule (bvadd (_ bv4 32) |list_add_#in~head#1.offset|) (select |#length| |list_add_#in~head#1.base|)))} is VALID [2022-02-20 23:45:04,433 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7810#(and (= |~#gl_list~0.offset| (_ bv0 32)) (bvule (bvadd (_ bv4 32) |list_add_#in~head#1.offset|) (select |#length| |list_add_#in~head#1.base|)))} {7787#(= |~#gl_list~0.offset| (_ bv0 32))} #196#return; {7835#(and (bvule (bvadd (_ bv4 32) |~#gl_list~0.offset|) (select |#length| |~#gl_list~0.base|)) (= |~#gl_list~0.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:04,434 INFO L290 TraceCheckUtils]: 16: Hoare triple {7835#(and (bvule (bvadd (_ bv4 32) |~#gl_list~0.offset|) (select |#length| |~#gl_list~0.base|)) (= |~#gl_list~0.offset| (_ bv0 32)))} assume { :end_inline_gl_insert } true;havoc gl_read_#t~nondet11#1; {7835#(and (bvule (bvadd (_ bv4 32) |~#gl_list~0.offset|) (select |#length| |~#gl_list~0.base|)) (= |~#gl_list~0.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:04,434 INFO L290 TraceCheckUtils]: 17: Hoare triple {7835#(and (bvule (bvadd (_ bv4 32) |~#gl_list~0.offset|) (select |#length| |~#gl_list~0.base|)) (= |~#gl_list~0.offset| (_ bv0 32)))} assume !(0bv32 != gl_read_#t~nondet10#1);havoc gl_read_#t~nondet10#1; {7835#(and (bvule (bvadd (_ bv4 32) |~#gl_list~0.offset|) (select |#length| |~#gl_list~0.base|)) (= |~#gl_list~0.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:04,435 INFO L290 TraceCheckUtils]: 18: Hoare triple {7835#(and (bvule (bvadd (_ bv4 32) |~#gl_list~0.offset|) (select |#length| |~#gl_list~0.base|)) (= |~#gl_list~0.offset| (_ bv0 32)))} assume { :end_inline_gl_read } true;assume { :begin_inline_gl_sort } true;havoc gl_sort_#t~ret21#1, gl_sort_#t~ret22#1.base, gl_sort_#t~ret22#1.offset, gl_sort_~#dst~0#1.base, gl_sort_~#dst~0#1.offset, gl_sort_~max_pos~1#1.base, gl_sort_~max_pos~1#1.offset; {7835#(and (bvule (bvadd (_ bv4 32) |~#gl_list~0.offset|) (select |#length| |~#gl_list~0.base|)) (= |~#gl_list~0.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:04,435 INFO L272 TraceCheckUtils]: 19: Hoare triple {7835#(and (bvule (bvadd (_ bv4 32) |~#gl_list~0.offset|) (select |#length| |~#gl_list~0.base|)) (= |~#gl_list~0.offset| (_ bv0 32)))} call gl_sort_#t~ret21#1 := list_empty(~#gl_list~0.base, ~#gl_list~0.offset); {7848#(and (= |list_empty_#in~head.offset| (_ bv0 32)) (bvule (_ bv4 32) (select |#length| |list_empty_#in~head.base|)))} is VALID [2022-02-20 23:45:04,436 INFO L290 TraceCheckUtils]: 20: Hoare triple {7848#(and (= |list_empty_#in~head.offset| (_ bv0 32)) (bvule (_ bv4 32) (select |#length| |list_empty_#in~head.base|)))} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {7852#(and (= list_empty_~head.offset (_ bv0 32)) (bvule (_ bv4 32) (select |#length| list_empty_~head.base)))} is VALID [2022-02-20 23:45:04,437 INFO L290 TraceCheckUtils]: 21: Hoare triple {7852#(and (= list_empty_~head.offset (_ bv0 32)) (bvule (_ bv4 32) (select |#length| list_empty_~head.base)))} assume !((~bvule32(~bvadd32(4bv32, ~head.offset), #length[~head.base]) && ~bvule32(~head.offset, ~bvadd32(4bv32, ~head.offset))) && ~bvule32(0bv32, ~head.offset)); {7783#false} is VALID [2022-02-20 23:45:04,437 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:45:04,437 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:45:04,437 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:45:04,437 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [139412172] [2022-02-20 23:45:04,437 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [139412172] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:04,437 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:04,437 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-02-20 23:45:04,437 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [468490241] [2022-02-20 23:45:04,437 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:04,438 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 2 states have call successors, (2), 2 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 22 [2022-02-20 23:45:04,438 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:04,438 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 2 states have call successors, (2), 2 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:45:04,480 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:04,480 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 23:45:04,480 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:45:04,480 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 23:45:04,481 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=40, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:45:04,481 INFO L87 Difference]: Start difference. First operand 145 states and 157 transitions. Second operand has 8 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 2 states have call successors, (2), 2 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:45:06,224 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:06,224 INFO L93 Difference]: Finished difference Result 144 states and 156 transitions. [2022-02-20 23:45:06,224 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-20 23:45:06,224 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 2 states have call successors, (2), 2 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 22 [2022-02-20 23:45:06,225 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:06,225 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 2 states have call successors, (2), 2 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:45:06,226 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 132 transitions. [2022-02-20 23:45:06,226 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 2 states have call successors, (2), 2 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:45:06,227 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 132 transitions. [2022-02-20 23:45:06,227 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 132 transitions. [2022-02-20 23:45:06,402 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 132 edges. 132 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:06,404 INFO L225 Difference]: With dead ends: 144 [2022-02-20 23:45:06,404 INFO L226 Difference]: Without dead ends: 144 [2022-02-20 23:45:06,404 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 26 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=46, Invalid=110, Unknown=0, NotChecked=0, Total=156 [2022-02-20 23:45:06,404 INFO L933 BasicCegarLoop]: 73 mSDtfsCounter, 241 mSDsluCounter, 226 mSDsCounter, 0 mSdLazyCounter, 304 mSolverCounterSat, 23 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 245 SdHoareTripleChecker+Valid, 299 SdHoareTripleChecker+Invalid, 327 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 23 IncrementalHoareTripleChecker+Valid, 304 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:06,404 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [245 Valid, 299 Invalid, 327 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [23 Valid, 304 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-02-20 23:45:06,405 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 144 states. [2022-02-20 23:45:06,412 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 144 to 144. [2022-02-20 23:45:06,412 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:06,412 INFO L82 GeneralOperation]: Start isEquivalent. First operand 144 states. Second operand has 144 states, 91 states have (on average 1.4945054945054945) internal successors, (136), 128 states have internal predecessors, (136), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:45:06,413 INFO L74 IsIncluded]: Start isIncluded. First operand 144 states. Second operand has 144 states, 91 states have (on average 1.4945054945054945) internal successors, (136), 128 states have internal predecessors, (136), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:45:06,413 INFO L87 Difference]: Start difference. First operand 144 states. Second operand has 144 states, 91 states have (on average 1.4945054945054945) internal successors, (136), 128 states have internal predecessors, (136), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:45:06,415 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:06,415 INFO L93 Difference]: Finished difference Result 144 states and 156 transitions. [2022-02-20 23:45:06,415 INFO L276 IsEmpty]: Start isEmpty. Operand 144 states and 156 transitions. [2022-02-20 23:45:06,416 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:06,416 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:06,416 INFO L74 IsIncluded]: Start isIncluded. First operand has 144 states, 91 states have (on average 1.4945054945054945) internal successors, (136), 128 states have internal predecessors, (136), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) Second operand 144 states. [2022-02-20 23:45:06,417 INFO L87 Difference]: Start difference. First operand has 144 states, 91 states have (on average 1.4945054945054945) internal successors, (136), 128 states have internal predecessors, (136), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) Second operand 144 states. [2022-02-20 23:45:06,418 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:06,418 INFO L93 Difference]: Finished difference Result 144 states and 156 transitions. [2022-02-20 23:45:06,419 INFO L276 IsEmpty]: Start isEmpty. Operand 144 states and 156 transitions. [2022-02-20 23:45:06,419 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:06,419 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:06,419 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:06,419 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:06,419 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 144 states, 91 states have (on average 1.4945054945054945) internal successors, (136), 128 states have internal predecessors, (136), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:45:06,421 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 144 states to 144 states and 156 transitions. [2022-02-20 23:45:06,421 INFO L78 Accepts]: Start accepts. Automaton has 144 states and 156 transitions. Word has length 22 [2022-02-20 23:45:06,421 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:06,421 INFO L470 AbstractCegarLoop]: Abstraction has 144 states and 156 transitions. [2022-02-20 23:45:06,422 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 6 states have internal predecessors, (19), 2 states have call successors, (2), 2 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:45:06,422 INFO L276 IsEmpty]: Start isEmpty. Operand 144 states and 156 transitions. [2022-02-20 23:45:06,422 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2022-02-20 23:45:06,422 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:06,422 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:45:06,445 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:06,630 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:06,630 INFO L402 AbstractCegarLoop]: === Iteration 14 === Targeting list_addErr2REQUIRES_VIOLATION === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, list_emptyErr0REQUIRES_VIOLATION, list_emptyErr1REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:06,631 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:06,631 INFO L85 PathProgramCache]: Analyzing trace with hash 508658616, now seen corresponding path program 1 times [2022-02-20 23:45:06,632 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:45:06,632 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1307506022] [2022-02-20 23:45:06,632 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:06,632 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:45:06,632 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:45:06,633 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:06,634 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:06,782 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:06,791 INFO L263 TraceCheckSpWp]: Trace formula consists of 210 conjuncts, 32 conjunts are in the unsatisfiable core [2022-02-20 23:45:06,806 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:06,807 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:06,814 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:07,016 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:45:07,118 INFO L356 Elim1Store]: treesize reduction 54, result has 37.9 percent of original size [2022-02-20 23:45:07,118 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 0 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 5 case distinctions, treesize of input 29 treesize of output 50 [2022-02-20 23:45:07,229 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 25 [2022-02-20 23:45:07,570 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 26 treesize of output 14 [2022-02-20 23:45:07,845 INFO L290 TraceCheckUtils]: 0: Hoare triple {8441#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(12bv32, 2bv32);~#gl_list~0.base, ~#gl_list~0.offset := 3bv32, 0bv32;call #Ultimate.allocInit(8bv32, 3bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~#gl_list~0.offset, 4bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~bvadd32(4bv32, ~#gl_list~0.offset), 4bv32); {8441#true} is VALID [2022-02-20 23:45:07,845 INFO L290 TraceCheckUtils]: 1: Hoare triple {8441#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;assume { :begin_inline_gl_read } true;havoc gl_read_#t~nondet11#1, gl_read_#t~nondet10#1; {8441#true} is VALID [2022-02-20 23:45:07,846 INFO L290 TraceCheckUtils]: 2: Hoare triple {8441#true} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet11#1;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset, gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12bv32);gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset := gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset; {8452#(= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:45:07,847 INFO L290 TraceCheckUtils]: 3: Hoare triple {8452#(= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1))} assume !(gl_insert_~node~0#1.base == 0bv32 && gl_insert_~node~0#1.offset == 0bv32); {8452#(= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:45:07,847 INFO L290 TraceCheckUtils]: 4: Hoare triple {8452#(= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset, 4bv32); srcloc: L568-2 {8452#(= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:45:07,848 INFO L272 TraceCheckUtils]: 5: Hoare triple {8452#(= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1))} call list_add(gl_insert_~node~0#1.base, ~bvadd32(4bv32, gl_insert_~node~0#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {8462#(exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_3| (_ BitVec 32))) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_3|) (_ bv1 1)))} is VALID [2022-02-20 23:45:07,849 INFO L290 TraceCheckUtils]: 6: Hoare triple {8462#(exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_3| (_ BitVec 32))) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_3|) (_ 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; {8466#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_3| (_ BitVec 32))) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_3|) (_ bv1 1))) (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |list_add_#in~head#1.base| |list_add_~head#1.base|) (= |list_add_#in~new#1.base| |list_add_~new#1.base|))} is VALID [2022-02-20 23:45:07,849 INFO L290 TraceCheckUtils]: 7: Hoare triple {8466#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_3| (_ BitVec 32))) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_3|) (_ bv1 1))) (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |list_add_#in~head#1.base| |list_add_~head#1.base|) (= |list_add_#in~new#1.base| |list_add_~new#1.base|))} SUMMARY for call #t~mem4#1.base, #t~mem4#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L547 {8470#(and (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |list_add_#in~head#1.base| |list_add_~head#1.base|) (= (bvadd (bvneg (select |#valid| |list_add_~head#1.base|)) (_ bv1 1)) (_ bv0 1)) (= |list_add_#in~new#1.base| |list_add_~new#1.base|))} is VALID [2022-02-20 23:45:07,850 INFO L290 TraceCheckUtils]: 8: Hoare triple {8470#(and (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |list_add_#in~head#1.base| |list_add_~head#1.base|) (= (bvadd (bvneg (select |#valid| |list_add_~head#1.base|)) (_ bv1 1)) (_ bv0 1)) (= |list_add_#in~new#1.base| |list_add_~new#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, ~head#1.base, ~head#1.offset, #t~mem4#1.base, #t~mem4#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; {8474#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|) (= (bvadd (bvneg (select |#valid| |list_add___list_add_~prev#1.base|)) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:45:07,850 INFO L290 TraceCheckUtils]: 9: Hoare triple {8474#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|) (= (bvadd (bvneg (select |#valid| |list_add___list_add_~prev#1.base|)) (_ bv1 1)) (_ bv0 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: L535 {8474#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|) (= (bvadd (bvneg (select |#valid| |list_add___list_add_~prev#1.base|)) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:45:07,851 INFO L290 TraceCheckUtils]: 10: Hoare triple {8474#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|) (= (bvadd (bvneg (select |#valid| |list_add___list_add_~prev#1.base|)) (_ bv1 1)) (_ bv0 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: L535-1 {8474#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|) (= (bvadd (bvneg (select |#valid| |list_add___list_add_~prev#1.base|)) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:45:07,851 INFO L290 TraceCheckUtils]: 11: Hoare triple {8474#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|) (= (bvadd (bvneg (select |#valid| |list_add___list_add_~prev#1.base|)) (_ bv1 1)) (_ bv0 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: L536 {8474#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|) (= (bvadd (bvneg (select |#valid| |list_add___list_add_~prev#1.base|)) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:45:07,853 INFO L290 TraceCheckUtils]: 12: Hoare triple {8474#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|) (= (bvadd (bvneg (select |#valid| |list_add___list_add_~prev#1.base|)) (_ bv1 1)) (_ bv0 1)))} 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: L537 {8487#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= (bvadd (bvneg (select |#valid| |list_add_#in~head#1.base|)) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:45:07,853 INFO L290 TraceCheckUtils]: 13: Hoare triple {8487#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= (bvadd (bvneg (select |#valid| |list_add_#in~head#1.base|)) (_ bv1 1)) (_ bv0 1)))} assume { :end_inline___list_add } true;havoc #t~mem4#1.base, #t~mem4#1.offset; {8487#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= (bvadd (bvneg (select |#valid| |list_add_#in~head#1.base|)) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:45:07,853 INFO L290 TraceCheckUtils]: 14: Hoare triple {8487#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= (bvadd (bvneg (select |#valid| |list_add_#in~head#1.base|)) (_ bv1 1)) (_ bv0 1)))} assume true; {8487#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= (bvadd (bvneg (select |#valid| |list_add_#in~head#1.base|)) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:45:07,854 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {8487#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= (bvadd (bvneg (select |#valid| |list_add_#in~head#1.base|)) (_ bv1 1)) (_ bv0 1)))} {8452#(= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1))} #196#return; {8497#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv1 1)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| |~#gl_list~0.base|)))))} is VALID [2022-02-20 23:45:07,854 INFO L290 TraceCheckUtils]: 16: Hoare triple {8497#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv1 1)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| |~#gl_list~0.base|)))))} assume { :end_inline_gl_insert } true;havoc gl_read_#t~nondet11#1; {8497#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv1 1)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| |~#gl_list~0.base|)))))} is VALID [2022-02-20 23:45:07,855 INFO L290 TraceCheckUtils]: 17: Hoare triple {8497#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv1 1)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| |~#gl_list~0.base|)))))} assume !!(0bv32 != gl_read_#t~nondet10#1);havoc gl_read_#t~nondet10#1; {8497#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv1 1)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| |~#gl_list~0.base|)))))} is VALID [2022-02-20 23:45:07,857 INFO L290 TraceCheckUtils]: 18: Hoare triple {8497#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv1 1)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| |~#gl_list~0.base|)))))} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet11#1;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset, gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12bv32);gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset := gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset; {8507#(and (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| |~#gl_list~0.base|)) (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (= (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))) (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (exists ((v_arrayElimCell_17 (_ BitVec 1))) (and (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg v_arrayElimCell_17))) (= (_ bv0 1) (bvadd (bvneg v_arrayElimCell_17) (select |#valid| |~#gl_list~0.base|))))))} is VALID [2022-02-20 23:45:07,858 INFO L290 TraceCheckUtils]: 19: Hoare triple {8507#(and (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| |~#gl_list~0.base|)) (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (= (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))) (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (exists ((v_arrayElimCell_17 (_ BitVec 1))) (and (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg v_arrayElimCell_17))) (= (_ bv0 1) (bvadd (bvneg v_arrayElimCell_17) (select |#valid| |~#gl_list~0.base|))))))} assume !(gl_insert_~node~0#1.base == 0bv32 && gl_insert_~node~0#1.offset == 0bv32); {8507#(and (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| |~#gl_list~0.base|)) (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (= (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))) (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (exists ((v_arrayElimCell_17 (_ BitVec 1))) (and (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg v_arrayElimCell_17))) (= (_ bv0 1) (bvadd (bvneg v_arrayElimCell_17) (select |#valid| |~#gl_list~0.base|))))))} is VALID [2022-02-20 23:45:07,862 INFO L290 TraceCheckUtils]: 20: Hoare triple {8507#(and (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| |~#gl_list~0.base|)) (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (= (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))) (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (exists ((v_arrayElimCell_17 (_ BitVec 1))) (and (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg v_arrayElimCell_17))) (= (_ bv0 1) (bvadd (bvneg v_arrayElimCell_17) (select |#valid| |~#gl_list~0.base|))))))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset, 4bv32); srcloc: L568-2 {8514#(and (= (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))) (exists ((|ULTIMATE.start_gl_insert_~node~0#1.base| (_ BitVec 32))) (and (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| |~#gl_list~0.base|)) (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))) (exists ((v_arrayElimCell_17 (_ BitVec 1))) (and (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg v_arrayElimCell_17))) (= (_ bv0 1) (bvadd (bvneg v_arrayElimCell_17) (select |#valid| |~#gl_list~0.base|))))))} is VALID [2022-02-20 23:45:07,864 INFO L272 TraceCheckUtils]: 21: Hoare triple {8514#(and (= (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))) (exists ((|ULTIMATE.start_gl_insert_~node~0#1.base| (_ BitVec 32))) (and (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| |~#gl_list~0.base|)) (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))) (exists ((v_arrayElimCell_17 (_ BitVec 1))) (and (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg v_arrayElimCell_17))) (= (_ bv0 1) (bvadd (bvneg v_arrayElimCell_17) (select |#valid| |~#gl_list~0.base|))))))} call list_add(gl_insert_~node~0#1.base, ~bvadd32(4bv32, gl_insert_~node~0#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {8518#(and (= (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|))) (_ bv1 1)) (exists ((v_arrayElimCell_17 (_ BitVec 1))) (and (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg v_arrayElimCell_17))) (= (_ bv0 1) (bvadd (select |#valid| |list_add_#in~head#1.base|) (bvneg v_arrayElimCell_17))))) (exists ((|ULTIMATE.start_gl_insert_~node~0#1.base| (_ BitVec 32))) (and (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|))) (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (not (= |list_add_#in~head#1.base| |ULTIMATE.start_gl_insert_~node~0#1.base|)))))} is VALID [2022-02-20 23:45:07,865 INFO L290 TraceCheckUtils]: 22: Hoare triple {8518#(and (= (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|))) (_ bv1 1)) (exists ((v_arrayElimCell_17 (_ BitVec 1))) (and (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg v_arrayElimCell_17))) (= (_ bv0 1) (bvadd (select |#valid| |list_add_#in~head#1.base|) (bvneg v_arrayElimCell_17))))) (exists ((|ULTIMATE.start_gl_insert_~node~0#1.base| (_ BitVec 32))) (and (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|))) (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (not (= |list_add_#in~head#1.base| |ULTIMATE.start_gl_insert_~node~0#1.base|)))))} ~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; {8522#(and (= (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |list_add_~head#1.base|) |list_add_~head#1.offset|))) (_ bv1 1)) (exists ((v_arrayElimCell_17 (_ BitVec 1))) (and (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg v_arrayElimCell_17))) (= (bvadd (select |#valid| |list_add_~head#1.base|) (bvneg v_arrayElimCell_17)) (_ bv0 1)))) (exists ((|ULTIMATE.start_gl_insert_~node~0#1.base| (_ BitVec 32))) (and (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| (select (select |#memory_$Pointer$.base| |list_add_~head#1.base|) |list_add_~head#1.offset|))) (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (not (= |list_add_~head#1.base| |ULTIMATE.start_gl_insert_~node~0#1.base|)))))} is VALID [2022-02-20 23:45:07,867 INFO L290 TraceCheckUtils]: 23: Hoare triple {8522#(and (= (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |list_add_~head#1.base|) |list_add_~head#1.offset|))) (_ bv1 1)) (exists ((v_arrayElimCell_17 (_ BitVec 1))) (and (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg v_arrayElimCell_17))) (= (bvadd (select |#valid| |list_add_~head#1.base|) (bvneg v_arrayElimCell_17)) (_ bv0 1)))) (exists ((|ULTIMATE.start_gl_insert_~node~0#1.base| (_ BitVec 32))) (and (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| (select (select |#memory_$Pointer$.base| |list_add_~head#1.base|) |list_add_~head#1.offset|))) (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (not (= |list_add_~head#1.base| |ULTIMATE.start_gl_insert_~node~0#1.base|)))))} SUMMARY for call #t~mem4#1.base, #t~mem4#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L547 {8526#(and (= (bvneg (select |#valid| |list_add_#t~mem4#1.base|)) (_ bv1 1)) (exists ((|list_add_~head#1.base| (_ BitVec 32)) (|ULTIMATE.start_gl_insert_~node~0#1.base| (_ BitVec 32)) (v_arrayElimCell_17 (_ BitVec 1))) (and (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg v_arrayElimCell_17))) (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (not (= |list_add_~head#1.base| |ULTIMATE.start_gl_insert_~node~0#1.base|)) (= (bvadd (select |#valid| |list_add_~head#1.base|) (bvneg v_arrayElimCell_17)) (_ bv0 1)) (not (= |list_add_#t~mem4#1.base| |ULTIMATE.start_gl_insert_~node~0#1.base|)))))} is VALID [2022-02-20 23:45:07,870 INFO L290 TraceCheckUtils]: 24: Hoare triple {8526#(and (= (bvneg (select |#valid| |list_add_#t~mem4#1.base|)) (_ bv1 1)) (exists ((|list_add_~head#1.base| (_ BitVec 32)) (|ULTIMATE.start_gl_insert_~node~0#1.base| (_ BitVec 32)) (v_arrayElimCell_17 (_ BitVec 1))) (and (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg v_arrayElimCell_17))) (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (not (= |list_add_~head#1.base| |ULTIMATE.start_gl_insert_~node~0#1.base|)) (= (bvadd (select |#valid| |list_add_~head#1.base|) (bvneg v_arrayElimCell_17)) (_ bv0 1)) (not (= |list_add_#t~mem4#1.base| |ULTIMATE.start_gl_insert_~node~0#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, ~head#1.base, ~head#1.offset, #t~mem4#1.base, #t~mem4#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; {8530#(and (exists ((|list_add_~head#1.base| (_ BitVec 32)) (|ULTIMATE.start_gl_insert_~node~0#1.base| (_ BitVec 32)) (v_arrayElimCell_17 (_ BitVec 1))) (and (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| |list_add___list_add_~next#1.base|)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg v_arrayElimCell_17))) (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (not (= |list_add_~head#1.base| |ULTIMATE.start_gl_insert_~node~0#1.base|)) (= (bvadd (select |#valid| |list_add_~head#1.base|) (bvneg v_arrayElimCell_17)) (_ bv0 1)))) (= (bvneg (select |#valid| |list_add___list_add_~next#1.base|)) (_ bv1 1)))} is VALID [2022-02-20 23:45:07,870 INFO L290 TraceCheckUtils]: 25: Hoare triple {8530#(and (exists ((|list_add_~head#1.base| (_ BitVec 32)) (|ULTIMATE.start_gl_insert_~node~0#1.base| (_ BitVec 32)) (v_arrayElimCell_17 (_ BitVec 1))) (and (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| |list_add___list_add_~next#1.base|)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg v_arrayElimCell_17))) (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (not (= |list_add_~head#1.base| |ULTIMATE.start_gl_insert_~node~0#1.base|)) (= (bvadd (select |#valid| |list_add_~head#1.base|) (bvneg v_arrayElimCell_17)) (_ bv0 1)))) (= (bvneg (select |#valid| |list_add___list_add_~next#1.base|)) (_ bv1 1)))} assume !(1bv1 == #valid[__list_add_~next#1.base]); {8442#false} is VALID [2022-02-20 23:45:07,871 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 4 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:45:07,871 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:45:08,141 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_345 (Array (_ BitVec 32) (_ BitVec 32))) (|v_ULTIMATE.start_gl_insert_~node~0#1.base_10| (_ BitVec 32))) (or (not (= (select |c_#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_10|) (_ bv0 1))) (= (select (store |c_#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_10| (_ bv1 1)) (select (select (store |c_#memory_$Pointer$.base| |v_ULTIMATE.start_gl_insert_~node~0#1.base_10| v_ArrVal_345) |c_~#gl_list~0.base|) |c_~#gl_list~0.offset|)) (_ bv1 1)))) is different from false [2022-02-20 23:45:08,397 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:45:08,397 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 1 new quantified variables, introduced 1 case distinctions, treesize of input 23 treesize of output 24 [2022-02-20 23:45:08,400 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:45:08,403 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 21 treesize of output 13 [2022-02-20 23:45:08,433 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:45:08,433 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1307506022] [2022-02-20 23:45:08,433 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1307506022] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:45:08,433 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleCvc4 [1103090643] [2022-02-20 23:45:08,433 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:08,433 INFO L173 SolverBuilder]: Constructing external solver with command: cvc4 --incremental --print-success --lang smt [2022-02-20 23:45:08,434 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 [2022-02-20 23:45:08,435 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:08,438 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:08,676 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:08,681 INFO L263 TraceCheckSpWp]: Trace formula consists of 210 conjuncts, 34 conjunts are in the unsatisfiable core [2022-02-20 23:45:08,692 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:08,693 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:08,747 INFO L356 Elim1Store]: treesize reduction 12, result has 40.0 percent of original size [2022-02-20 23:45:08,747 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 12 treesize of output 17 [2022-02-20 23:45:09,119 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:45:09,336 INFO L356 Elim1Store]: treesize reduction 81, result has 35.7 percent of original size [2022-02-20 23:45:09,336 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 1 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 8 case distinctions, treesize of input 39 treesize of output 70 [2022-02-20 23:45:09,518 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 28 [2022-02-20 23:45:09,705 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 20 treesize of output 12 [2022-02-20 23:45:09,789 INFO L290 TraceCheckUtils]: 0: Hoare triple {8441#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(12bv32, 2bv32);~#gl_list~0.base, ~#gl_list~0.offset := 3bv32, 0bv32;call #Ultimate.allocInit(8bv32, 3bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~#gl_list~0.offset, 4bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~bvadd32(4bv32, ~#gl_list~0.offset), 4bv32); {8575#(and (= (_ bv1 1) (select |#valid| (_ bv1 32))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:09,790 INFO L290 TraceCheckUtils]: 1: Hoare triple {8575#(and (= (_ bv1 1) (select |#valid| (_ bv1 32))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;assume { :begin_inline_gl_read } true;havoc gl_read_#t~nondet11#1, gl_read_#t~nondet10#1; {8575#(and (= (_ bv1 1) (select |#valid| (_ bv1 32))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:09,791 INFO L290 TraceCheckUtils]: 2: Hoare triple {8575#(and (= (_ bv1 1) (select |#valid| (_ bv1 32))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet11#1;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset, gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12bv32);gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset := gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset; {8582#(and (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:09,792 INFO L290 TraceCheckUtils]: 3: Hoare triple {8582#(and (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} assume !(gl_insert_~node~0#1.base == 0bv32 && gl_insert_~node~0#1.offset == 0bv32); {8582#(and (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:09,792 INFO L290 TraceCheckUtils]: 4: Hoare triple {8582#(and (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset, 4bv32); srcloc: L568-2 {8582#(and (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:09,793 INFO L272 TraceCheckUtils]: 5: Hoare triple {8582#(and (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} call list_add(gl_insert_~node~0#1.base, ~bvadd32(4bv32, gl_insert_~node~0#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {8575#(and (= (_ bv1 1) (select |#valid| (_ bv1 32))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:09,794 INFO L290 TraceCheckUtils]: 6: Hoare triple {8575#(and (= (_ bv1 1) (select |#valid| (_ bv1 32))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} ~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; {8595#(and (= (_ bv1 1) (select |#valid| (_ bv1 32))) (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~head#1.base| |list_add_~head#1.base|) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add_#in~new#1.base| |list_add_~new#1.base|))} is VALID [2022-02-20 23:45:09,794 INFO L290 TraceCheckUtils]: 7: Hoare triple {8595#(and (= (_ bv1 1) (select |#valid| (_ bv1 32))) (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~head#1.base| |list_add_~head#1.base|) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add_#in~new#1.base| |list_add_~new#1.base|))} SUMMARY for call #t~mem4#1.base, #t~mem4#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L547 {8599#(and (= (_ bv1 1) (select |#valid| (_ bv1 32))) (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~head#1.base| |list_add_~head#1.base|) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add_#in~new#1.base| |list_add_~new#1.base|) (= (select |#valid| |list_add_~head#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:45:09,795 INFO L290 TraceCheckUtils]: 8: Hoare triple {8599#(and (= (_ bv1 1) (select |#valid| (_ bv1 32))) (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~head#1.base| |list_add_~head#1.base|) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add_#in~new#1.base| |list_add_~new#1.base|) (= (select |#valid| |list_add_~head#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, ~head#1.base, ~head#1.offset, #t~mem4#1.base, #t~mem4#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; {8603#(and (= (_ bv1 1) (select |#valid| (_ bv1 32))) (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|) (= (select |#valid| |list_add___list_add_~prev#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:45:09,796 INFO L290 TraceCheckUtils]: 9: Hoare triple {8603#(and (= (_ bv1 1) (select |#valid| (_ bv1 32))) (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|) (= (select |#valid| |list_add___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: L535 {8603#(and (= (_ bv1 1) (select |#valid| (_ bv1 32))) (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|) (= (select |#valid| |list_add___list_add_~prev#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:45:09,796 INFO L290 TraceCheckUtils]: 10: Hoare triple {8603#(and (= (_ bv1 1) (select |#valid| (_ bv1 32))) (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|) (= (select |#valid| |list_add___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: L535-1 {8603#(and (= (_ bv1 1) (select |#valid| (_ bv1 32))) (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|) (= (select |#valid| |list_add___list_add_~prev#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:45:09,797 INFO L290 TraceCheckUtils]: 11: Hoare triple {8603#(and (= (_ bv1 1) (select |#valid| (_ bv1 32))) (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|) (= (select |#valid| |list_add___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: L536 {8603#(and (= (_ bv1 1) (select |#valid| (_ bv1 32))) (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|) (= (select |#valid| |list_add___list_add_~prev#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:45:09,798 INFO L290 TraceCheckUtils]: 12: Hoare triple {8603#(and (= (_ bv1 1) (select |#valid| (_ bv1 32))) (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|) (= (select |#valid| |list_add___list_add_~prev#1.base|) (_ bv1 1)))} 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: L537 {8616#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= (_ bv1 1) (select |#valid| (_ bv1 32))) (= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:09,799 INFO L290 TraceCheckUtils]: 13: Hoare triple {8616#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= (_ bv1 1) (select |#valid| (_ bv1 32))) (= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} assume { :end_inline___list_add } true;havoc #t~mem4#1.base, #t~mem4#1.offset; {8616#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= (_ bv1 1) (select |#valid| (_ bv1 32))) (= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:09,799 INFO L290 TraceCheckUtils]: 14: Hoare triple {8616#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= (_ bv1 1) (select |#valid| (_ bv1 32))) (= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} assume true; {8616#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= (_ bv1 1) (select |#valid| (_ bv1 32))) (= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:09,801 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {8616#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= (_ bv1 1) (select |#valid| (_ bv1 32))) (= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} {8582#(and (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} #196#return; {8626#(and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| |~#gl_list~0.base|)))) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} is VALID [2022-02-20 23:45:09,801 INFO L290 TraceCheckUtils]: 16: Hoare triple {8626#(and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| |~#gl_list~0.base|)))) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} assume { :end_inline_gl_insert } true;havoc gl_read_#t~nondet11#1; {8626#(and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| |~#gl_list~0.base|)))) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} is VALID [2022-02-20 23:45:09,802 INFO L290 TraceCheckUtils]: 17: Hoare triple {8626#(and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| |~#gl_list~0.base|)))) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} assume !!(0bv32 != gl_read_#t~nondet10#1);havoc gl_read_#t~nondet10#1; {8626#(and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| |~#gl_list~0.base|)))) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} is VALID [2022-02-20 23:45:09,804 INFO L290 TraceCheckUtils]: 18: Hoare triple {8626#(and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| |~#gl_list~0.base|)))) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet11#1;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset, gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12bv32);gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset := gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset; {8636#(and (= (bvadd (_ bv1 1) (bvneg (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))) (_ bv0 1)) (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| |~#gl_list~0.base|)) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (exists ((v_arrayElimCell_24 (_ BitVec 1))) (and (= (_ bv0 1) (bvadd (bvneg v_arrayElimCell_24) (select |#valid| |~#gl_list~0.base|))) (= (_ bv0 1) (bvadd (bvneg v_arrayElimCell_24) (_ bv1 1))))) (= |~#gl_list~0.offset| (_ bv0 32)) (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| (_ bv1 32))) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:09,805 INFO L290 TraceCheckUtils]: 19: Hoare triple {8636#(and (= (bvadd (_ bv1 1) (bvneg (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))) (_ bv0 1)) (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| |~#gl_list~0.base|)) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (exists ((v_arrayElimCell_24 (_ BitVec 1))) (and (= (_ bv0 1) (bvadd (bvneg v_arrayElimCell_24) (select |#valid| |~#gl_list~0.base|))) (= (_ bv0 1) (bvadd (bvneg v_arrayElimCell_24) (_ bv1 1))))) (= |~#gl_list~0.offset| (_ bv0 32)) (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| (_ bv1 32))) (= (_ bv3 32) |~#gl_list~0.base|))} assume !(gl_insert_~node~0#1.base == 0bv32 && gl_insert_~node~0#1.offset == 0bv32); {8636#(and (= (bvadd (_ bv1 1) (bvneg (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))) (_ bv0 1)) (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| |~#gl_list~0.base|)) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (exists ((v_arrayElimCell_24 (_ BitVec 1))) (and (= (_ bv0 1) (bvadd (bvneg v_arrayElimCell_24) (select |#valid| |~#gl_list~0.base|))) (= (_ bv0 1) (bvadd (bvneg v_arrayElimCell_24) (_ bv1 1))))) (= |~#gl_list~0.offset| (_ bv0 32)) (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| (_ bv1 32))) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:09,808 INFO L290 TraceCheckUtils]: 20: Hoare triple {8636#(and (= (bvadd (_ bv1 1) (bvneg (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))) (_ bv0 1)) (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| |~#gl_list~0.base|)) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (exists ((v_arrayElimCell_24 (_ BitVec 1))) (and (= (_ bv0 1) (bvadd (bvneg v_arrayElimCell_24) (select |#valid| |~#gl_list~0.base|))) (= (_ bv0 1) (bvadd (bvneg v_arrayElimCell_24) (_ bv1 1))))) (= |~#gl_list~0.offset| (_ bv0 32)) (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| (_ bv1 32))) (= (_ bv3 32) |~#gl_list~0.base|))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset, 4bv32); srcloc: L568-2 {8626#(and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| |~#gl_list~0.base|)))) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} is VALID [2022-02-20 23:45:09,809 INFO L272 TraceCheckUtils]: 21: Hoare triple {8626#(and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| |~#gl_list~0.base|)))) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} call list_add(gl_insert_~node~0#1.base, ~bvadd32(4bv32, gl_insert_~node~0#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {8646#(and (= |list_add_#in~head#1.base| (_ bv3 32)) (= (_ bv0 1) (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) (_ bv0 32)))) (_ bv1 1))) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= (bvadd (bvneg (select |#valid| |list_add_#in~head#1.base|)) (_ bv1 1)) (_ bv0 1)) (= (_ bv0 32) |list_add_#in~head#1.offset|))} is VALID [2022-02-20 23:45:09,810 INFO L290 TraceCheckUtils]: 22: Hoare triple {8646#(and (= |list_add_#in~head#1.base| (_ bv3 32)) (= (_ bv0 1) (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) (_ bv0 32)))) (_ bv1 1))) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= (bvadd (bvneg (select |#valid| |list_add_#in~head#1.base|)) (_ bv1 1)) (_ bv0 1)) (= (_ bv0 32) |list_add_#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; {8650#(and (= (_ bv0 1) (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| (_ bv3 32)) (_ bv0 32)))) (_ bv1 1))) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= |list_add_~head#1.base| (_ bv3 32)) (= |list_add_~head#1.offset| (_ bv0 32)) (= (bvadd (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:45:09,810 INFO L290 TraceCheckUtils]: 23: Hoare triple {8650#(and (= (_ bv0 1) (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| (_ bv3 32)) (_ bv0 32)))) (_ bv1 1))) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= |list_add_~head#1.base| (_ bv3 32)) (= |list_add_~head#1.offset| (_ bv0 32)) (= (bvadd (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (_ bv0 1)))} SUMMARY for call #t~mem4#1.base, #t~mem4#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L547 {8654#(and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= (bvadd (bvneg (select |#valid| |list_add_#t~mem4#1.base|)) (_ bv1 1)) (_ bv0 1)) (= (bvadd (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:45:09,811 INFO L290 TraceCheckUtils]: 24: Hoare triple {8654#(and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= (bvadd (bvneg (select |#valid| |list_add_#t~mem4#1.base|)) (_ bv1 1)) (_ bv0 1)) (= (bvadd (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (_ bv0 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, ~head#1.base, ~head#1.offset, #t~mem4#1.base, #t~mem4#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; {8658#(and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= (bvadd (bvneg (select |#valid| |list_add___list_add_~next#1.base|)) (_ bv1 1)) (_ bv0 1)) (= (bvadd (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:45:09,811 INFO L290 TraceCheckUtils]: 25: Hoare triple {8658#(and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= (bvadd (bvneg (select |#valid| |list_add___list_add_~next#1.base|)) (_ bv1 1)) (_ bv0 1)) (= (bvadd (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (_ bv0 1)))} assume !(1bv1 == #valid[__list_add_~next#1.base]); {8442#false} is VALID [2022-02-20 23:45:09,812 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 1 proven. 7 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:45:09,812 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:45:09,898 WARN L838 $PredicateComparison]: unable to prove that (forall ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_12| (_ BitVec 32)) (v_ArrVal_345 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_409 (_ BitVec 1))) (or (= (select (store |c_#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_12| v_ArrVal_409) (select (select (store |c_#memory_$Pointer$.base| |v_ULTIMATE.start_gl_insert_~node~0#1.base_12| v_ArrVal_345) |c_~#gl_list~0.base|) |c_~#gl_list~0.offset|)) (_ bv1 1)) (not (= (select |c_#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_12|) (_ bv0 1))))) is different from false [2022-02-20 23:45:10,087 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:45:10,088 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 1 new quantified variables, introduced 1 case distinctions, treesize of input 23 treesize of output 24 [2022-02-20 23:45:10,089 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:45:10,092 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 21 treesize of output 13 [2022-02-20 23:45:12,133 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleCvc4 [1103090643] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:45:12,133 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:45:12,133 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 12] total 26 [2022-02-20 23:45:12,133 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [771892631] [2022-02-20 23:45:12,133 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:45:12,134 INFO L78 Accepts]: Start accepts. Automaton has has 27 states, 25 states have (on average 1.84) internal successors, (46), 24 states have internal predecessors, (46), 4 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Word has length 26 [2022-02-20 23:45:12,134 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:12,134 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 27 states, 25 states have (on average 1.84) internal successors, (46), 24 states have internal predecessors, (46), 4 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:45:12,210 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:12,210 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 27 states [2022-02-20 23:45:12,211 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:45:12,211 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2022-02-20 23:45:12,211 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=146, Invalid=1045, Unknown=7, NotChecked=134, Total=1332 [2022-02-20 23:45:12,211 INFO L87 Difference]: Start difference. First operand 144 states and 156 transitions. Second operand has 27 states, 25 states have (on average 1.84) internal successors, (46), 24 states have internal predecessors, (46), 4 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:45:14,608 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:14,608 INFO L93 Difference]: Finished difference Result 144 states and 155 transitions. [2022-02-20 23:45:14,608 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-02-20 23:45:14,608 INFO L78 Accepts]: Start accepts. Automaton has has 27 states, 25 states have (on average 1.84) internal successors, (46), 24 states have internal predecessors, (46), 4 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Word has length 26 [2022-02-20 23:45:14,609 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:14,609 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 25 states have (on average 1.84) internal successors, (46), 24 states have internal predecessors, (46), 4 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:45:14,610 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 149 transitions. [2022-02-20 23:45:14,611 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 25 states have (on average 1.84) internal successors, (46), 24 states have internal predecessors, (46), 4 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:45:14,612 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 149 transitions. [2022-02-20 23:45:14,612 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states and 149 transitions. [2022-02-20 23:45:14,833 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 149 edges. 149 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:14,836 INFO L225 Difference]: With dead ends: 144 [2022-02-20 23:45:14,836 INFO L226 Difference]: Without dead ends: 144 [2022-02-20 23:45:14,838 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 81 GetRequests, 35 SyntacticMatches, 3 SemanticMatches, 43 ConstructedPredicates, 2 IntricatePredicates, 0 DeprecatedPredicates, 472 ImplicationChecksByTransitivity, 3.6s TimeCoverageRelationStatistics Valid=280, Invalid=1527, Unknown=7, NotChecked=166, Total=1980 [2022-02-20 23:45:14,840 INFO L933 BasicCegarLoop]: 118 mSDtfsCounter, 63 mSDsluCounter, 702 mSDsCounter, 0 mSdLazyCounter, 276 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 63 SdHoareTripleChecker+Valid, 820 SdHoareTripleChecker+Invalid, 662 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 276 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 386 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:14,840 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [63 Valid, 820 Invalid, 662 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 276 Invalid, 0 Unknown, 386 Unchecked, 0.4s Time] [2022-02-20 23:45:14,841 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 144 states. [2022-02-20 23:45:14,844 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 144 to 144. [2022-02-20 23:45:14,844 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:14,845 INFO L82 GeneralOperation]: Start isEquivalent. First operand 144 states. Second operand has 144 states, 91 states have (on average 1.4835164835164836) internal successors, (135), 128 states have internal predecessors, (135), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:45:14,845 INFO L74 IsIncluded]: Start isIncluded. First operand 144 states. Second operand has 144 states, 91 states have (on average 1.4835164835164836) internal successors, (135), 128 states have internal predecessors, (135), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:45:14,845 INFO L87 Difference]: Start difference. First operand 144 states. Second operand has 144 states, 91 states have (on average 1.4835164835164836) internal successors, (135), 128 states have internal predecessors, (135), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:45:14,847 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:14,847 INFO L93 Difference]: Finished difference Result 144 states and 155 transitions. [2022-02-20 23:45:14,847 INFO L276 IsEmpty]: Start isEmpty. Operand 144 states and 155 transitions. [2022-02-20 23:45:14,848 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:14,848 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:14,848 INFO L74 IsIncluded]: Start isIncluded. First operand has 144 states, 91 states have (on average 1.4835164835164836) internal successors, (135), 128 states have internal predecessors, (135), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) Second operand 144 states. [2022-02-20 23:45:14,848 INFO L87 Difference]: Start difference. First operand has 144 states, 91 states have (on average 1.4835164835164836) internal successors, (135), 128 states have internal predecessors, (135), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) Second operand 144 states. [2022-02-20 23:45:14,850 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:14,850 INFO L93 Difference]: Finished difference Result 144 states and 155 transitions. [2022-02-20 23:45:14,851 INFO L276 IsEmpty]: Start isEmpty. Operand 144 states and 155 transitions. [2022-02-20 23:45:14,851 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:14,851 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:14,851 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:14,851 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:14,851 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 144 states, 91 states have (on average 1.4835164835164836) internal successors, (135), 128 states have internal predecessors, (135), 10 states have call successors, (10), 6 states have call predecessors, (10), 6 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:45:14,854 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 144 states to 144 states and 155 transitions. [2022-02-20 23:45:14,854 INFO L78 Accepts]: Start accepts. Automaton has 144 states and 155 transitions. Word has length 26 [2022-02-20 23:45:14,854 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:14,854 INFO L470 AbstractCegarLoop]: Abstraction has 144 states and 155 transitions. [2022-02-20 23:45:14,854 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 27 states, 25 states have (on average 1.84) internal successors, (46), 24 states have internal predecessors, (46), 4 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:45:14,854 INFO L276 IsEmpty]: Start isEmpty. Operand 144 states and 155 transitions. [2022-02-20 23:45:14,855 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2022-02-20 23:45:14,855 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:14,855 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:45:14,860 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:15,070 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:15,266 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:15,266 INFO L402 AbstractCegarLoop]: === Iteration 15 === Targeting list_addErr3REQUIRES_VIOLATION === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, list_emptyErr0REQUIRES_VIOLATION, list_emptyErr1REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:15,266 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:15,267 INFO L85 PathProgramCache]: Analyzing trace with hash 508658617, now seen corresponding path program 1 times [2022-02-20 23:45:15,267 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:45:15,267 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1342195336] [2022-02-20 23:45:15,267 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:15,267 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:45:15,267 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:45:15,269 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:15,270 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:15,462 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:15,471 INFO L263 TraceCheckSpWp]: Trace formula consists of 210 conjuncts, 47 conjunts are in the unsatisfiable core [2022-02-20 23:45:15,483 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:15,484 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:15,494 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:15,496 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:15,736 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:45:15,743 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:45:15,878 INFO L356 Elim1Store]: treesize reduction 19, result has 47.2 percent of original size [2022-02-20 23:45:15,878 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 16 treesize of output 26 [2022-02-20 23:45:15,894 INFO L356 Elim1Store]: treesize reduction 20, result has 39.4 percent of original size [2022-02-20 23:45:15,894 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 0 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 25 treesize of output 27 [2022-02-20 23:45:15,956 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 24 treesize of output 24 [2022-02-20 23:45:15,969 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 2 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:16,062 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2022-02-20 23:45:16,067 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 9 [2022-02-20 23:45:16,124 INFO L290 TraceCheckUtils]: 0: Hoare triple {9289#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(12bv32, 2bv32);~#gl_list~0.base, ~#gl_list~0.offset := 3bv32, 0bv32;call #Ultimate.allocInit(8bv32, 3bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~#gl_list~0.offset, 4bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~bvadd32(4bv32, ~#gl_list~0.offset), 4bv32); {9289#true} is VALID [2022-02-20 23:45:16,124 INFO L290 TraceCheckUtils]: 1: Hoare triple {9289#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;assume { :begin_inline_gl_read } true;havoc gl_read_#t~nondet11#1, gl_read_#t~nondet10#1; {9289#true} is VALID [2022-02-20 23:45:16,125 INFO L290 TraceCheckUtils]: 2: Hoare triple {9289#true} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet11#1;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset, gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12bv32);gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset := gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset; {9300#(and (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)))} is VALID [2022-02-20 23:45:16,125 INFO L290 TraceCheckUtils]: 3: Hoare triple {9300#(and (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)))} assume !(gl_insert_~node~0#1.base == 0bv32 && gl_insert_~node~0#1.offset == 0bv32); {9300#(and (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)))} is VALID [2022-02-20 23:45:16,126 INFO L290 TraceCheckUtils]: 4: Hoare triple {9300#(and (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset, 4bv32); srcloc: L568-2 {9300#(and (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)))} is VALID [2022-02-20 23:45:16,127 INFO L272 TraceCheckUtils]: 5: Hoare triple {9300#(and (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)))} call list_add(gl_insert_~node~0#1.base, ~bvadd32(4bv32, gl_insert_~node~0#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {9310#(exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7| (_ BitVec 32))) (and (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|) (_ bv12 32))))} is VALID [2022-02-20 23:45:16,127 INFO L290 TraceCheckUtils]: 6: Hoare triple {9310#(exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7| (_ BitVec 32))) (and (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|) (_ 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; {9314#(and (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |list_add_~new#1.offset| |list_add_#in~new#1.offset|) (= |list_add_#in~head#1.base| |list_add_~head#1.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7| (_ BitVec 32))) (and (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|) (_ bv12 32)))) (= |list_add_#in~new#1.base| |list_add_~new#1.base|))} is VALID [2022-02-20 23:45:16,131 INFO L290 TraceCheckUtils]: 7: Hoare triple {9314#(and (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |list_add_~new#1.offset| |list_add_#in~new#1.offset|) (= |list_add_#in~head#1.base| |list_add_~head#1.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7| (_ BitVec 32))) (and (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|) (_ bv12 32)))) (= |list_add_#in~new#1.base| |list_add_~new#1.base|))} SUMMARY for call #t~mem4#1.base, #t~mem4#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L547 {9318#(and (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |list_add_~new#1.offset| |list_add_#in~new#1.offset|) (= |list_add_#in~head#1.base| |list_add_~head#1.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7| (_ BitVec 32))) (and (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|) (_ bv12 32)))) (= |list_add_#in~new#1.base| |list_add_~new#1.base|) (= (select |#valid| |list_add_~head#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:45:16,131 INFO L290 TraceCheckUtils]: 8: Hoare triple {9318#(and (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |list_add_~new#1.offset| |list_add_#in~new#1.offset|) (= |list_add_#in~head#1.base| |list_add_~head#1.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7| (_ BitVec 32))) (and (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|) (_ bv12 32)))) (= |list_add_#in~new#1.base| |list_add_~new#1.base|) (= (select |#valid| |list_add_~head#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, ~head#1.base, ~head#1.offset, #t~mem4#1.base, #t~mem4#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; {9322#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7| (_ BitVec 32))) (and (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|) (_ bv12 32)))) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|) (= (select |#valid| |list_add___list_add_~prev#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:45:16,132 INFO L290 TraceCheckUtils]: 9: Hoare triple {9322#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7| (_ BitVec 32))) (and (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|) (_ bv12 32)))) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|) (= (select |#valid| |list_add___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: L535 {9322#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7| (_ BitVec 32))) (and (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|) (_ bv12 32)))) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|) (= (select |#valid| |list_add___list_add_~prev#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:45:16,133 INFO L290 TraceCheckUtils]: 10: Hoare triple {9322#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7| (_ BitVec 32))) (and (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|) (_ bv12 32)))) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|) (= (select |#valid| |list_add___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: L535-1 {9322#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7| (_ BitVec 32))) (and (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|) (_ bv12 32)))) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|) (= (select |#valid| |list_add___list_add_~prev#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:45:16,133 INFO L290 TraceCheckUtils]: 11: Hoare triple {9322#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7| (_ BitVec 32))) (and (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|) (_ bv12 32)))) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|) (= (select |#valid| |list_add___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: L536 {9322#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7| (_ BitVec 32))) (and (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|) (_ bv12 32)))) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|) (= (select |#valid| |list_add___list_add_~prev#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:45:16,135 INFO L290 TraceCheckUtils]: 12: Hoare triple {9322#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7| (_ BitVec 32))) (and (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|) (_ bv12 32)))) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|) (= (select |#valid| |list_add___list_add_~prev#1.base|) (_ bv1 1)))} 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: L537 {9335#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1)) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7| (_ BitVec 32))) (and (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|) (_ bv12 32)))) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} is VALID [2022-02-20 23:45:16,135 INFO L290 TraceCheckUtils]: 13: Hoare triple {9335#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1)) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7| (_ BitVec 32))) (and (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|) (_ bv12 32)))) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} assume { :end_inline___list_add } true;havoc #t~mem4#1.base, #t~mem4#1.offset; {9335#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1)) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7| (_ BitVec 32))) (and (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|) (_ bv12 32)))) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} is VALID [2022-02-20 23:45:16,135 INFO L290 TraceCheckUtils]: 14: Hoare triple {9335#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1)) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7| (_ BitVec 32))) (and (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|) (_ bv12 32)))) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} assume true; {9335#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1)) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7| (_ BitVec 32))) (and (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|) (_ bv12 32)))) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} is VALID [2022-02-20 23:45:16,136 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {9335#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1)) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7| (_ BitVec 32))) (and (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_7|) (_ bv12 32)))) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} {9300#(and (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)))} #196#return; {9345#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (bvadd (_ bv1 1) (select |#valid| |~#gl_list~0.base|)) (_ bv0 1)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} is VALID [2022-02-20 23:45:16,137 INFO L290 TraceCheckUtils]: 16: Hoare triple {9345#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (bvadd (_ bv1 1) (select |#valid| |~#gl_list~0.base|)) (_ bv0 1)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} assume { :end_inline_gl_insert } true;havoc gl_read_#t~nondet11#1; {9345#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (bvadd (_ bv1 1) (select |#valid| |~#gl_list~0.base|)) (_ bv0 1)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} is VALID [2022-02-20 23:45:16,137 INFO L290 TraceCheckUtils]: 17: Hoare triple {9345#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (bvadd (_ bv1 1) (select |#valid| |~#gl_list~0.base|)) (_ bv0 1)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} assume !!(0bv32 != gl_read_#t~nondet10#1);havoc gl_read_#t~nondet10#1; {9345#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (bvadd (_ bv1 1) (select |#valid| |~#gl_list~0.base|)) (_ bv0 1)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} is VALID [2022-02-20 23:45:16,139 INFO L290 TraceCheckUtils]: 18: Hoare triple {9345#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (bvadd (_ bv1 1) (select |#valid| |~#gl_list~0.base|)) (_ bv0 1)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet11#1;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset, gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12bv32);gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset := gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset; {9355#(and (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| |~#gl_list~0.base|)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)))} is VALID [2022-02-20 23:45:16,139 INFO L290 TraceCheckUtils]: 19: Hoare triple {9355#(and (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| |~#gl_list~0.base|)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)))} assume !(gl_insert_~node~0#1.base == 0bv32 && gl_insert_~node~0#1.offset == 0bv32); {9355#(and (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| |~#gl_list~0.base|)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)))} is VALID [2022-02-20 23:45:16,142 INFO L290 TraceCheckUtils]: 20: Hoare triple {9355#(and (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| |~#gl_list~0.base|)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset, 4bv32); srcloc: L568-2 {9362#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)))} is VALID [2022-02-20 23:45:16,142 INFO L272 TraceCheckUtils]: 21: Hoare triple {9362#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)))} call list_add(gl_insert_~node~0#1.base, ~bvadd32(4bv32, gl_insert_~node~0#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {9366#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (_ bv12 32)))} is VALID [2022-02-20 23:45:16,143 INFO L290 TraceCheckUtils]: 22: Hoare triple {9366#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (_ 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; {9370#(and (= (select (select |#memory_$Pointer$.offset| |list_add_~head#1.base|) |list_add_~head#1.offset|) (_ bv4 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |list_add_~head#1.base|) |list_add_~head#1.offset|)) (_ bv12 32)))} is VALID [2022-02-20 23:45:16,143 INFO L290 TraceCheckUtils]: 23: Hoare triple {9370#(and (= (select (select |#memory_$Pointer$.offset| |list_add_~head#1.base|) |list_add_~head#1.offset|) (_ bv4 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |list_add_~head#1.base|) |list_add_~head#1.offset|)) (_ bv12 32)))} SUMMARY for call #t~mem4#1.base, #t~mem4#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L547 {9374#(and (= (_ bv12 32) (select |#length| |list_add_#t~mem4#1.base|)) (= (_ bv4 32) |list_add_#t~mem4#1.offset|))} is VALID [2022-02-20 23:45:16,144 INFO L290 TraceCheckUtils]: 24: Hoare triple {9374#(and (= (_ bv12 32) (select |#length| |list_add_#t~mem4#1.base|)) (= (_ bv4 32) |list_add_#t~mem4#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, ~head#1.base, ~head#1.offset, #t~mem4#1.base, #t~mem4#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; {9378#(and (= (select |#length| |list_add___list_add_~next#1.base|) (_ bv12 32)) (= |list_add___list_add_~next#1.offset| (_ bv4 32)))} is VALID [2022-02-20 23:45:16,144 INFO L290 TraceCheckUtils]: 25: Hoare triple {9378#(and (= (select |#length| |list_add___list_add_~next#1.base|) (_ bv12 32)) (= |list_add___list_add_~next#1.offset| (_ bv4 32)))} 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))); {9290#false} is VALID [2022-02-20 23:45:16,144 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 1 proven. 7 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:45:16,145 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:45:16,444 WARN L838 $PredicateComparison]: unable to prove that (and (forall ((v_ArrVal_479 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse0 (select (select (store |c_#memory_$Pointer$.offset| |c_ULTIMATE.start_gl_insert_~node~0#1.base| v_ArrVal_479) |c_~#gl_list~0.base|) |c_~#gl_list~0.offset|))) (bvule (bvadd (_ bv4 32) .cse0) (bvadd (_ bv8 32) .cse0)))) (forall ((v_ArrVal_478 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_479 (Array (_ BitVec 32) (_ BitVec 32)))) (bvule (bvadd (_ bv8 32) (select (select (store |c_#memory_$Pointer$.offset| |c_ULTIMATE.start_gl_insert_~node~0#1.base| v_ArrVal_479) |c_~#gl_list~0.base|) |c_~#gl_list~0.offset|)) (select |c_#length| (select (select (store |c_#memory_$Pointer$.base| |c_ULTIMATE.start_gl_insert_~node~0#1.base| v_ArrVal_478) |c_~#gl_list~0.base|) |c_~#gl_list~0.offset|))))) is different from false [2022-02-20 23:45:19,197 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:45:19,198 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 1 new quantified variables, introduced 1 case distinctions, treesize of input 84 treesize of output 85 [2022-02-20 23:45:19,200 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:45:19,203 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 82 treesize of output 74 [2022-02-20 23:45:19,211 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:45:19,211 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 1 new quantified variables, introduced 1 case distinctions, treesize of input 74 treesize of output 54 [2022-02-20 23:45:19,213 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:45:19,218 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 45 treesize of output 29 [2022-02-20 23:45:19,314 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:45:19,314 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1342195336] [2022-02-20 23:45:19,314 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1342195336] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:45:19,314 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleCvc4 [150875087] [2022-02-20 23:45:19,314 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:19,314 INFO L173 SolverBuilder]: Constructing external solver with command: cvc4 --incremental --print-success --lang smt [2022-02-20 23:45:19,314 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 [2022-02-20 23:45:19,315 INFO L229 MonitoredProcess]: Starting monitored process 18 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:19,338 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (18)] Waiting until timeout for monitored process [2022-02-20 23:45:19,664 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:19,671 INFO L263 TraceCheckSpWp]: Trace formula consists of 210 conjuncts, 51 conjunts are in the unsatisfiable core [2022-02-20 23:45:19,683 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:19,685 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:19,735 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:19,739 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:20,384 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:45:20,393 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:45:20,672 INFO L356 Elim1Store]: treesize reduction 20, result has 39.4 percent of original size [2022-02-20 23:45:20,673 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 0 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 25 treesize of output 27 [2022-02-20 23:45:20,687 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 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:20,810 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 24 treesize of output 24 [2022-02-20 23:45:20,832 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 2 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:21,020 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2022-02-20 23:45:21,023 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 9 [2022-02-20 23:45:21,035 INFO L290 TraceCheckUtils]: 0: Hoare triple {9289#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(12bv32, 2bv32);~#gl_list~0.base, ~#gl_list~0.offset := 3bv32, 0bv32;call #Ultimate.allocInit(8bv32, 3bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~#gl_list~0.offset, 4bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~bvadd32(4bv32, ~#gl_list~0.offset), 4bv32); {9423#(and (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:21,035 INFO L290 TraceCheckUtils]: 1: Hoare triple {9423#(and (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;assume { :begin_inline_gl_read } true;havoc gl_read_#t~nondet11#1, gl_read_#t~nondet10#1; {9423#(and (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:21,036 INFO L290 TraceCheckUtils]: 2: Hoare triple {9423#(and (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet11#1;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset, gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12bv32);gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset := gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset; {9430#(and (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:21,037 INFO L290 TraceCheckUtils]: 3: Hoare triple {9430#(and (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} assume !(gl_insert_~node~0#1.base == 0bv32 && gl_insert_~node~0#1.offset == 0bv32); {9430#(and (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:21,038 INFO L290 TraceCheckUtils]: 4: Hoare triple {9430#(and (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset, 4bv32); srcloc: L568-2 {9430#(and (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:21,039 INFO L272 TraceCheckUtils]: 5: Hoare triple {9430#(and (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} call list_add(gl_insert_~node~0#1.base, ~bvadd32(4bv32, gl_insert_~node~0#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {9440#(and (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv12 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv1 1)))) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:21,040 INFO L290 TraceCheckUtils]: 6: Hoare triple {9440#(and (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv12 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv1 1)))) (= (_ bv3 32) |~#gl_list~0.base|))} ~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; {9444#(and (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv12 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv1 1)))) (= |list_add_~new#1.offset| |list_add_#in~new#1.offset|) (= |list_add_#in~head#1.base| |list_add_~head#1.base|) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add_#in~new#1.base| |list_add_~new#1.base|))} is VALID [2022-02-20 23:45:21,040 INFO L290 TraceCheckUtils]: 7: Hoare triple {9444#(and (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv12 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv1 1)))) (= |list_add_~new#1.offset| |list_add_#in~new#1.offset|) (= |list_add_#in~head#1.base| |list_add_~head#1.base|) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add_#in~new#1.base| |list_add_~new#1.base|))} SUMMARY for call #t~mem4#1.base, #t~mem4#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L547 {9448#(and (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv12 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv1 1)))) (= |list_add_~new#1.offset| |list_add_#in~new#1.offset|) (= |list_add_#in~head#1.base| |list_add_~head#1.base|) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add_#in~new#1.base| |list_add_~new#1.base|) (= (select |#valid| |list_add_~head#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:45:21,041 INFO L290 TraceCheckUtils]: 8: Hoare triple {9448#(and (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv12 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv1 1)))) (= |list_add_~new#1.offset| |list_add_#in~new#1.offset|) (= |list_add_#in~head#1.base| |list_add_~head#1.base|) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add_#in~new#1.base| |list_add_~new#1.base|) (= (select |#valid| |list_add_~head#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, ~head#1.base, ~head#1.offset, #t~mem4#1.base, #t~mem4#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; {9452#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv12 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv1 1)))) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|) (= (select |#valid| |list_add___list_add_~prev#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:45:21,042 INFO L290 TraceCheckUtils]: 9: Hoare triple {9452#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv12 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv1 1)))) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|) (= (select |#valid| |list_add___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: L535 {9452#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv12 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv1 1)))) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|) (= (select |#valid| |list_add___list_add_~prev#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:45:21,042 INFO L290 TraceCheckUtils]: 10: Hoare triple {9452#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv12 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv1 1)))) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|) (= (select |#valid| |list_add___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: L535-1 {9452#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv12 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv1 1)))) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|) (= (select |#valid| |list_add___list_add_~prev#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:45:21,043 INFO L290 TraceCheckUtils]: 11: Hoare triple {9452#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv12 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv1 1)))) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|) (= (select |#valid| |list_add___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: L536 {9452#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv12 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv1 1)))) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|) (= (select |#valid| |list_add___list_add_~prev#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:45:21,045 INFO L290 TraceCheckUtils]: 12: Hoare triple {9452#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv12 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv1 1)))) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|) (= (select |#valid| |list_add___list_add_~prev#1.base|) (_ bv1 1)))} 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: L537 {9465#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1)) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv12 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv1 1)))) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} is VALID [2022-02-20 23:45:21,046 INFO L290 TraceCheckUtils]: 13: Hoare triple {9465#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1)) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv12 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv1 1)))) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} assume { :end_inline___list_add } true;havoc #t~mem4#1.base, #t~mem4#1.offset; {9465#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1)) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv12 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv1 1)))) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} is VALID [2022-02-20 23:45:21,046 INFO L290 TraceCheckUtils]: 14: Hoare triple {9465#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1)) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv12 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv1 1)))) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} assume true; {9465#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1)) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv12 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv1 1)))) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} is VALID [2022-02-20 23:45:21,047 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {9465#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1)) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv12 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_9|) (_ bv1 1)))) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} {9430#(and (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} #196#return; {9475#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (bvadd (_ bv1 1) (select |#valid| |~#gl_list~0.base|)) (_ bv0 1)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} is VALID [2022-02-20 23:45:21,048 INFO L290 TraceCheckUtils]: 16: Hoare triple {9475#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (bvadd (_ bv1 1) (select |#valid| |~#gl_list~0.base|)) (_ bv0 1)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} assume { :end_inline_gl_insert } true;havoc gl_read_#t~nondet11#1; {9475#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (bvadd (_ bv1 1) (select |#valid| |~#gl_list~0.base|)) (_ bv0 1)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} is VALID [2022-02-20 23:45:21,048 INFO L290 TraceCheckUtils]: 17: Hoare triple {9475#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (bvadd (_ bv1 1) (select |#valid| |~#gl_list~0.base|)) (_ bv0 1)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} assume !!(0bv32 != gl_read_#t~nondet10#1);havoc gl_read_#t~nondet10#1; {9475#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (bvadd (_ bv1 1) (select |#valid| |~#gl_list~0.base|)) (_ bv0 1)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} is VALID [2022-02-20 23:45:21,050 INFO L290 TraceCheckUtils]: 18: Hoare triple {9475#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (bvadd (_ bv1 1) (select |#valid| |~#gl_list~0.base|)) (_ bv0 1)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet11#1;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset, gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12bv32);gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset := gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset; {9485#(and (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| |~#gl_list~0.base|)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:21,051 INFO L290 TraceCheckUtils]: 19: Hoare triple {9485#(and (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| |~#gl_list~0.base|)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} assume !(gl_insert_~node~0#1.base == 0bv32 && gl_insert_~node~0#1.offset == 0bv32); {9485#(and (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| |~#gl_list~0.base|)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:21,054 INFO L290 TraceCheckUtils]: 20: Hoare triple {9485#(and (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| |~#gl_list~0.base|)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= |ULTIMATE.start_gl_insert_~node~0#1.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset, 4bv32); srcloc: L568-2 {9492#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:21,055 INFO L272 TraceCheckUtils]: 21: Hoare triple {9492#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} call list_add(gl_insert_~node~0#1.base, ~bvadd32(4bv32, gl_insert_~node~0#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {9496#(and (= |list_add_#in~head#1.base| (_ bv3 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) (_ bv0 32))) (_ bv12 32)) (= (_ bv0 32) |list_add_#in~head#1.offset|) (= (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) (_ bv0 32)) (_ bv4 32)))} is VALID [2022-02-20 23:45:21,056 INFO L290 TraceCheckUtils]: 22: Hoare triple {9496#(and (= |list_add_#in~head#1.base| (_ bv3 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) (_ bv0 32))) (_ bv12 32)) (= (_ bv0 32) |list_add_#in~head#1.offset|) (= (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) (_ bv0 32)) (_ bv4 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; {9500#(and (= (select (select |#memory_$Pointer$.offset| (_ bv3 32)) (_ bv0 32)) (_ bv4 32)) (= |list_add_~head#1.base| (_ bv3 32)) (= |list_add_~head#1.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| (_ bv3 32)) (_ bv0 32))) (_ bv12 32)))} is VALID [2022-02-20 23:45:21,057 INFO L290 TraceCheckUtils]: 23: Hoare triple {9500#(and (= (select (select |#memory_$Pointer$.offset| (_ bv3 32)) (_ bv0 32)) (_ bv4 32)) (= |list_add_~head#1.base| (_ bv3 32)) (= |list_add_~head#1.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| (_ bv3 32)) (_ bv0 32))) (_ bv12 32)))} SUMMARY for call #t~mem4#1.base, #t~mem4#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L547 {9374#(and (= (_ bv12 32) (select |#length| |list_add_#t~mem4#1.base|)) (= (_ bv4 32) |list_add_#t~mem4#1.offset|))} is VALID [2022-02-20 23:45:21,057 INFO L290 TraceCheckUtils]: 24: Hoare triple {9374#(and (= (_ bv12 32) (select |#length| |list_add_#t~mem4#1.base|)) (= (_ bv4 32) |list_add_#t~mem4#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, ~head#1.base, ~head#1.offset, #t~mem4#1.base, #t~mem4#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; {9378#(and (= (select |#length| |list_add___list_add_~next#1.base|) (_ bv12 32)) (= |list_add___list_add_~next#1.offset| (_ bv4 32)))} is VALID [2022-02-20 23:45:21,058 INFO L290 TraceCheckUtils]: 25: Hoare triple {9378#(and (= (select |#length| |list_add___list_add_~next#1.base|) (_ bv12 32)) (= |list_add___list_add_~next#1.offset| (_ bv4 32)))} 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))); {9290#false} is VALID [2022-02-20 23:45:21,058 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 1 proven. 7 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:45:21,058 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:45:21,138 WARN L838 $PredicateComparison]: unable to prove that (and (forall ((v_ArrVal_551 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse0 (select (select (store |c_#memory_$Pointer$.offset| |c_ULTIMATE.start_gl_insert_~node~0#1.base| v_ArrVal_551) |c_~#gl_list~0.base|) |c_~#gl_list~0.offset|))) (bvule (bvadd (_ bv4 32) .cse0) (bvadd (_ bv8 32) .cse0)))) (forall ((v_ArrVal_552 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_551 (Array (_ BitVec 32) (_ BitVec 32)))) (bvule (bvadd (_ bv8 32) (select (select (store |c_#memory_$Pointer$.offset| |c_ULTIMATE.start_gl_insert_~node~0#1.base| v_ArrVal_551) |c_~#gl_list~0.base|) |c_~#gl_list~0.offset|)) (select |c_#length| (select (select (store |c_#memory_$Pointer$.base| |c_ULTIMATE.start_gl_insert_~node~0#1.base| v_ArrVal_552) |c_~#gl_list~0.base|) |c_~#gl_list~0.offset|))))) is different from false [2022-02-20 23:45:28,193 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:45:28,193 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 1 new quantified variables, introduced 1 case distinctions, treesize of input 84 treesize of output 85 [2022-02-20 23:45:28,195 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:45:28,198 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 82 treesize of output 74 [2022-02-20 23:45:28,206 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:45:28,206 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 1 new quantified variables, introduced 1 case distinctions, treesize of input 74 treesize of output 54 [2022-02-20 23:45:28,211 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:45:28,214 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 45 treesize of output 29 [2022-02-20 23:45:28,374 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleCvc4 [150875087] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:45:28,375 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:45:28,375 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 26 [2022-02-20 23:45:28,375 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1735510397] [2022-02-20 23:45:28,375 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:45:28,376 INFO L78 Accepts]: Start accepts. Automaton has has 27 states, 24 states have (on average 1.8333333333333333) internal successors, (44), 23 states have internal predecessors, (44), 4 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Word has length 26 [2022-02-20 23:45:28,376 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:28,376 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 27 states, 24 states have (on average 1.8333333333333333) internal successors, (44), 23 states have internal predecessors, (44), 4 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:45:28,445 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:28,445 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 27 states [2022-02-20 23:45:28,445 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:45:28,446 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2022-02-20 23:45:28,446 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=141, Invalid=1109, Unknown=18, NotChecked=138, Total=1406 [2022-02-20 23:45:28,446 INFO L87 Difference]: Start difference. First operand 144 states and 155 transitions. Second operand has 27 states, 24 states have (on average 1.8333333333333333) internal successors, (44), 23 states have internal predecessors, (44), 4 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:45:33,270 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:33,270 INFO L93 Difference]: Finished difference Result 255 states and 277 transitions. [2022-02-20 23:45:33,270 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-02-20 23:45:33,270 INFO L78 Accepts]: Start accepts. Automaton has has 27 states, 24 states have (on average 1.8333333333333333) internal successors, (44), 23 states have internal predecessors, (44), 4 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Word has length 26 [2022-02-20 23:45:33,270 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:33,270 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 24 states have (on average 1.8333333333333333) internal successors, (44), 23 states have internal predecessors, (44), 4 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:45:33,272 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 266 transitions. [2022-02-20 23:45:33,272 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 24 states have (on average 1.8333333333333333) internal successors, (44), 23 states have internal predecessors, (44), 4 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:45:33,274 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 266 transitions. [2022-02-20 23:45:33,274 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 266 transitions. [2022-02-20 23:45:33,563 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 266 edges. 266 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:33,566 INFO L225 Difference]: With dead ends: 255 [2022-02-20 23:45:33,566 INFO L226 Difference]: Without dead ends: 255 [2022-02-20 23:45:33,567 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 78 GetRequests, 35 SyntacticMatches, 1 SemanticMatches, 42 ConstructedPredicates, 2 IntricatePredicates, 0 DeprecatedPredicates, 446 ImplicationChecksByTransitivity, 10.5s TimeCoverageRelationStatistics Valid=232, Invalid=1480, Unknown=18, NotChecked=162, Total=1892 [2022-02-20 23:45:33,567 INFO L933 BasicCegarLoop]: 101 mSDtfsCounter, 248 mSDsluCounter, 957 mSDsCounter, 0 mSdLazyCounter, 887 mSolverCounterSat, 20 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 250 SdHoareTripleChecker+Valid, 1058 SdHoareTripleChecker+Invalid, 1609 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 20 IncrementalHoareTripleChecker+Valid, 887 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 702 IncrementalHoareTripleChecker+Unchecked, 1.6s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:33,567 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [250 Valid, 1058 Invalid, 1609 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [20 Valid, 887 Invalid, 0 Unknown, 702 Unchecked, 1.6s Time] [2022-02-20 23:45:33,567 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 255 states. [2022-02-20 23:45:33,570 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 255 to 178. [2022-02-20 23:45:33,570 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:33,570 INFO L82 GeneralOperation]: Start isEquivalent. First operand 255 states. Second operand has 178 states, 118 states have (on average 1.5847457627118644) internal successors, (187), 155 states have internal predecessors, (187), 14 states have call successors, (14), 9 states have call predecessors, (14), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-02-20 23:45:33,570 INFO L74 IsIncluded]: Start isIncluded. First operand 255 states. Second operand has 178 states, 118 states have (on average 1.5847457627118644) internal successors, (187), 155 states have internal predecessors, (187), 14 states have call successors, (14), 9 states have call predecessors, (14), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-02-20 23:45:33,571 INFO L87 Difference]: Start difference. First operand 255 states. Second operand has 178 states, 118 states have (on average 1.5847457627118644) internal successors, (187), 155 states have internal predecessors, (187), 14 states have call successors, (14), 9 states have call predecessors, (14), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-02-20 23:45:33,574 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:33,574 INFO L93 Difference]: Finished difference Result 255 states and 277 transitions. [2022-02-20 23:45:33,574 INFO L276 IsEmpty]: Start isEmpty. Operand 255 states and 277 transitions. [2022-02-20 23:45:33,575 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:33,575 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:33,575 INFO L74 IsIncluded]: Start isIncluded. First operand has 178 states, 118 states have (on average 1.5847457627118644) internal successors, (187), 155 states have internal predecessors, (187), 14 states have call successors, (14), 9 states have call predecessors, (14), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) Second operand 255 states. [2022-02-20 23:45:33,575 INFO L87 Difference]: Start difference. First operand has 178 states, 118 states have (on average 1.5847457627118644) internal successors, (187), 155 states have internal predecessors, (187), 14 states have call successors, (14), 9 states have call predecessors, (14), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) Second operand 255 states. [2022-02-20 23:45:33,579 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:33,579 INFO L93 Difference]: Finished difference Result 255 states and 277 transitions. [2022-02-20 23:45:33,579 INFO L276 IsEmpty]: Start isEmpty. Operand 255 states and 277 transitions. [2022-02-20 23:45:33,579 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:33,580 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:33,580 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:33,580 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:33,580 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 178 states, 118 states have (on average 1.5847457627118644) internal successors, (187), 155 states have internal predecessors, (187), 14 states have call successors, (14), 9 states have call predecessors, (14), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-02-20 23:45:33,582 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 178 states to 178 states and 215 transitions. [2022-02-20 23:45:33,582 INFO L78 Accepts]: Start accepts. Automaton has 178 states and 215 transitions. Word has length 26 [2022-02-20 23:45:33,582 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:33,582 INFO L470 AbstractCegarLoop]: Abstraction has 178 states and 215 transitions. [2022-02-20 23:45:33,582 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 27 states, 24 states have (on average 1.8333333333333333) internal successors, (44), 23 states have internal predecessors, (44), 4 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:45:33,582 INFO L276 IsEmpty]: Start isEmpty. Operand 178 states and 215 transitions. [2022-02-20 23:45:33,583 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-02-20 23:45:33,583 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:33,583 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:45:33,609 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (17)] Forceful destruction successful, exit code 0 [2022-02-20 23:45:33,787 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (18)] Forceful destruction successful, exit code 0 [2022-02-20 23:45:33,983 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 17 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3,18 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt [2022-02-20 23:45:33,983 INFO L402 AbstractCegarLoop]: === Iteration 16 === Targeting ULTIMATE.startErr23REQUIRES_VIOLATION === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, list_emptyErr0REQUIRES_VIOLATION, list_emptyErr1REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:33,984 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:33,984 INFO L85 PathProgramCache]: Analyzing trace with hash -961621695, now seen corresponding path program 1 times [2022-02-20 23:45:33,984 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:45:33,984 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1031034172] [2022-02-20 23:45:33,984 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:33,984 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:45:33,984 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:45:33,985 INFO L229 MonitoredProcess]: Starting monitored process 19 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:33,987 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (19)] Waiting until timeout for monitored process [2022-02-20 23:45:34,122 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:34,134 INFO L263 TraceCheckSpWp]: Trace formula consists of 172 conjuncts, 25 conjunts are in the unsatisfiable core [2022-02-20 23:45:34,145 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:34,146 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:34,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 11 treesize of output 7 [2022-02-20 23:45:34,523 INFO L290 TraceCheckUtils]: 0: Hoare triple {10500#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(12bv32, 2bv32);~#gl_list~0.base, ~#gl_list~0.offset := 3bv32, 0bv32;call #Ultimate.allocInit(8bv32, 3bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~#gl_list~0.offset, 4bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~bvadd32(4bv32, ~#gl_list~0.offset), 4bv32); {10505#(= |~#gl_list~0.offset| (_ bv0 32))} is VALID [2022-02-20 23:45:34,524 INFO L290 TraceCheckUtils]: 1: Hoare triple {10505#(= |~#gl_list~0.offset| (_ bv0 32))} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;assume { :begin_inline_gl_read } true;havoc gl_read_#t~nondet11#1, gl_read_#t~nondet10#1; {10505#(= |~#gl_list~0.offset| (_ bv0 32))} is VALID [2022-02-20 23:45:34,524 INFO L290 TraceCheckUtils]: 2: Hoare triple {10505#(= |~#gl_list~0.offset| (_ bv0 32))} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet11#1;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset, gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12bv32);gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset := gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset; {10512#(and (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= |~#gl_list~0.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:34,525 INFO L290 TraceCheckUtils]: 3: Hoare triple {10512#(and (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= |~#gl_list~0.offset| (_ bv0 32)))} assume !(gl_insert_~node~0#1.base == 0bv32 && gl_insert_~node~0#1.offset == 0bv32); {10512#(and (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= |~#gl_list~0.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:34,526 INFO L290 TraceCheckUtils]: 4: Hoare triple {10512#(and (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= |~#gl_list~0.offset| (_ bv0 32)))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset, 4bv32); srcloc: L568-2 {10512#(and (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= |~#gl_list~0.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:34,527 INFO L272 TraceCheckUtils]: 5: Hoare triple {10512#(and (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= |~#gl_list~0.offset| (_ bv0 32)))} call list_add(gl_insert_~node~0#1.base, ~bvadd32(4bv32, gl_insert_~node~0#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {10505#(= |~#gl_list~0.offset| (_ bv0 32))} is VALID [2022-02-20 23:45:34,527 INFO L290 TraceCheckUtils]: 6: Hoare triple {10505#(= |~#gl_list~0.offset| (_ bv0 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; {10525#(and (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_~new#1.offset| |list_add_#in~new#1.offset|) (= |list_add_#in~head#1.base| |list_add_~head#1.base|))} is VALID [2022-02-20 23:45:34,527 INFO L290 TraceCheckUtils]: 7: Hoare triple {10525#(and (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_~new#1.offset| |list_add_#in~new#1.offset|) (= |list_add_#in~head#1.base| |list_add_~head#1.base|))} SUMMARY for call #t~mem4#1.base, #t~mem4#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L547 {10525#(and (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_~new#1.offset| |list_add_#in~new#1.offset|) (= |list_add_#in~head#1.base| |list_add_~head#1.base|))} is VALID [2022-02-20 23:45:34,531 INFO L290 TraceCheckUtils]: 8: Hoare triple {10525#(and (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_~new#1.offset| |list_add_#in~new#1.offset|) (= |list_add_#in~head#1.base| |list_add_~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, ~head#1.base, ~head#1.offset, #t~mem4#1.base, #t~mem4#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; {10532#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|))} is VALID [2022-02-20 23:45:34,531 INFO L290 TraceCheckUtils]: 9: Hoare triple {10532#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#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: L535 {10532#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|))} is VALID [2022-02-20 23:45:34,532 INFO L290 TraceCheckUtils]: 10: Hoare triple {10532#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#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: L535-1 {10532#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|))} is VALID [2022-02-20 23:45:34,532 INFO L290 TraceCheckUtils]: 11: Hoare triple {10532#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#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: L536 {10532#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|))} is VALID [2022-02-20 23:45:34,534 INFO L290 TraceCheckUtils]: 12: Hoare triple {10532#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|))} 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: L537 {10545#(and (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} is VALID [2022-02-20 23:45:34,534 INFO L290 TraceCheckUtils]: 13: Hoare triple {10545#(and (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} assume { :end_inline___list_add } true;havoc #t~mem4#1.base, #t~mem4#1.offset; {10545#(and (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} is VALID [2022-02-20 23:45:34,534 INFO L290 TraceCheckUtils]: 14: Hoare triple {10545#(and (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} assume true; {10545#(and (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} is VALID [2022-02-20 23:45:34,535 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {10545#(and (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} {10512#(and (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= |~#gl_list~0.offset| (_ bv0 32)))} #196#return; {10555#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:34,535 INFO L290 TraceCheckUtils]: 16: Hoare triple {10555#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} assume { :end_inline_gl_insert } true;havoc gl_read_#t~nondet11#1; {10555#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:34,536 INFO L290 TraceCheckUtils]: 17: Hoare triple {10555#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} assume !(0bv32 != gl_read_#t~nondet10#1);havoc gl_read_#t~nondet10#1; {10555#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:34,536 INFO L290 TraceCheckUtils]: 18: Hoare triple {10555#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} assume { :end_inline_gl_read } true;assume { :begin_inline_gl_sort } true;havoc gl_sort_#t~ret21#1, gl_sort_#t~ret22#1.base, gl_sort_#t~ret22#1.offset, gl_sort_~#dst~0#1.base, gl_sort_~#dst~0#1.offset, gl_sort_~max_pos~1#1.base, gl_sort_~max_pos~1#1.offset; {10555#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:34,537 INFO L272 TraceCheckUtils]: 19: Hoare triple {10555#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} call gl_sort_#t~ret21#1 := list_empty(~#gl_list~0.base, ~#gl_list~0.offset); {10555#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:34,537 INFO L290 TraceCheckUtils]: 20: Hoare triple {10555#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {10571#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |list_empty_#in~head.base| list_empty_~head.base) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_empty_#in~head.offset| list_empty_~head.offset))} is VALID [2022-02-20 23:45:34,538 INFO L290 TraceCheckUtils]: 21: Hoare triple {10571#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |list_empty_#in~head.base| list_empty_~head.base) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_empty_#in~head.offset| list_empty_~head.offset))} SUMMARY for call #t~mem3.base, #t~mem3.offset := read~$Pointer$(~head.base, ~head.offset, 4bv32); srcloc: L529 {10575#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |list_empty_#t~mem3.offset| (select (select |#memory_$Pointer$.offset| list_empty_~head.base) list_empty_~head.offset)) (= |list_empty_#in~head.base| list_empty_~head.base) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_empty_#in~head.offset| list_empty_~head.offset))} is VALID [2022-02-20 23:45:34,539 INFO L290 TraceCheckUtils]: 22: Hoare triple {10575#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |list_empty_#t~mem3.offset| (select (select |#memory_$Pointer$.offset| list_empty_~head.base) list_empty_~head.offset)) (= |list_empty_#in~head.base| list_empty_~head.base) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_empty_#in~head.offset| list_empty_~head.offset))} #res := (if #t~mem3.base == ~head.base && #t~mem3.offset == ~head.offset then 1bv32 else 0bv32);havoc #t~mem3.base, #t~mem3.offset; {10579#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (or (= |list_empty_#res| (_ bv0 32)) (and (= |list_empty_#res| (_ bv1 32)) (= |list_empty_#in~head.offset| (select (select |#memory_$Pointer$.offset| |list_empty_#in~head.base|) |list_empty_#in~head.offset|)))))} is VALID [2022-02-20 23:45:34,539 INFO L290 TraceCheckUtils]: 23: Hoare triple {10579#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (or (= |list_empty_#res| (_ bv0 32)) (and (= |list_empty_#res| (_ bv1 32)) (= |list_empty_#in~head.offset| (select (select |#memory_$Pointer$.offset| |list_empty_#in~head.base|) |list_empty_#in~head.offset|)))))} assume true; {10579#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (or (= |list_empty_#res| (_ bv0 32)) (and (= |list_empty_#res| (_ bv1 32)) (= |list_empty_#in~head.offset| (select (select |#memory_$Pointer$.offset| |list_empty_#in~head.base|) |list_empty_#in~head.offset|)))))} is VALID [2022-02-20 23:45:34,540 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {10579#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (or (= |list_empty_#res| (_ bv0 32)) (and (= |list_empty_#res| (_ bv1 32)) (= |list_empty_#in~head.offset| (select (select |#memory_$Pointer$.offset| |list_empty_#in~head.base|) |list_empty_#in~head.offset|)))))} {10555#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} #198#return; {10586#(= |ULTIMATE.start_gl_sort_#t~ret21#1| (_ bv0 32))} is VALID [2022-02-20 23:45:34,540 INFO L290 TraceCheckUtils]: 25: Hoare triple {10586#(= |ULTIMATE.start_gl_sort_#t~ret21#1| (_ bv0 32))} assume 0bv32 != gl_sort_#t~ret21#1;havoc gl_sort_#t~ret21#1; {10501#false} is VALID [2022-02-20 23:45:34,540 INFO L290 TraceCheckUtils]: 26: Hoare triple {10501#false} assume { :end_inline_gl_sort } true;assume { :begin_inline_gl_destroy } true;havoc gl_destroy_#t~mem13#1.base, gl_destroy_#t~mem13#1.offset, gl_destroy_#t~mem12#1.base, gl_destroy_#t~mem12#1.offset, gl_destroy_~next~0#1.base, gl_destroy_~next~0#1.offset;havoc gl_destroy_~next~0#1.base, gl_destroy_~next~0#1.offset; {10501#false} is VALID [2022-02-20 23:45:34,540 INFO L290 TraceCheckUtils]: 27: Hoare triple {10501#false} SUMMARY for call gl_destroy_#t~mem12#1.base, gl_destroy_#t~mem12#1.offset := read~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, 4bv32); srcloc: L583-4 {10501#false} is VALID [2022-02-20 23:45:34,540 INFO L290 TraceCheckUtils]: 28: Hoare triple {10501#false} gl_destroy_~next~0#1.base, gl_destroy_~next~0#1.offset := gl_destroy_#t~mem12#1.base, gl_destroy_#t~mem12#1.offset; {10501#false} is VALID [2022-02-20 23:45:34,541 INFO L290 TraceCheckUtils]: 29: Hoare triple {10501#false} assume !!(~#gl_list~0.base != gl_destroy_~next~0#1.base || ~#gl_list~0.offset != gl_destroy_~next~0#1.offset);havoc gl_destroy_#t~mem12#1.base, gl_destroy_#t~mem12#1.offset; {10501#false} is VALID [2022-02-20 23:45:34,541 INFO L290 TraceCheckUtils]: 30: Hoare triple {10501#false} assume !((~bvule32(~bvadd32(4bv32, gl_destroy_~next~0#1.offset), #length[gl_destroy_~next~0#1.base]) && ~bvule32(gl_destroy_~next~0#1.offset, ~bvadd32(4bv32, gl_destroy_~next~0#1.offset))) && ~bvule32(0bv32, gl_destroy_~next~0#1.offset)); {10501#false} is VALID [2022-02-20 23:45:34,543 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:45:34,543 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:45:34,543 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:45:34,543 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1031034172] [2022-02-20 23:45:34,543 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1031034172] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:34,543 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:34,543 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-02-20 23:45:34,544 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1243547064] [2022-02-20 23:45:34,544 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:34,544 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 2.25) internal successors, (27), 10 states have internal predecessors, (27), 2 states have call successors, (2), 2 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Word has length 31 [2022-02-20 23:45:34,544 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:34,544 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 2.25) internal successors, (27), 10 states have internal predecessors, (27), 2 states have call successors, (2), 2 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:45:34,580 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:34,580 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-02-20 23:45:34,580 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:45:34,581 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-02-20 23:45:34,581 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=99, Unknown=0, NotChecked=0, Total=132 [2022-02-20 23:45:34,581 INFO L87 Difference]: Start difference. First operand 178 states and 215 transitions. Second operand has 12 states, 12 states have (on average 2.25) internal successors, (27), 10 states have internal predecessors, (27), 2 states have call successors, (2), 2 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:45:37,319 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:37,319 INFO L93 Difference]: Finished difference Result 200 states and 227 transitions. [2022-02-20 23:45:37,319 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-02-20 23:45:37,319 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 2.25) internal successors, (27), 10 states have internal predecessors, (27), 2 states have call successors, (2), 2 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Word has length 31 [2022-02-20 23:45:37,319 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:37,319 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 2.25) internal successors, (27), 10 states have internal predecessors, (27), 2 states have call successors, (2), 2 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:45:37,321 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 193 transitions. [2022-02-20 23:45:37,321 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 2.25) internal successors, (27), 10 states have internal predecessors, (27), 2 states have call successors, (2), 2 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:45:37,322 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 193 transitions. [2022-02-20 23:45:37,322 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states and 193 transitions. [2022-02-20 23:45:37,520 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 193 edges. 193 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:37,522 INFO L225 Difference]: With dead ends: 200 [2022-02-20 23:45:37,522 INFO L226 Difference]: Without dead ends: 200 [2022-02-20 23:45:37,523 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 37 GetRequests, 20 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 36 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=76, Invalid=266, Unknown=0, NotChecked=0, Total=342 [2022-02-20 23:45:37,523 INFO L933 BasicCegarLoop]: 93 mSDtfsCounter, 222 mSDsluCounter, 562 mSDsCounter, 0 mSdLazyCounter, 462 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 230 SdHoareTripleChecker+Valid, 655 SdHoareTripleChecker+Invalid, 492 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 462 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:37,523 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [230 Valid, 655 Invalid, 492 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 462 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-02-20 23:45:37,523 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 200 states. [2022-02-20 23:45:37,526 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 200 to 176. [2022-02-20 23:45:37,526 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:37,526 INFO L82 GeneralOperation]: Start isEquivalent. First operand 200 states. Second operand has 176 states, 116 states have (on average 1.5862068965517242) internal successors, (184), 153 states have internal predecessors, (184), 14 states have call successors, (14), 9 states have call predecessors, (14), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-02-20 23:45:37,526 INFO L74 IsIncluded]: Start isIncluded. First operand 200 states. Second operand has 176 states, 116 states have (on average 1.5862068965517242) internal successors, (184), 153 states have internal predecessors, (184), 14 states have call successors, (14), 9 states have call predecessors, (14), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-02-20 23:45:37,526 INFO L87 Difference]: Start difference. First operand 200 states. Second operand has 176 states, 116 states have (on average 1.5862068965517242) internal successors, (184), 153 states have internal predecessors, (184), 14 states have call successors, (14), 9 states have call predecessors, (14), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-02-20 23:45:37,532 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:37,532 INFO L93 Difference]: Finished difference Result 200 states and 227 transitions. [2022-02-20 23:45:37,533 INFO L276 IsEmpty]: Start isEmpty. Operand 200 states and 227 transitions. [2022-02-20 23:45:37,533 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:37,533 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:37,533 INFO L74 IsIncluded]: Start isIncluded. First operand has 176 states, 116 states have (on average 1.5862068965517242) internal successors, (184), 153 states have internal predecessors, (184), 14 states have call successors, (14), 9 states have call predecessors, (14), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) Second operand 200 states. [2022-02-20 23:45:37,534 INFO L87 Difference]: Start difference. First operand has 176 states, 116 states have (on average 1.5862068965517242) internal successors, (184), 153 states have internal predecessors, (184), 14 states have call successors, (14), 9 states have call predecessors, (14), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) Second operand 200 states. [2022-02-20 23:45:37,536 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:37,536 INFO L93 Difference]: Finished difference Result 200 states and 227 transitions. [2022-02-20 23:45:37,537 INFO L276 IsEmpty]: Start isEmpty. Operand 200 states and 227 transitions. [2022-02-20 23:45:37,537 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:37,537 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:37,537 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:37,537 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:37,538 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 176 states, 116 states have (on average 1.5862068965517242) internal successors, (184), 153 states have internal predecessors, (184), 14 states have call successors, (14), 9 states have call predecessors, (14), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-02-20 23:45:37,539 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 176 states to 176 states and 212 transitions. [2022-02-20 23:45:37,540 INFO L78 Accepts]: Start accepts. Automaton has 176 states and 212 transitions. Word has length 31 [2022-02-20 23:45:37,540 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:37,540 INFO L470 AbstractCegarLoop]: Abstraction has 176 states and 212 transitions. [2022-02-20 23:45:37,540 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 2.25) internal successors, (27), 10 states have internal predecessors, (27), 2 states have call successors, (2), 2 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:45:37,540 INFO L276 IsEmpty]: Start isEmpty. Operand 176 states and 212 transitions. [2022-02-20 23:45:37,542 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-02-20 23:45:37,542 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:37,543 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:45:37,550 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (19)] Forceful destruction successful, exit code 0 [2022-02-20 23:45:37,750 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 19 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:45:37,751 INFO L402 AbstractCegarLoop]: === Iteration 17 === Targeting ULTIMATE.startErr8REQUIRES_VIOLATION === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, list_emptyErr0REQUIRES_VIOLATION, list_emptyErr1REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:37,751 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:37,751 INFO L85 PathProgramCache]: Analyzing trace with hash -149006513, now seen corresponding path program 1 times [2022-02-20 23:45:37,752 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:45:37,752 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [164235515] [2022-02-20 23:45:37,752 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:37,752 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:45:37,752 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:45:37,753 INFO L229 MonitoredProcess]: Starting monitored process 20 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:37,755 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (20)] Waiting until timeout for monitored process [2022-02-20 23:45:37,870 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:37,875 INFO L263 TraceCheckSpWp]: Trace formula consists of 206 conjuncts, 29 conjunts are in the unsatisfiable core [2022-02-20 23:45:37,889 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:37,890 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:38,021 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:45:38,307 INFO L290 TraceCheckUtils]: 0: Hoare triple {11394#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(12bv32, 2bv32);~#gl_list~0.base, ~#gl_list~0.offset := 3bv32, 0bv32;call #Ultimate.allocInit(8bv32, 3bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~#gl_list~0.offset, 4bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~bvadd32(4bv32, ~#gl_list~0.offset), 4bv32); {11399#(= |~#gl_list~0.offset| (_ bv0 32))} is VALID [2022-02-20 23:45:38,307 INFO L290 TraceCheckUtils]: 1: Hoare triple {11399#(= |~#gl_list~0.offset| (_ bv0 32))} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;assume { :begin_inline_gl_read } true;havoc gl_read_#t~nondet11#1, gl_read_#t~nondet10#1; {11399#(= |~#gl_list~0.offset| (_ bv0 32))} is VALID [2022-02-20 23:45:38,308 INFO L290 TraceCheckUtils]: 2: Hoare triple {11399#(= |~#gl_list~0.offset| (_ bv0 32))} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet11#1;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset, gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12bv32);gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset := gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset; {11406#(and (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= |~#gl_list~0.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:38,308 INFO L290 TraceCheckUtils]: 3: Hoare triple {11406#(and (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= |~#gl_list~0.offset| (_ bv0 32)))} assume !(gl_insert_~node~0#1.base == 0bv32 && gl_insert_~node~0#1.offset == 0bv32); {11406#(and (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= |~#gl_list~0.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:38,309 INFO L290 TraceCheckUtils]: 4: Hoare triple {11406#(and (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= |~#gl_list~0.offset| (_ bv0 32)))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset, 4bv32); srcloc: L568-2 {11406#(and (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= |~#gl_list~0.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:38,309 INFO L272 TraceCheckUtils]: 5: Hoare triple {11406#(and (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= |~#gl_list~0.offset| (_ bv0 32)))} call list_add(gl_insert_~node~0#1.base, ~bvadd32(4bv32, gl_insert_~node~0#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {11399#(= |~#gl_list~0.offset| (_ bv0 32))} is VALID [2022-02-20 23:45:38,310 INFO L290 TraceCheckUtils]: 6: Hoare triple {11399#(= |~#gl_list~0.offset| (_ bv0 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; {11419#(and (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_~new#1.offset| |list_add_#in~new#1.offset|) (= |list_add_#in~head#1.base| |list_add_~head#1.base|))} is VALID [2022-02-20 23:45:38,310 INFO L290 TraceCheckUtils]: 7: Hoare triple {11419#(and (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_~new#1.offset| |list_add_#in~new#1.offset|) (= |list_add_#in~head#1.base| |list_add_~head#1.base|))} SUMMARY for call #t~mem4#1.base, #t~mem4#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L547 {11419#(and (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_~new#1.offset| |list_add_#in~new#1.offset|) (= |list_add_#in~head#1.base| |list_add_~head#1.base|))} is VALID [2022-02-20 23:45:38,311 INFO L290 TraceCheckUtils]: 8: Hoare triple {11419#(and (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_~new#1.offset| |list_add_#in~new#1.offset|) (= |list_add_#in~head#1.base| |list_add_~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, ~head#1.base, ~head#1.offset, #t~mem4#1.base, #t~mem4#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; {11426#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|))} is VALID [2022-02-20 23:45:38,311 INFO L290 TraceCheckUtils]: 9: Hoare triple {11426#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#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: L535 {11426#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|))} is VALID [2022-02-20 23:45:38,312 INFO L290 TraceCheckUtils]: 10: Hoare triple {11426#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#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: L535-1 {11426#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|))} is VALID [2022-02-20 23:45:38,312 INFO L290 TraceCheckUtils]: 11: Hoare triple {11426#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#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: L536 {11426#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|))} is VALID [2022-02-20 23:45:38,314 INFO L290 TraceCheckUtils]: 12: Hoare triple {11426#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|))} 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: L537 {11439#(and (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} is VALID [2022-02-20 23:45:38,314 INFO L290 TraceCheckUtils]: 13: Hoare triple {11439#(and (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} assume { :end_inline___list_add } true;havoc #t~mem4#1.base, #t~mem4#1.offset; {11439#(and (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} is VALID [2022-02-20 23:45:38,315 INFO L290 TraceCheckUtils]: 14: Hoare triple {11439#(and (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} assume true; {11439#(and (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} is VALID [2022-02-20 23:45:38,315 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {11439#(and (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} {11406#(and (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= |~#gl_list~0.offset| (_ bv0 32)))} #196#return; {11449#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:38,316 INFO L290 TraceCheckUtils]: 16: Hoare triple {11449#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} assume { :end_inline_gl_insert } true;havoc gl_read_#t~nondet11#1; {11449#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:38,316 INFO L290 TraceCheckUtils]: 17: Hoare triple {11449#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} assume !(0bv32 != gl_read_#t~nondet10#1);havoc gl_read_#t~nondet10#1; {11449#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:38,317 INFO L290 TraceCheckUtils]: 18: Hoare triple {11449#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} assume { :end_inline_gl_read } true;assume { :begin_inline_gl_sort } true;havoc gl_sort_#t~ret21#1, gl_sort_#t~ret22#1.base, gl_sort_#t~ret22#1.offset, gl_sort_~#dst~0#1.base, gl_sort_~#dst~0#1.offset, gl_sort_~max_pos~1#1.base, gl_sort_~max_pos~1#1.offset; {11449#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:38,317 INFO L272 TraceCheckUtils]: 19: Hoare triple {11449#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} call gl_sort_#t~ret21#1 := list_empty(~#gl_list~0.base, ~#gl_list~0.offset); {11449#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:38,317 INFO L290 TraceCheckUtils]: 20: Hoare triple {11449#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {11449#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:38,318 INFO L290 TraceCheckUtils]: 21: Hoare triple {11449#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} SUMMARY for call #t~mem3.base, #t~mem3.offset := read~$Pointer$(~head.base, ~head.offset, 4bv32); srcloc: L529 {11449#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:38,318 INFO L290 TraceCheckUtils]: 22: Hoare triple {11449#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} #res := (if #t~mem3.base == ~head.base && #t~mem3.offset == ~head.offset then 1bv32 else 0bv32);havoc #t~mem3.base, #t~mem3.offset; {11449#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:38,319 INFO L290 TraceCheckUtils]: 23: Hoare triple {11449#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} assume true; {11449#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:38,319 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {11449#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} {11449#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} #198#return; {11449#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:38,320 INFO L290 TraceCheckUtils]: 25: Hoare triple {11449#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} assume !(0bv32 != gl_sort_#t~ret21#1);havoc gl_sort_#t~ret21#1;call gl_sort_~#dst~0#1.base, gl_sort_~#dst~0#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(gl_sort_~#dst~0#1.base, gl_sort_~#dst~0#1.offset, gl_sort_~#dst~0#1.base, gl_sort_~#dst~0#1.offset, 4bv32);call write~init~$Pointer$(gl_sort_~#dst~0#1.base, gl_sort_~#dst~0#1.offset, gl_sort_~#dst~0#1.base, ~bvadd32(4bv32, gl_sort_~#dst~0#1.offset), 4bv32);havoc gl_sort_~max_pos~1#1.base, gl_sort_~max_pos~1#1.offset; {11449#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:38,320 INFO L290 TraceCheckUtils]: 26: Hoare triple {11449#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} assume { :begin_inline_gl_seek_max } true;havoc gl_seek_max_#res#1.base, gl_seek_max_#res#1.offset;havoc gl_seek_max_#t~ret15#1, gl_seek_max_#t~mem16#1.base, gl_seek_max_#t~mem16#1.offset, gl_seek_max_#t~ret17#1, gl_seek_max_#t~mem18#1.base, gl_seek_max_#t~mem18#1.offset, gl_seek_max_#t~ret20#1, gl_seek_max_#t~mem19#1.base, gl_seek_max_#t~mem19#1.offset, gl_seek_max_~value~0#1, gl_seek_max_~pos~0#1.base, gl_seek_max_~pos~0#1.offset, gl_seek_max_~max_pos~0#1.base, gl_seek_max_~max_pos~0#1.offset, gl_seek_max_~max~0#1; {11449#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:38,321 INFO L272 TraceCheckUtils]: 27: Hoare triple {11449#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} call gl_seek_max_#t~ret15#1 := list_empty(~#gl_list~0.base, ~#gl_list~0.offset); {11449#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:38,321 INFO L290 TraceCheckUtils]: 28: Hoare triple {11449#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {11489#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |list_empty_#in~head.base| list_empty_~head.base) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_empty_#in~head.offset| list_empty_~head.offset))} is VALID [2022-02-20 23:45:38,321 INFO L290 TraceCheckUtils]: 29: Hoare triple {11489#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |list_empty_#in~head.base| list_empty_~head.base) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_empty_#in~head.offset| list_empty_~head.offset))} SUMMARY for call #t~mem3.base, #t~mem3.offset := read~$Pointer$(~head.base, ~head.offset, 4bv32); srcloc: L529 {11493#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |list_empty_#t~mem3.offset| (select (select |#memory_$Pointer$.offset| list_empty_~head.base) list_empty_~head.offset)) (= |list_empty_#in~head.base| list_empty_~head.base) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_empty_#in~head.offset| list_empty_~head.offset))} is VALID [2022-02-20 23:45:38,322 INFO L290 TraceCheckUtils]: 30: Hoare triple {11493#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |list_empty_#t~mem3.offset| (select (select |#memory_$Pointer$.offset| list_empty_~head.base) list_empty_~head.offset)) (= |list_empty_#in~head.base| list_empty_~head.base) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_empty_#in~head.offset| list_empty_~head.offset))} #res := (if #t~mem3.base == ~head.base && #t~mem3.offset == ~head.offset then 1bv32 else 0bv32);havoc #t~mem3.base, #t~mem3.offset; {11497#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (or (= |list_empty_#res| (_ bv0 32)) (and (= |list_empty_#res| (_ bv1 32)) (= |list_empty_#in~head.offset| (select (select |#memory_$Pointer$.offset| |list_empty_#in~head.base|) |list_empty_#in~head.offset|)))))} is VALID [2022-02-20 23:45:38,323 INFO L290 TraceCheckUtils]: 31: Hoare triple {11497#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (or (= |list_empty_#res| (_ bv0 32)) (and (= |list_empty_#res| (_ bv1 32)) (= |list_empty_#in~head.offset| (select (select |#memory_$Pointer$.offset| |list_empty_#in~head.base|) |list_empty_#in~head.offset|)))))} assume true; {11497#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (or (= |list_empty_#res| (_ bv0 32)) (and (= |list_empty_#res| (_ bv1 32)) (= |list_empty_#in~head.offset| (select (select |#memory_$Pointer$.offset| |list_empty_#in~head.base|) |list_empty_#in~head.offset|)))))} is VALID [2022-02-20 23:45:38,324 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {11497#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (or (= |list_empty_#res| (_ bv0 32)) (and (= |list_empty_#res| (_ bv1 32)) (= |list_empty_#in~head.offset| (select (select |#memory_$Pointer$.offset| |list_empty_#in~head.base|) |list_empty_#in~head.offset|)))))} {11449#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)))} #200#return; {11504#(= |ULTIMATE.start_gl_seek_max_#t~ret15#1| (_ bv0 32))} is VALID [2022-02-20 23:45:38,324 INFO L290 TraceCheckUtils]: 33: Hoare triple {11504#(= |ULTIMATE.start_gl_seek_max_#t~ret15#1| (_ bv0 32))} assume 0bv32 != gl_seek_max_#t~ret15#1;havoc gl_seek_max_#t~ret15#1;gl_seek_max_#res#1.base, gl_seek_max_#res#1.offset := 0bv32, 0bv32; {11395#false} is VALID [2022-02-20 23:45:38,324 INFO L290 TraceCheckUtils]: 34: Hoare triple {11395#false} gl_sort_#t~ret22#1.base, gl_sort_#t~ret22#1.offset := gl_seek_max_#res#1.base, gl_seek_max_#res#1.offset;assume { :end_inline_gl_seek_max } true;gl_sort_~max_pos~1#1.base, gl_sort_~max_pos~1#1.offset := gl_sort_#t~ret22#1.base, gl_sort_#t~ret22#1.offset; {11395#false} is VALID [2022-02-20 23:45:38,324 INFO L290 TraceCheckUtils]: 35: Hoare triple {11395#false} assume !!(gl_sort_~max_pos~1#1.base != 0bv32 || gl_sort_~max_pos~1#1.offset != 0bv32);havoc gl_sort_#t~ret22#1.base, gl_sort_#t~ret22#1.offset;assume { :begin_inline_list_move } true;list_move_#in~list#1.base, list_move_#in~list#1.offset, list_move_#in~head#1.base, list_move_#in~head#1.offset := gl_sort_~max_pos~1#1.base, gl_sort_~max_pos~1#1.offset, gl_sort_~#dst~0#1.base, gl_sort_~#dst~0#1.offset;havoc list_move_#t~mem7#1.base, list_move_#t~mem7#1.offset, list_move_#t~mem8#1.base, list_move_#t~mem8#1.offset, list_move_~list#1.base, list_move_~list#1.offset, list_move_~head#1.base, list_move_~head#1.offset;list_move_~list#1.base, list_move_~list#1.offset := list_move_#in~list#1.base, list_move_#in~list#1.offset;list_move_~head#1.base, list_move_~head#1.offset := list_move_#in~head#1.base, list_move_#in~head#1.offset; {11395#false} is VALID [2022-02-20 23:45:38,324 INFO L290 TraceCheckUtils]: 36: Hoare triple {11395#false} assume !(1bv1 == #valid[list_move_~list#1.base]); {11395#false} is VALID [2022-02-20 23:45:38,325 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:45:38,325 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:45:38,329 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:45:38,329 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [164235515] [2022-02-20 23:45:38,330 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [164235515] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:38,330 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:38,330 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-02-20 23:45:38,330 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1505048641] [2022-02-20 23:45:38,330 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:38,330 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 10 states have internal predecessors, (31), 2 states have call successors, (3), 2 states have call predecessors, (3), 3 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 37 [2022-02-20 23:45:38,330 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:38,330 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 10 states have internal predecessors, (31), 2 states have call successors, (3), 2 states have call predecessors, (3), 3 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 23:45:38,369 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:38,369 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-02-20 23:45:38,370 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:45:38,370 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-02-20 23:45:38,370 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=99, Unknown=0, NotChecked=0, Total=132 [2022-02-20 23:45:38,370 INFO L87 Difference]: Start difference. First operand 176 states and 212 transitions. Second operand has 12 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 10 states have internal predecessors, (31), 2 states have call successors, (3), 2 states have call predecessors, (3), 3 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 23:45:40,760 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:40,761 INFO L93 Difference]: Finished difference Result 200 states and 226 transitions. [2022-02-20 23:45:40,761 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-02-20 23:45:40,761 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 10 states have internal predecessors, (31), 2 states have call successors, (3), 2 states have call predecessors, (3), 3 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 37 [2022-02-20 23:45:40,762 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:40,762 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 10 states have internal predecessors, (31), 2 states have call successors, (3), 2 states have call predecessors, (3), 3 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 23:45:40,764 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 192 transitions. [2022-02-20 23:45:40,764 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 10 states have internal predecessors, (31), 2 states have call successors, (3), 2 states have call predecessors, (3), 3 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 23:45:40,765 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 192 transitions. [2022-02-20 23:45:40,765 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states and 192 transitions. [2022-02-20 23:45:41,127 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 192 edges. 192 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:41,129 INFO L225 Difference]: With dead ends: 200 [2022-02-20 23:45:41,129 INFO L226 Difference]: Without dead ends: 200 [2022-02-20 23:45:41,129 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 43 GetRequests, 26 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 36 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=76, Invalid=266, Unknown=0, NotChecked=0, Total=342 [2022-02-20 23:45:41,130 INFO L933 BasicCegarLoop]: 92 mSDtfsCounter, 206 mSDsluCounter, 518 mSDsCounter, 0 mSdLazyCounter, 431 mSolverCounterSat, 24 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 214 SdHoareTripleChecker+Valid, 610 SdHoareTripleChecker+Invalid, 455 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 24 IncrementalHoareTripleChecker+Valid, 431 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:41,130 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [214 Valid, 610 Invalid, 455 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [24 Valid, 431 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-02-20 23:45:41,131 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 200 states. [2022-02-20 23:45:41,135 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 200 to 176. [2022-02-20 23:45:41,136 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:41,136 INFO L82 GeneralOperation]: Start isEquivalent. First operand 200 states. Second operand has 176 states, 116 states have (on average 1.5775862068965518) internal successors, (183), 153 states have internal predecessors, (183), 14 states have call successors, (14), 9 states have call predecessors, (14), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-02-20 23:45:41,136 INFO L74 IsIncluded]: Start isIncluded. First operand 200 states. Second operand has 176 states, 116 states have (on average 1.5775862068965518) internal successors, (183), 153 states have internal predecessors, (183), 14 states have call successors, (14), 9 states have call predecessors, (14), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-02-20 23:45:41,137 INFO L87 Difference]: Start difference. First operand 200 states. Second operand has 176 states, 116 states have (on average 1.5775862068965518) internal successors, (183), 153 states have internal predecessors, (183), 14 states have call successors, (14), 9 states have call predecessors, (14), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-02-20 23:45:41,139 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:41,140 INFO L93 Difference]: Finished difference Result 200 states and 226 transitions. [2022-02-20 23:45:41,140 INFO L276 IsEmpty]: Start isEmpty. Operand 200 states and 226 transitions. [2022-02-20 23:45:41,140 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:41,140 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:41,141 INFO L74 IsIncluded]: Start isIncluded. First operand has 176 states, 116 states have (on average 1.5775862068965518) internal successors, (183), 153 states have internal predecessors, (183), 14 states have call successors, (14), 9 states have call predecessors, (14), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) Second operand 200 states. [2022-02-20 23:45:41,141 INFO L87 Difference]: Start difference. First operand has 176 states, 116 states have (on average 1.5775862068965518) internal successors, (183), 153 states have internal predecessors, (183), 14 states have call successors, (14), 9 states have call predecessors, (14), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) Second operand 200 states. [2022-02-20 23:45:41,144 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:41,144 INFO L93 Difference]: Finished difference Result 200 states and 226 transitions. [2022-02-20 23:45:41,144 INFO L276 IsEmpty]: Start isEmpty. Operand 200 states and 226 transitions. [2022-02-20 23:45:41,144 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:41,144 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:41,144 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:41,145 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:41,145 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 176 states, 116 states have (on average 1.5775862068965518) internal successors, (183), 153 states have internal predecessors, (183), 14 states have call successors, (14), 9 states have call predecessors, (14), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-02-20 23:45:41,149 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 176 states to 176 states and 211 transitions. [2022-02-20 23:45:41,149 INFO L78 Accepts]: Start accepts. Automaton has 176 states and 211 transitions. Word has length 37 [2022-02-20 23:45:41,150 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:41,150 INFO L470 AbstractCegarLoop]: Abstraction has 176 states and 211 transitions. [2022-02-20 23:45:41,150 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 10 states have internal predecessors, (31), 2 states have call successors, (3), 2 states have call predecessors, (3), 3 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 23:45:41,150 INFO L276 IsEmpty]: Start isEmpty. Operand 176 states and 211 transitions. [2022-02-20 23:45:41,150 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-02-20 23:45:41,150 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:41,151 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:45:41,174 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (20)] Forceful destruction successful, exit code 0 [2022-02-20 23:45:41,358 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 20 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:45:41,359 INFO L402 AbstractCegarLoop]: === Iteration 18 === Targeting val_from_nodeErr0REQUIRES_VIOLATION === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, list_emptyErr0REQUIRES_VIOLATION, list_emptyErr1REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:41,359 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:41,359 INFO L85 PathProgramCache]: Analyzing trace with hash -1437435270, now seen corresponding path program 1 times [2022-02-20 23:45:41,360 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:45:41,360 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [866595372] [2022-02-20 23:45:41,360 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:41,360 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:45:41,360 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:45:41,361 INFO L229 MonitoredProcess]: Starting monitored process 21 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:41,407 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (21)] Waiting until timeout for monitored process [2022-02-20 23:45:41,514 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:41,521 INFO L263 TraceCheckSpWp]: Trace formula consists of 207 conjuncts, 25 conjunts are in the unsatisfiable core [2022-02-20 23:45:41,534 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:41,535 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:41,543 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:41,717 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:45:41,831 INFO L356 Elim1Store]: treesize reduction 27, result has 43.8 percent of original size [2022-02-20 23:45:41,832 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 24 treesize of output 35 [2022-02-20 23:45:41,900 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 20 treesize of output 12 [2022-02-20 23:45:41,955 INFO L290 TraceCheckUtils]: 0: Hoare triple {12306#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(12bv32, 2bv32);~#gl_list~0.base, ~#gl_list~0.offset := 3bv32, 0bv32;call #Ultimate.allocInit(8bv32, 3bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~#gl_list~0.offset, 4bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~bvadd32(4bv32, ~#gl_list~0.offset), 4bv32); {12306#true} is VALID [2022-02-20 23:45:41,955 INFO L290 TraceCheckUtils]: 1: Hoare triple {12306#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;assume { :begin_inline_gl_read } true;havoc gl_read_#t~nondet11#1, gl_read_#t~nondet10#1; {12306#true} is VALID [2022-02-20 23:45:41,956 INFO L290 TraceCheckUtils]: 2: Hoare triple {12306#true} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet11#1;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset, gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12bv32);gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset := gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset; {12317#(= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:45:41,957 INFO L290 TraceCheckUtils]: 3: Hoare triple {12317#(= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1))} assume !(gl_insert_~node~0#1.base == 0bv32 && gl_insert_~node~0#1.offset == 0bv32); {12317#(= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:45:41,957 INFO L290 TraceCheckUtils]: 4: Hoare triple {12317#(= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset, 4bv32); srcloc: L568-2 {12317#(= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:45:41,958 INFO L272 TraceCheckUtils]: 5: Hoare triple {12317#(= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1))} call list_add(gl_insert_~node~0#1.base, ~bvadd32(4bv32, gl_insert_~node~0#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {12327#(exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11| (_ BitVec 32))) (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11|)))} is VALID [2022-02-20 23:45:41,959 INFO L290 TraceCheckUtils]: 6: Hoare triple {12327#(exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11| (_ BitVec 32))) (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11|)))} ~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; {12331#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11| (_ BitVec 32))) (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11|))) (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |list_add_#in~head#1.base| |list_add_~head#1.base|) (= |list_add_#in~new#1.base| |list_add_~new#1.base|))} is VALID [2022-02-20 23:45:41,959 INFO L290 TraceCheckUtils]: 7: Hoare triple {12331#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11| (_ BitVec 32))) (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11|))) (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |list_add_#in~head#1.base| |list_add_~head#1.base|) (= |list_add_#in~new#1.base| |list_add_~new#1.base|))} SUMMARY for call #t~mem4#1.base, #t~mem4#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L547 {12331#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11| (_ BitVec 32))) (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11|))) (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |list_add_#in~head#1.base| |list_add_~head#1.base|) (= |list_add_#in~new#1.base| |list_add_~new#1.base|))} is VALID [2022-02-20 23:45:41,960 INFO L290 TraceCheckUtils]: 8: Hoare triple {12331#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11| (_ BitVec 32))) (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11|))) (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |list_add_#in~head#1.base| |list_add_~head#1.base|) (= |list_add_#in~new#1.base| |list_add_~new#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, ~head#1.base, ~head#1.offset, #t~mem4#1.base, #t~mem4#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; {12338#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11| (_ BitVec 32))) (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11|))) (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|))} is VALID [2022-02-20 23:45:41,960 INFO L290 TraceCheckUtils]: 9: Hoare triple {12338#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11| (_ BitVec 32))) (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11|))) (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#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: L535 {12338#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11| (_ BitVec 32))) (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11|))) (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|))} is VALID [2022-02-20 23:45:41,961 INFO L290 TraceCheckUtils]: 10: Hoare triple {12338#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11| (_ BitVec 32))) (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11|))) (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#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: L535-1 {12338#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11| (_ BitVec 32))) (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11|))) (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|))} is VALID [2022-02-20 23:45:41,962 INFO L290 TraceCheckUtils]: 11: Hoare triple {12338#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11| (_ BitVec 32))) (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11|))) (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#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: L536 {12338#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11| (_ BitVec 32))) (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11|))) (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|))} is VALID [2022-02-20 23:45:41,963 INFO L290 TraceCheckUtils]: 12: Hoare triple {12338#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11| (_ BitVec 32))) (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11|))) (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#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: L537 {12351#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11| (_ BitVec 32))) (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11|))) (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} is VALID [2022-02-20 23:45:41,964 INFO L290 TraceCheckUtils]: 13: Hoare triple {12351#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11| (_ BitVec 32))) (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11|))) (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} assume { :end_inline___list_add } true;havoc #t~mem4#1.base, #t~mem4#1.offset; {12351#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11| (_ BitVec 32))) (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11|))) (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} is VALID [2022-02-20 23:45:41,964 INFO L290 TraceCheckUtils]: 14: Hoare triple {12351#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11| (_ BitVec 32))) (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11|))) (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} assume true; {12351#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11| (_ BitVec 32))) (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11|))) (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} is VALID [2022-02-20 23:45:41,965 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {12351#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11| (_ BitVec 32))) (= (_ bv1 1) (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_11|))) (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} {12317#(= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1))} #196#return; {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} is VALID [2022-02-20 23:45:41,965 INFO L290 TraceCheckUtils]: 16: Hoare triple {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} assume { :end_inline_gl_insert } true;havoc gl_read_#t~nondet11#1; {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} is VALID [2022-02-20 23:45:41,966 INFO L290 TraceCheckUtils]: 17: Hoare triple {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} assume !(0bv32 != gl_read_#t~nondet10#1);havoc gl_read_#t~nondet10#1; {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} is VALID [2022-02-20 23:45:41,966 INFO L290 TraceCheckUtils]: 18: Hoare triple {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} assume { :end_inline_gl_read } true;assume { :begin_inline_gl_sort } true;havoc gl_sort_#t~ret21#1, gl_sort_#t~ret22#1.base, gl_sort_#t~ret22#1.offset, gl_sort_~#dst~0#1.base, gl_sort_~#dst~0#1.offset, gl_sort_~max_pos~1#1.base, gl_sort_~max_pos~1#1.offset; {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} is VALID [2022-02-20 23:45:41,967 INFO L272 TraceCheckUtils]: 19: Hoare triple {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} call gl_sort_#t~ret21#1 := list_empty(~#gl_list~0.base, ~#gl_list~0.offset); {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} is VALID [2022-02-20 23:45:41,967 INFO L290 TraceCheckUtils]: 20: Hoare triple {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} is VALID [2022-02-20 23:45:41,968 INFO L290 TraceCheckUtils]: 21: Hoare triple {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} SUMMARY for call #t~mem3.base, #t~mem3.offset := read~$Pointer$(~head.base, ~head.offset, 4bv32); srcloc: L529 {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} is VALID [2022-02-20 23:45:41,968 INFO L290 TraceCheckUtils]: 22: Hoare triple {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} #res := (if #t~mem3.base == ~head.base && #t~mem3.offset == ~head.offset then 1bv32 else 0bv32);havoc #t~mem3.base, #t~mem3.offset; {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} is VALID [2022-02-20 23:45:41,968 INFO L290 TraceCheckUtils]: 23: Hoare triple {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} assume true; {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} is VALID [2022-02-20 23:45:41,969 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} #198#return; {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} is VALID [2022-02-20 23:45:41,970 INFO L290 TraceCheckUtils]: 25: Hoare triple {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} assume !(0bv32 != gl_sort_#t~ret21#1);havoc gl_sort_#t~ret21#1;call gl_sort_~#dst~0#1.base, gl_sort_~#dst~0#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(gl_sort_~#dst~0#1.base, gl_sort_~#dst~0#1.offset, gl_sort_~#dst~0#1.base, gl_sort_~#dst~0#1.offset, 4bv32);call write~init~$Pointer$(gl_sort_~#dst~0#1.base, gl_sort_~#dst~0#1.offset, gl_sort_~#dst~0#1.base, ~bvadd32(4bv32, gl_sort_~#dst~0#1.offset), 4bv32);havoc gl_sort_~max_pos~1#1.base, gl_sort_~max_pos~1#1.offset; {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} is VALID [2022-02-20 23:45:41,971 INFO L290 TraceCheckUtils]: 26: Hoare triple {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} assume { :begin_inline_gl_seek_max } true;havoc gl_seek_max_#res#1.base, gl_seek_max_#res#1.offset;havoc gl_seek_max_#t~ret15#1, gl_seek_max_#t~mem16#1.base, gl_seek_max_#t~mem16#1.offset, gl_seek_max_#t~ret17#1, gl_seek_max_#t~mem18#1.base, gl_seek_max_#t~mem18#1.offset, gl_seek_max_#t~ret20#1, gl_seek_max_#t~mem19#1.base, gl_seek_max_#t~mem19#1.offset, gl_seek_max_~value~0#1, gl_seek_max_~pos~0#1.base, gl_seek_max_~pos~0#1.offset, gl_seek_max_~max_pos~0#1.base, gl_seek_max_~max_pos~0#1.offset, gl_seek_max_~max~0#1; {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} is VALID [2022-02-20 23:45:41,971 INFO L272 TraceCheckUtils]: 27: Hoare triple {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} call gl_seek_max_#t~ret15#1 := list_empty(~#gl_list~0.base, ~#gl_list~0.offset); {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} is VALID [2022-02-20 23:45:41,972 INFO L290 TraceCheckUtils]: 28: Hoare triple {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} is VALID [2022-02-20 23:45:41,972 INFO L290 TraceCheckUtils]: 29: Hoare triple {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} SUMMARY for call #t~mem3.base, #t~mem3.offset := read~$Pointer$(~head.base, ~head.offset, 4bv32); srcloc: L529 {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} is VALID [2022-02-20 23:45:41,972 INFO L290 TraceCheckUtils]: 30: Hoare triple {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} #res := (if #t~mem3.base == ~head.base && #t~mem3.offset == ~head.offset then 1bv32 else 0bv32);havoc #t~mem3.base, #t~mem3.offset; {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} is VALID [2022-02-20 23:45:41,973 INFO L290 TraceCheckUtils]: 31: Hoare triple {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} assume true; {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} is VALID [2022-02-20 23:45:41,974 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} #200#return; {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} is VALID [2022-02-20 23:45:41,974 INFO L290 TraceCheckUtils]: 33: Hoare triple {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} assume !(0bv32 != gl_seek_max_#t~ret15#1);havoc gl_seek_max_#t~ret15#1;havoc gl_seek_max_~pos~0#1.base, gl_seek_max_~pos~0#1.offset; {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} is VALID [2022-02-20 23:45:41,974 INFO L290 TraceCheckUtils]: 34: Hoare triple {12361#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)))))} SUMMARY for call gl_seek_max_#t~mem16#1.base, gl_seek_max_#t~mem16#1.offset := read~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, 4bv32); srcloc: L596 {12419#(= (bvadd (bvneg (select |#valid| |ULTIMATE.start_gl_seek_max_#t~mem16#1.base|)) (_ bv1 1)) (_ bv0 1))} is VALID [2022-02-20 23:45:41,975 INFO L290 TraceCheckUtils]: 35: Hoare triple {12419#(= (bvadd (bvneg (select |#valid| |ULTIMATE.start_gl_seek_max_#t~mem16#1.base|)) (_ bv1 1)) (_ bv0 1))} gl_seek_max_~max_pos~0#1.base, gl_seek_max_~max_pos~0#1.offset := gl_seek_max_#t~mem16#1.base, gl_seek_max_#t~mem16#1.offset;havoc gl_seek_max_#t~mem16#1.base, gl_seek_max_#t~mem16#1.offset; {12423#(= (_ bv0 1) (bvadd (bvneg (select |#valid| |ULTIMATE.start_gl_seek_max_~max_pos~0#1.base|)) (_ bv1 1)))} is VALID [2022-02-20 23:45:41,975 INFO L272 TraceCheckUtils]: 36: Hoare triple {12423#(= (_ bv0 1) (bvadd (bvneg (select |#valid| |ULTIMATE.start_gl_seek_max_~max_pos~0#1.base|)) (_ bv1 1)))} call gl_seek_max_#t~ret17#1 := val_from_node(gl_seek_max_~max_pos~0#1.base, gl_seek_max_~max_pos~0#1.offset); {12427#(= (_ bv0 1) (bvadd (bvneg (select |#valid| |val_from_node_#in~head.base|)) (_ bv1 1)))} is VALID [2022-02-20 23:45:41,976 INFO L290 TraceCheckUtils]: 37: Hoare triple {12427#(= (_ bv0 1) (bvadd (bvneg (select |#valid| |val_from_node_#in~head.base|)) (_ bv1 1)))} ~head.base, ~head.offset := #in~head.base, #in~head.offset;~entry~0.base, ~entry~0.offset := ~head.base, ~bvsub32(~head.offset, 4bv32); {12431#(= (_ bv0 1) (bvadd (bvneg (select |#valid| val_from_node_~entry~0.base)) (_ bv1 1)))} is VALID [2022-02-20 23:45:41,976 INFO L290 TraceCheckUtils]: 38: Hoare triple {12431#(= (_ bv0 1) (bvadd (bvneg (select |#valid| val_from_node_~entry~0.base)) (_ bv1 1)))} assume !(1bv1 == #valid[~entry~0.base]); {12307#false} is VALID [2022-02-20 23:45:41,977 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-02-20 23:45:41,977 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:45:41,977 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:45:41,977 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [866595372] [2022-02-20 23:45:41,977 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [866595372] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:45:41,977 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:45:41,977 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-02-20 23:45:41,977 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [510900075] [2022-02-20 23:45:41,977 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:45:41,978 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 10 states have (on average 2.8) internal successors, (28), 10 states have internal predecessors, (28), 3 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 39 [2022-02-20 23:45:41,978 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:41,978 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 12 states, 10 states have (on average 2.8) internal successors, (28), 10 states have internal predecessors, (28), 3 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 23:45:42,014 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 35 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:42,015 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-02-20 23:45:42,015 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:45:42,015 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-02-20 23:45:42,015 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=30, Invalid=102, Unknown=0, NotChecked=0, Total=132 [2022-02-20 23:45:42,015 INFO L87 Difference]: Start difference. First operand 176 states and 211 transitions. Second operand has 12 states, 10 states have (on average 2.8) internal successors, (28), 10 states have internal predecessors, (28), 3 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 23:45:44,322 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:44,322 INFO L93 Difference]: Finished difference Result 262 states and 304 transitions. [2022-02-20 23:45:44,322 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-02-20 23:45:44,322 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 10 states have (on average 2.8) internal successors, (28), 10 states have internal predecessors, (28), 3 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 39 [2022-02-20 23:45:44,322 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:44,322 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 10 states have (on average 2.8) internal successors, (28), 10 states have internal predecessors, (28), 3 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 23:45:44,325 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 282 transitions. [2022-02-20 23:45:44,328 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 10 states have (on average 2.8) internal successors, (28), 10 states have internal predecessors, (28), 3 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 23:45:44,330 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 282 transitions. [2022-02-20 23:45:44,330 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 282 transitions. [2022-02-20 23:45:44,594 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 282 edges. 282 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:44,597 INFO L225 Difference]: With dead ends: 262 [2022-02-20 23:45:44,597 INFO L226 Difference]: Without dead ends: 262 [2022-02-20 23:45:44,598 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 45 GetRequests, 27 SyntacticMatches, 1 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 29 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=68, Invalid=274, Unknown=0, NotChecked=0, Total=342 [2022-02-20 23:45:44,598 INFO L933 BasicCegarLoop]: 107 mSDtfsCounter, 152 mSDsluCounter, 612 mSDsCounter, 0 mSdLazyCounter, 404 mSolverCounterSat, 16 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 158 SdHoareTripleChecker+Valid, 719 SdHoareTripleChecker+Invalid, 770 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 404 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 350 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:44,598 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [158 Valid, 719 Invalid, 770 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 404 Invalid, 0 Unknown, 350 Unchecked, 0.6s Time] [2022-02-20 23:45:44,598 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 262 states. [2022-02-20 23:45:44,601 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 262 to 181. [2022-02-20 23:45:44,601 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:44,601 INFO L82 GeneralOperation]: Start isEquivalent. First operand 262 states. Second operand has 181 states, 120 states have (on average 1.5583333333333333) internal successors, (187), 157 states have internal predecessors, (187), 14 states have call successors, (14), 10 states have call predecessors, (14), 10 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-02-20 23:45:44,601 INFO L74 IsIncluded]: Start isIncluded. First operand 262 states. Second operand has 181 states, 120 states have (on average 1.5583333333333333) internal successors, (187), 157 states have internal predecessors, (187), 14 states have call successors, (14), 10 states have call predecessors, (14), 10 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-02-20 23:45:44,602 INFO L87 Difference]: Start difference. First operand 262 states. Second operand has 181 states, 120 states have (on average 1.5583333333333333) internal successors, (187), 157 states have internal predecessors, (187), 14 states have call successors, (14), 10 states have call predecessors, (14), 10 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-02-20 23:45:44,606 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:44,606 INFO L93 Difference]: Finished difference Result 262 states and 304 transitions. [2022-02-20 23:45:44,606 INFO L276 IsEmpty]: Start isEmpty. Operand 262 states and 304 transitions. [2022-02-20 23:45:44,607 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:44,607 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:44,607 INFO L74 IsIncluded]: Start isIncluded. First operand has 181 states, 120 states have (on average 1.5583333333333333) internal successors, (187), 157 states have internal predecessors, (187), 14 states have call successors, (14), 10 states have call predecessors, (14), 10 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) Second operand 262 states. [2022-02-20 23:45:44,607 INFO L87 Difference]: Start difference. First operand has 181 states, 120 states have (on average 1.5583333333333333) internal successors, (187), 157 states have internal predecessors, (187), 14 states have call successors, (14), 10 states have call predecessors, (14), 10 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) Second operand 262 states. [2022-02-20 23:45:44,611 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:44,611 INFO L93 Difference]: Finished difference Result 262 states and 304 transitions. [2022-02-20 23:45:44,611 INFO L276 IsEmpty]: Start isEmpty. Operand 262 states and 304 transitions. [2022-02-20 23:45:44,612 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:44,612 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:44,612 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:44,612 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:44,613 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 181 states, 120 states have (on average 1.5583333333333333) internal successors, (187), 157 states have internal predecessors, (187), 14 states have call successors, (14), 10 states have call predecessors, (14), 10 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-02-20 23:45:44,614 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 181 states to 181 states and 215 transitions. [2022-02-20 23:45:44,615 INFO L78 Accepts]: Start accepts. Automaton has 181 states and 215 transitions. Word has length 39 [2022-02-20 23:45:44,615 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:44,615 INFO L470 AbstractCegarLoop]: Abstraction has 181 states and 215 transitions. [2022-02-20 23:45:44,615 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 10 states have (on average 2.8) internal successors, (28), 10 states have internal predecessors, (28), 3 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 23:45:44,615 INFO L276 IsEmpty]: Start isEmpty. Operand 181 states and 215 transitions. [2022-02-20 23:45:44,615 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-02-20 23:45:44,616 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:44,616 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:45:44,626 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (21)] Forceful destruction successful, exit code 0 [2022-02-20 23:45:44,826 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 21 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:45:44,827 INFO L402 AbstractCegarLoop]: === Iteration 19 === Targeting val_from_nodeErr1REQUIRES_VIOLATION === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, list_emptyErr0REQUIRES_VIOLATION, list_emptyErr1REQUIRES_VIOLATION (and 44 more)] === [2022-02-20 23:45:44,827 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:44,827 INFO L85 PathProgramCache]: Analyzing trace with hash -1437435269, now seen corresponding path program 1 times [2022-02-20 23:45:44,828 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:45:44,828 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [703699645] [2022-02-20 23:45:44,828 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:44,828 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:45:44,828 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:45:44,829 INFO L229 MonitoredProcess]: Starting monitored process 22 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:45:44,830 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (22)] Waiting until timeout for monitored process [2022-02-20 23:45:44,991 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:44,999 INFO L263 TraceCheckSpWp]: Trace formula consists of 207 conjuncts, 40 conjunts are in the unsatisfiable core [2022-02-20 23:45:45,011 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:45,013 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:45,024 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:45:45,027 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:45:45,226 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:45:45,230 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:45:45,395 INFO L356 Elim1Store]: treesize reduction 4, result has 66.7 percent of original size [2022-02-20 23:45:45,395 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 18 treesize of output 18 [2022-02-20 23:45:45,408 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 18 [2022-02-20 23:45:45,468 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2022-02-20 23:45:45,470 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 9 [2022-02-20 23:45:45,555 INFO L290 TraceCheckUtils]: 0: Hoare triple {13415#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(12bv32, 2bv32);~#gl_list~0.base, ~#gl_list~0.offset := 3bv32, 0bv32;call #Ultimate.allocInit(8bv32, 3bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~#gl_list~0.offset, 4bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~bvadd32(4bv32, ~#gl_list~0.offset), 4bv32); {13415#true} is VALID [2022-02-20 23:45:45,555 INFO L290 TraceCheckUtils]: 1: Hoare triple {13415#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;assume { :begin_inline_gl_read } true;havoc gl_read_#t~nondet11#1, gl_read_#t~nondet10#1; {13415#true} is VALID [2022-02-20 23:45:45,556 INFO L290 TraceCheckUtils]: 2: Hoare triple {13415#true} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet11#1;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset, gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12bv32);gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset := gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset; {13426#(and (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)))} is VALID [2022-02-20 23:45:45,557 INFO L290 TraceCheckUtils]: 3: Hoare triple {13426#(and (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)))} assume !(gl_insert_~node~0#1.base == 0bv32 && gl_insert_~node~0#1.offset == 0bv32); {13426#(and (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)))} is VALID [2022-02-20 23:45:45,557 INFO L290 TraceCheckUtils]: 4: Hoare triple {13426#(and (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset, 4bv32); srcloc: L568-2 {13426#(and (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)))} is VALID [2022-02-20 23:45:45,558 INFO L272 TraceCheckUtils]: 5: Hoare triple {13426#(and (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)))} call list_add(gl_insert_~node~0#1.base, ~bvadd32(4bv32, gl_insert_~node~0#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {13436#(exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv1 1)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv12 32))))} is VALID [2022-02-20 23:45:45,559 INFO L290 TraceCheckUtils]: 6: Hoare triple {13436#(exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv1 1)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ 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; {13440#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv1 1)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv12 32)))) (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |list_add_~new#1.offset| |list_add_#in~new#1.offset|) (= |list_add_#in~head#1.base| |list_add_~head#1.base|) (= |list_add_#in~new#1.base| |list_add_~new#1.base|))} is VALID [2022-02-20 23:45:45,559 INFO L290 TraceCheckUtils]: 7: Hoare triple {13440#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv1 1)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv12 32)))) (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |list_add_~new#1.offset| |list_add_#in~new#1.offset|) (= |list_add_#in~head#1.base| |list_add_~head#1.base|) (= |list_add_#in~new#1.base| |list_add_~new#1.base|))} SUMMARY for call #t~mem4#1.base, #t~mem4#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L547 {13440#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv1 1)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv12 32)))) (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |list_add_~new#1.offset| |list_add_#in~new#1.offset|) (= |list_add_#in~head#1.base| |list_add_~head#1.base|) (= |list_add_#in~new#1.base| |list_add_~new#1.base|))} is VALID [2022-02-20 23:45:45,560 INFO L290 TraceCheckUtils]: 8: Hoare triple {13440#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv1 1)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv12 32)))) (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |list_add_~new#1.offset| |list_add_#in~new#1.offset|) (= |list_add_#in~head#1.base| |list_add_~head#1.base|) (= |list_add_#in~new#1.base| |list_add_~new#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, ~head#1.base, ~head#1.offset, #t~mem4#1.base, #t~mem4#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; {13447#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv1 1)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv12 32)))) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|))} is VALID [2022-02-20 23:45:45,560 INFO L290 TraceCheckUtils]: 9: Hoare triple {13447#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv1 1)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv12 32)))) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#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: L535 {13447#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv1 1)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv12 32)))) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|))} is VALID [2022-02-20 23:45:45,561 INFO L290 TraceCheckUtils]: 10: Hoare triple {13447#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv1 1)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv12 32)))) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#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: L535-1 {13447#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv1 1)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv12 32)))) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|))} is VALID [2022-02-20 23:45:45,561 INFO L290 TraceCheckUtils]: 11: Hoare triple {13447#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv1 1)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv12 32)))) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#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: L536 {13447#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv1 1)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv12 32)))) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|))} is VALID [2022-02-20 23:45:45,563 INFO L290 TraceCheckUtils]: 12: Hoare triple {13447#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv1 1)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv12 32)))) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#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: L537 {13460#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv1 1)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv12 32)))) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} is VALID [2022-02-20 23:45:45,563 INFO L290 TraceCheckUtils]: 13: Hoare triple {13460#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv1 1)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv12 32)))) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} assume { :end_inline___list_add } true;havoc #t~mem4#1.base, #t~mem4#1.offset; {13460#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv1 1)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv12 32)))) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} is VALID [2022-02-20 23:45:45,564 INFO L290 TraceCheckUtils]: 14: Hoare triple {13460#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv1 1)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv12 32)))) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} assume true; {13460#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv1 1)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv12 32)))) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} is VALID [2022-02-20 23:45:45,564 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {13460#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv1 1)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_12|) (_ bv12 32)))) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} {13426#(and (= (select |#valid| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)))} #196#return; {13470#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} is VALID [2022-02-20 23:45:45,565 INFO L290 TraceCheckUtils]: 16: Hoare triple {13470#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} assume { :end_inline_gl_insert } true;havoc gl_read_#t~nondet11#1; {13470#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} is VALID [2022-02-20 23:45:45,565 INFO L290 TraceCheckUtils]: 17: Hoare triple {13470#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} assume !(0bv32 != gl_read_#t~nondet10#1);havoc gl_read_#t~nondet10#1; {13470#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} is VALID [2022-02-20 23:45:45,568 INFO L290 TraceCheckUtils]: 18: Hoare triple {13470#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} assume { :end_inline_gl_read } true;assume { :begin_inline_gl_sort } true;havoc gl_sort_#t~ret21#1, gl_sort_#t~ret22#1.base, gl_sort_#t~ret22#1.offset, gl_sort_~#dst~0#1.base, gl_sort_~#dst~0#1.offset, gl_sort_~max_pos~1#1.base, gl_sort_~max_pos~1#1.offset; {13470#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} is VALID [2022-02-20 23:45:45,569 INFO L272 TraceCheckUtils]: 19: Hoare triple {13470#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} call gl_sort_#t~ret21#1 := list_empty(~#gl_list~0.base, ~#gl_list~0.offset); {13470#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} is VALID [2022-02-20 23:45:45,570 INFO L290 TraceCheckUtils]: 20: Hoare triple {13470#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {13470#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} is VALID [2022-02-20 23:45:45,570 INFO L290 TraceCheckUtils]: 21: Hoare triple {13470#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} SUMMARY for call #t~mem3.base, #t~mem3.offset := read~$Pointer$(~head.base, ~head.offset, 4bv32); srcloc: L529 {13470#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} is VALID [2022-02-20 23:45:45,571 INFO L290 TraceCheckUtils]: 22: Hoare triple {13470#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} #res := (if #t~mem3.base == ~head.base && #t~mem3.offset == ~head.offset then 1bv32 else 0bv32);havoc #t~mem3.base, #t~mem3.offset; {13470#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} is VALID [2022-02-20 23:45:45,572 INFO L290 TraceCheckUtils]: 23: Hoare triple {13470#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} assume true; {13470#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} is VALID [2022-02-20 23:45:45,573 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {13470#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} {13470#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} #198#return; {13470#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} is VALID [2022-02-20 23:45:45,574 INFO L290 TraceCheckUtils]: 25: Hoare triple {13470#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} assume !(0bv32 != gl_sort_#t~ret21#1);havoc gl_sort_#t~ret21#1;call gl_sort_~#dst~0#1.base, gl_sort_~#dst~0#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(gl_sort_~#dst~0#1.base, gl_sort_~#dst~0#1.offset, gl_sort_~#dst~0#1.base, gl_sort_~#dst~0#1.offset, 4bv32);call write~init~$Pointer$(gl_sort_~#dst~0#1.base, gl_sort_~#dst~0#1.offset, gl_sort_~#dst~0#1.base, ~bvadd32(4bv32, gl_sort_~#dst~0#1.offset), 4bv32);havoc gl_sort_~max_pos~1#1.base, gl_sort_~max_pos~1#1.offset; {13501#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)))} is VALID [2022-02-20 23:45:45,575 INFO L290 TraceCheckUtils]: 26: Hoare triple {13501#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)))} assume { :begin_inline_gl_seek_max } true;havoc gl_seek_max_#res#1.base, gl_seek_max_#res#1.offset;havoc gl_seek_max_#t~ret15#1, gl_seek_max_#t~mem16#1.base, gl_seek_max_#t~mem16#1.offset, gl_seek_max_#t~ret17#1, gl_seek_max_#t~mem18#1.base, gl_seek_max_#t~mem18#1.offset, gl_seek_max_#t~ret20#1, gl_seek_max_#t~mem19#1.base, gl_seek_max_#t~mem19#1.offset, gl_seek_max_~value~0#1, gl_seek_max_~pos~0#1.base, gl_seek_max_~pos~0#1.offset, gl_seek_max_~max_pos~0#1.base, gl_seek_max_~max_pos~0#1.offset, gl_seek_max_~max~0#1; {13501#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)))} is VALID [2022-02-20 23:45:45,575 INFO L272 TraceCheckUtils]: 27: Hoare triple {13501#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)))} call gl_seek_max_#t~ret15#1 := list_empty(~#gl_list~0.base, ~#gl_list~0.offset); {13501#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)))} is VALID [2022-02-20 23:45:45,575 INFO L290 TraceCheckUtils]: 28: Hoare triple {13501#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)))} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {13501#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)))} is VALID [2022-02-20 23:45:45,576 INFO L290 TraceCheckUtils]: 29: Hoare triple {13501#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)))} SUMMARY for call #t~mem3.base, #t~mem3.offset := read~$Pointer$(~head.base, ~head.offset, 4bv32); srcloc: L529 {13501#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)))} is VALID [2022-02-20 23:45:45,576 INFO L290 TraceCheckUtils]: 30: Hoare triple {13501#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)))} #res := (if #t~mem3.base == ~head.base && #t~mem3.offset == ~head.offset then 1bv32 else 0bv32);havoc #t~mem3.base, #t~mem3.offset; {13501#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)))} is VALID [2022-02-20 23:45:45,576 INFO L290 TraceCheckUtils]: 31: Hoare triple {13501#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)))} assume true; {13501#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)))} is VALID [2022-02-20 23:45:45,577 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {13501#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)))} {13501#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)))} #200#return; {13501#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)))} is VALID [2022-02-20 23:45:45,577 INFO L290 TraceCheckUtils]: 33: Hoare triple {13501#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)))} assume !(0bv32 != gl_seek_max_#t~ret15#1);havoc gl_seek_max_#t~ret15#1;havoc gl_seek_max_~pos~0#1.base, gl_seek_max_~pos~0#1.offset; {13501#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)))} is VALID [2022-02-20 23:45:45,578 INFO L290 TraceCheckUtils]: 34: Hoare triple {13501#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)))} SUMMARY for call gl_seek_max_#t~mem16#1.base, gl_seek_max_#t~mem16#1.offset := read~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, 4bv32); srcloc: L596 {13529#(and (= (select |#length| |ULTIMATE.start_gl_seek_max_#t~mem16#1.base|) (_ bv12 32)) (= (_ bv4 32) |ULTIMATE.start_gl_seek_max_#t~mem16#1.offset|))} is VALID [2022-02-20 23:45:45,578 INFO L290 TraceCheckUtils]: 35: Hoare triple {13529#(and (= (select |#length| |ULTIMATE.start_gl_seek_max_#t~mem16#1.base|) (_ bv12 32)) (= (_ bv4 32) |ULTIMATE.start_gl_seek_max_#t~mem16#1.offset|))} gl_seek_max_~max_pos~0#1.base, gl_seek_max_~max_pos~0#1.offset := gl_seek_max_#t~mem16#1.base, gl_seek_max_#t~mem16#1.offset;havoc gl_seek_max_#t~mem16#1.base, gl_seek_max_#t~mem16#1.offset; {13533#(and (= (select |#length| |ULTIMATE.start_gl_seek_max_~max_pos~0#1.base|) (_ bv12 32)) (= (_ bv4 32) |ULTIMATE.start_gl_seek_max_~max_pos~0#1.offset|))} is VALID [2022-02-20 23:45:45,578 INFO L272 TraceCheckUtils]: 36: Hoare triple {13533#(and (= (select |#length| |ULTIMATE.start_gl_seek_max_~max_pos~0#1.base|) (_ bv12 32)) (= (_ bv4 32) |ULTIMATE.start_gl_seek_max_~max_pos~0#1.offset|))} call gl_seek_max_#t~ret17#1 := val_from_node(gl_seek_max_~max_pos~0#1.base, gl_seek_max_~max_pos~0#1.offset); {13537#(and (= (select |#length| |val_from_node_#in~head.base|) (_ bv12 32)) (= (_ bv4 32) |val_from_node_#in~head.offset|))} is VALID [2022-02-20 23:45:45,579 INFO L290 TraceCheckUtils]: 37: Hoare triple {13537#(and (= (select |#length| |val_from_node_#in~head.base|) (_ bv12 32)) (= (_ bv4 32) |val_from_node_#in~head.offset|))} ~head.base, ~head.offset := #in~head.base, #in~head.offset;~entry~0.base, ~entry~0.offset := ~head.base, ~bvsub32(~head.offset, 4bv32); {13541#(and (= (select |#length| val_from_node_~entry~0.base) (_ bv12 32)) (= (_ bv4 32) (bvadd (_ bv4 32) val_from_node_~entry~0.offset)))} is VALID [2022-02-20 23:45:45,579 INFO L290 TraceCheckUtils]: 38: Hoare triple {13541#(and (= (select |#length| val_from_node_~entry~0.base) (_ bv12 32)) (= (_ bv4 32) (bvadd (_ bv4 32) val_from_node_~entry~0.offset)))} assume !((~bvule32(~bvadd32(4bv32, ~entry~0.offset), #length[~entry~0.base]) && ~bvule32(~entry~0.offset, ~bvadd32(4bv32, ~entry~0.offset))) && ~bvule32(0bv32, ~entry~0.offset)); {13416#false} is VALID [2022-02-20 23:45:45,583 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 0 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:45:45,583 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:45:47,506 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:45:47,513 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [703699645] [2022-02-20 23:45:47,518 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [703699645] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:45:47,518 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleCvc4 [88659539] [2022-02-20 23:45:47,518 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:47,518 INFO L173 SolverBuilder]: Constructing external solver with command: cvc4 --incremental --print-success --lang smt [2022-02-20 23:45:47,519 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 [2022-02-20 23:45:47,520 INFO L229 MonitoredProcess]: Starting monitored process 23 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:47,521 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (23)] Waiting until timeout for monitored process [2022-02-20 23:45:47,840 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:47,855 INFO L263 TraceCheckSpWp]: Trace formula consists of 207 conjuncts, 45 conjunts are in the unsatisfiable core [2022-02-20 23:45:47,876 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:47,877 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:47,886 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 9 treesize of output 3 [2022-02-20 23:45:47,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:48,380 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:45:48,391 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:45:48,785 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:45:48,786 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 18 [2022-02-20 23:45:49,262 INFO L356 Elim1Store]: treesize reduction 3, result has 75.0 percent of original size [2022-02-20 23:45:49,262 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 31 treesize of output 24 [2022-02-20 23:45:49,286 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2022-02-20 23:45:49,587 INFO L290 TraceCheckUtils]: 0: Hoare triple {13415#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(12bv32, 2bv32);~#gl_list~0.base, ~#gl_list~0.offset := 3bv32, 0bv32;call #Ultimate.allocInit(8bv32, 3bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~#gl_list~0.offset, 4bv32);call write~init~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, ~#gl_list~0.base, ~bvadd32(4bv32, ~#gl_list~0.offset), 4bv32); {13596#(and (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:49,588 INFO L290 TraceCheckUtils]: 1: Hoare triple {13596#(and (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;assume { :begin_inline_gl_read } true;havoc gl_read_#t~nondet11#1, gl_read_#t~nondet10#1; {13596#(and (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:49,589 INFO L290 TraceCheckUtils]: 2: Hoare triple {13596#(and (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet11#1;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset, gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12bv32);gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset := gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset;havoc gl_insert_#t~malloc9#1.base, gl_insert_#t~malloc9#1.offset; {13603#(and (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (bvult |ULTIMATE.start_gl_insert_~node~0#1.base| |#StackHeapBarrier|))} is VALID [2022-02-20 23:45:49,589 INFO L290 TraceCheckUtils]: 3: Hoare triple {13603#(and (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (bvult |ULTIMATE.start_gl_insert_~node~0#1.base| |#StackHeapBarrier|))} assume !(gl_insert_~node~0#1.base == 0bv32 && gl_insert_~node~0#1.offset == 0bv32); {13603#(and (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (bvult |ULTIMATE.start_gl_insert_~node~0#1.base| |#StackHeapBarrier|))} is VALID [2022-02-20 23:45:49,590 INFO L290 TraceCheckUtils]: 4: Hoare triple {13603#(and (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (bvult |ULTIMATE.start_gl_insert_~node~0#1.base| |#StackHeapBarrier|))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~0#1.base, gl_insert_~node~0#1.offset, 4bv32); srcloc: L568-2 {13603#(and (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (bvult |ULTIMATE.start_gl_insert_~node~0#1.base| |#StackHeapBarrier|))} is VALID [2022-02-20 23:45:49,592 INFO L272 TraceCheckUtils]: 5: Hoare triple {13603#(and (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (bvult |ULTIMATE.start_gl_insert_~node~0#1.base| |#StackHeapBarrier|))} call list_add(gl_insert_~node~0#1.base, ~bvadd32(4bv32, gl_insert_~node~0#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {13613#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| (_ BitVec 32))) (and (= (_ bv12 32) (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13|)) (bvult |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| |#StackHeapBarrier|))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:49,592 INFO L290 TraceCheckUtils]: 6: Hoare triple {13613#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| (_ BitVec 32))) (and (= (_ bv12 32) (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13|)) (bvult |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| |#StackHeapBarrier|))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} ~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; {13617#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| (_ BitVec 32))) (and (= (_ bv12 32) (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13|)) (bvult |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| |#StackHeapBarrier|))) (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_~new#1.offset| |list_add_#in~new#1.offset|) (= |list_add_#in~head#1.base| |list_add_~head#1.base|) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add_#in~new#1.base| |list_add_~new#1.base|))} is VALID [2022-02-20 23:45:49,593 INFO L290 TraceCheckUtils]: 7: Hoare triple {13617#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| (_ BitVec 32))) (and (= (_ bv12 32) (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13|)) (bvult |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| |#StackHeapBarrier|))) (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_~new#1.offset| |list_add_#in~new#1.offset|) (= |list_add_#in~head#1.base| |list_add_~head#1.base|) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add_#in~new#1.base| |list_add_~new#1.base|))} SUMMARY for call #t~mem4#1.base, #t~mem4#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L547 {13617#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| (_ BitVec 32))) (and (= (_ bv12 32) (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13|)) (bvult |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| |#StackHeapBarrier|))) (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_~new#1.offset| |list_add_#in~new#1.offset|) (= |list_add_#in~head#1.base| |list_add_~head#1.base|) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add_#in~new#1.base| |list_add_~new#1.base|))} is VALID [2022-02-20 23:45:49,593 INFO L290 TraceCheckUtils]: 8: Hoare triple {13617#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| (_ BitVec 32))) (and (= (_ bv12 32) (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13|)) (bvult |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| |#StackHeapBarrier|))) (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_~new#1.offset| |list_add_#in~new#1.offset|) (= |list_add_#in~head#1.base| |list_add_~head#1.base|) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add_#in~new#1.base| |list_add_~new#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, ~head#1.base, ~head#1.offset, #t~mem4#1.base, #t~mem4#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; {13624#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| (_ BitVec 32))) (and (= (_ bv12 32) (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13|)) (bvult |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| |#StackHeapBarrier|))) (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|))} is VALID [2022-02-20 23:45:49,594 INFO L290 TraceCheckUtils]: 9: Hoare triple {13624#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| (_ BitVec 32))) (and (= (_ bv12 32) (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13|)) (bvult |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| |#StackHeapBarrier|))) (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#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: L535 {13624#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| (_ BitVec 32))) (and (= (_ bv12 32) (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13|)) (bvult |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| |#StackHeapBarrier|))) (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|))} is VALID [2022-02-20 23:45:49,595 INFO L290 TraceCheckUtils]: 10: Hoare triple {13624#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| (_ BitVec 32))) (and (= (_ bv12 32) (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13|)) (bvult |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| |#StackHeapBarrier|))) (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#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: L535-1 {13624#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| (_ BitVec 32))) (and (= (_ bv12 32) (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13|)) (bvult |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| |#StackHeapBarrier|))) (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|))} is VALID [2022-02-20 23:45:49,596 INFO L290 TraceCheckUtils]: 11: Hoare triple {13624#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| (_ BitVec 32))) (and (= (_ bv12 32) (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13|)) (bvult |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| |#StackHeapBarrier|))) (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#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: L536 {13624#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| (_ BitVec 32))) (and (= (_ bv12 32) (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13|)) (bvult |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| |#StackHeapBarrier|))) (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#1.base|))} is VALID [2022-02-20 23:45:49,598 INFO L290 TraceCheckUtils]: 12: Hoare triple {13624#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| (_ BitVec 32))) (and (= (_ bv12 32) (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13|)) (bvult |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| |#StackHeapBarrier|))) (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= |list_add_#in~new#1.offset| |list_add___list_add_~new#1.offset|) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add___list_add_~new#1.base| |list_add_#in~new#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: L537 {13637#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| (_ BitVec 32))) (and (= (_ bv12 32) (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13|)) (bvult |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| |#StackHeapBarrier|))) (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} is VALID [2022-02-20 23:45:49,598 INFO L290 TraceCheckUtils]: 13: Hoare triple {13637#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| (_ BitVec 32))) (and (= (_ bv12 32) (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13|)) (bvult |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| |#StackHeapBarrier|))) (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} assume { :end_inline___list_add } true;havoc #t~mem4#1.base, #t~mem4#1.offset; {13637#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| (_ BitVec 32))) (and (= (_ bv12 32) (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13|)) (bvult |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| |#StackHeapBarrier|))) (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} is VALID [2022-02-20 23:45:49,599 INFO L290 TraceCheckUtils]: 14: Hoare triple {13637#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| (_ BitVec 32))) (and (= (_ bv12 32) (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13|)) (bvult |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| |#StackHeapBarrier|))) (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} assume true; {13637#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| (_ BitVec 32))) (and (= (_ bv12 32) (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13|)) (bvult |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| |#StackHeapBarrier|))) (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} is VALID [2022-02-20 23:45:49,600 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {13637#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| (_ BitVec 32))) (and (= (_ bv12 32) (select |#length| |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13|)) (bvult |v_ULTIMATE.start_gl_insert_~node~0#1.base_BEFORE_CALL_13| |#StackHeapBarrier|))) (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} {13603#(and (= |ULTIMATE.start_gl_insert_~node~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_gl_insert_~node~0#1.base|) (_ bv12 32)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (bvult |ULTIMATE.start_gl_insert_~node~0#1.base| |#StackHeapBarrier|))} #196#return; {13647#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:49,600 INFO L290 TraceCheckUtils]: 16: Hoare triple {13647#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} assume { :end_inline_gl_insert } true;havoc gl_read_#t~nondet11#1; {13647#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:49,601 INFO L290 TraceCheckUtils]: 17: Hoare triple {13647#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} assume !(0bv32 != gl_read_#t~nondet10#1);havoc gl_read_#t~nondet10#1; {13647#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:49,601 INFO L290 TraceCheckUtils]: 18: Hoare triple {13647#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} assume { :end_inline_gl_read } true;assume { :begin_inline_gl_sort } true;havoc gl_sort_#t~ret21#1, gl_sort_#t~ret22#1.base, gl_sort_#t~ret22#1.offset, gl_sort_~#dst~0#1.base, gl_sort_~#dst~0#1.offset, gl_sort_~max_pos~1#1.base, gl_sort_~max_pos~1#1.offset; {13647#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:49,602 INFO L272 TraceCheckUtils]: 19: Hoare triple {13647#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} call gl_sort_#t~ret21#1 := list_empty(~#gl_list~0.base, ~#gl_list~0.offset); {13647#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:49,602 INFO L290 TraceCheckUtils]: 20: Hoare triple {13647#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {13647#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:49,603 INFO L290 TraceCheckUtils]: 21: Hoare triple {13647#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} SUMMARY for call #t~mem3.base, #t~mem3.offset := read~$Pointer$(~head.base, ~head.offset, 4bv32); srcloc: L529 {13647#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:49,603 INFO L290 TraceCheckUtils]: 22: Hoare triple {13647#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} #res := (if #t~mem3.base == ~head.base && #t~mem3.offset == ~head.offset then 1bv32 else 0bv32);havoc #t~mem3.base, #t~mem3.offset; {13647#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:49,604 INFO L290 TraceCheckUtils]: 23: Hoare triple {13647#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} assume true; {13647#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:49,604 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {13647#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} {13647#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} #198#return; {13647#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:51,606 WARN L290 TraceCheckUtils]: 25: Hoare triple {13647#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} assume !(0bv32 != gl_sort_#t~ret21#1);havoc gl_sort_#t~ret21#1;call gl_sort_~#dst~0#1.base, gl_sort_~#dst~0#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(gl_sort_~#dst~0#1.base, gl_sort_~#dst~0#1.offset, gl_sort_~#dst~0#1.base, gl_sort_~#dst~0#1.offset, 4bv32);call write~init~$Pointer$(gl_sort_~#dst~0#1.base, gl_sort_~#dst~0#1.offset, gl_sort_~#dst~0#1.base, ~bvadd32(4bv32, gl_sort_~#dst~0#1.offset), 4bv32);havoc gl_sort_~max_pos~1#1.base, gl_sort_~max_pos~1#1.offset; {13678#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.offset| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.base| (_ BitVec 32))) (and (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_gl_sort_~#dst~0#1.base|) |ULTIMATE.start_gl_sort_~#dst~0#1.offset|) |ULTIMATE.start_gl_sort_~#dst~0#1.base|) (bvult |#StackHeapBarrier| |ULTIMATE.start_gl_sort_~#dst~0#1.base|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is UNKNOWN [2022-02-20 23:45:51,684 INFO L290 TraceCheckUtils]: 26: Hoare triple {13678#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.offset| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.base| (_ BitVec 32))) (and (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_gl_sort_~#dst~0#1.base|) |ULTIMATE.start_gl_sort_~#dst~0#1.offset|) |ULTIMATE.start_gl_sort_~#dst~0#1.base|) (bvult |#StackHeapBarrier| |ULTIMATE.start_gl_sort_~#dst~0#1.base|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} assume { :begin_inline_gl_seek_max } true;havoc gl_seek_max_#res#1.base, gl_seek_max_#res#1.offset;havoc gl_seek_max_#t~ret15#1, gl_seek_max_#t~mem16#1.base, gl_seek_max_#t~mem16#1.offset, gl_seek_max_#t~ret17#1, gl_seek_max_#t~mem18#1.base, gl_seek_max_#t~mem18#1.offset, gl_seek_max_#t~ret20#1, gl_seek_max_#t~mem19#1.base, gl_seek_max_#t~mem19#1.offset, gl_seek_max_~value~0#1, gl_seek_max_~pos~0#1.base, gl_seek_max_~pos~0#1.offset, gl_seek_max_~max_pos~0#1.base, gl_seek_max_~max_pos~0#1.offset, gl_seek_max_~max~0#1; {13678#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.offset| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.base| (_ BitVec 32))) (and (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_gl_sort_~#dst~0#1.base|) |ULTIMATE.start_gl_sort_~#dst~0#1.offset|) |ULTIMATE.start_gl_sort_~#dst~0#1.base|) (bvult |#StackHeapBarrier| |ULTIMATE.start_gl_sort_~#dst~0#1.base|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:51,685 INFO L272 TraceCheckUtils]: 27: Hoare triple {13678#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.offset| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.base| (_ BitVec 32))) (and (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_gl_sort_~#dst~0#1.base|) |ULTIMATE.start_gl_sort_~#dst~0#1.offset|) |ULTIMATE.start_gl_sort_~#dst~0#1.base|) (bvult |#StackHeapBarrier| |ULTIMATE.start_gl_sort_~#dst~0#1.base|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} call gl_seek_max_#t~ret15#1 := list_empty(~#gl_list~0.base, ~#gl_list~0.offset); {13678#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.offset| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.base| (_ BitVec 32))) (and (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_gl_sort_~#dst~0#1.base|) |ULTIMATE.start_gl_sort_~#dst~0#1.offset|) |ULTIMATE.start_gl_sort_~#dst~0#1.base|) (bvult |#StackHeapBarrier| |ULTIMATE.start_gl_sort_~#dst~0#1.base|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:51,699 INFO L290 TraceCheckUtils]: 28: Hoare triple {13678#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.offset| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.base| (_ BitVec 32))) (and (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_gl_sort_~#dst~0#1.base|) |ULTIMATE.start_gl_sort_~#dst~0#1.offset|) |ULTIMATE.start_gl_sort_~#dst~0#1.base|) (bvult |#StackHeapBarrier| |ULTIMATE.start_gl_sort_~#dst~0#1.base|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {13678#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.offset| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.base| (_ BitVec 32))) (and (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_gl_sort_~#dst~0#1.base|) |ULTIMATE.start_gl_sort_~#dst~0#1.offset|) |ULTIMATE.start_gl_sort_~#dst~0#1.base|) (bvult |#StackHeapBarrier| |ULTIMATE.start_gl_sort_~#dst~0#1.base|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:51,726 INFO L290 TraceCheckUtils]: 29: Hoare triple {13678#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.offset| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.base| (_ BitVec 32))) (and (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_gl_sort_~#dst~0#1.base|) |ULTIMATE.start_gl_sort_~#dst~0#1.offset|) |ULTIMATE.start_gl_sort_~#dst~0#1.base|) (bvult |#StackHeapBarrier| |ULTIMATE.start_gl_sort_~#dst~0#1.base|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} SUMMARY for call #t~mem3.base, #t~mem3.offset := read~$Pointer$(~head.base, ~head.offset, 4bv32); srcloc: L529 {13678#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.offset| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.base| (_ BitVec 32))) (and (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_gl_sort_~#dst~0#1.base|) |ULTIMATE.start_gl_sort_~#dst~0#1.offset|) |ULTIMATE.start_gl_sort_~#dst~0#1.base|) (bvult |#StackHeapBarrier| |ULTIMATE.start_gl_sort_~#dst~0#1.base|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:51,962 INFO L290 TraceCheckUtils]: 30: Hoare triple {13678#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.offset| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.base| (_ BitVec 32))) (and (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_gl_sort_~#dst~0#1.base|) |ULTIMATE.start_gl_sort_~#dst~0#1.offset|) |ULTIMATE.start_gl_sort_~#dst~0#1.base|) (bvult |#StackHeapBarrier| |ULTIMATE.start_gl_sort_~#dst~0#1.base|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} #res := (if #t~mem3.base == ~head.base && #t~mem3.offset == ~head.offset then 1bv32 else 0bv32);havoc #t~mem3.base, #t~mem3.offset; {13678#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.offset| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.base| (_ BitVec 32))) (and (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_gl_sort_~#dst~0#1.base|) |ULTIMATE.start_gl_sort_~#dst~0#1.offset|) |ULTIMATE.start_gl_sort_~#dst~0#1.base|) (bvult |#StackHeapBarrier| |ULTIMATE.start_gl_sort_~#dst~0#1.base|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:52,025 INFO L290 TraceCheckUtils]: 31: Hoare triple {13678#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.offset| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.base| (_ BitVec 32))) (and (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_gl_sort_~#dst~0#1.base|) |ULTIMATE.start_gl_sort_~#dst~0#1.offset|) |ULTIMATE.start_gl_sort_~#dst~0#1.base|) (bvult |#StackHeapBarrier| |ULTIMATE.start_gl_sort_~#dst~0#1.base|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} assume true; {13678#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.offset| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.base| (_ BitVec 32))) (and (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_gl_sort_~#dst~0#1.base|) |ULTIMATE.start_gl_sort_~#dst~0#1.offset|) |ULTIMATE.start_gl_sort_~#dst~0#1.base|) (bvult |#StackHeapBarrier| |ULTIMATE.start_gl_sort_~#dst~0#1.base|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:52,026 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {13678#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.offset| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.base| (_ BitVec 32))) (and (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_gl_sort_~#dst~0#1.base|) |ULTIMATE.start_gl_sort_~#dst~0#1.offset|) |ULTIMATE.start_gl_sort_~#dst~0#1.base|) (bvult |#StackHeapBarrier| |ULTIMATE.start_gl_sort_~#dst~0#1.base|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} {13678#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.offset| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.base| (_ BitVec 32))) (and (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_gl_sort_~#dst~0#1.base|) |ULTIMATE.start_gl_sort_~#dst~0#1.offset|) |ULTIMATE.start_gl_sort_~#dst~0#1.base|) (bvult |#StackHeapBarrier| |ULTIMATE.start_gl_sort_~#dst~0#1.base|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} #200#return; {13678#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.offset| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.base| (_ BitVec 32))) (and (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_gl_sort_~#dst~0#1.base|) |ULTIMATE.start_gl_sort_~#dst~0#1.offset|) |ULTIMATE.start_gl_sort_~#dst~0#1.base|) (bvult |#StackHeapBarrier| |ULTIMATE.start_gl_sort_~#dst~0#1.base|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:52,046 INFO L290 TraceCheckUtils]: 33: Hoare triple {13678#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.offset| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.base| (_ BitVec 32))) (and (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_gl_sort_~#dst~0#1.base|) |ULTIMATE.start_gl_sort_~#dst~0#1.offset|) |ULTIMATE.start_gl_sort_~#dst~0#1.base|) (bvult |#StackHeapBarrier| |ULTIMATE.start_gl_sort_~#dst~0#1.base|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} assume !(0bv32 != gl_seek_max_#t~ret15#1);havoc gl_seek_max_#t~ret15#1;havoc gl_seek_max_~pos~0#1.base, gl_seek_max_~pos~0#1.offset; {13678#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.offset| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.base| (_ BitVec 32))) (and (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_gl_sort_~#dst~0#1.base|) |ULTIMATE.start_gl_sort_~#dst~0#1.offset|) |ULTIMATE.start_gl_sort_~#dst~0#1.base|) (bvult |#StackHeapBarrier| |ULTIMATE.start_gl_sort_~#dst~0#1.base|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:45:52,050 INFO L290 TraceCheckUtils]: 34: Hoare triple {13678#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= |~#gl_list~0.offset| (_ bv0 32)) (exists ((|#StackHeapBarrier| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.offset| (_ BitVec 32)) (|ULTIMATE.start_gl_sort_~#dst~0#1.base| (_ BitVec 32))) (and (bvult (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |#StackHeapBarrier|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_gl_sort_~#dst~0#1.base|) |ULTIMATE.start_gl_sort_~#dst~0#1.offset|) |ULTIMATE.start_gl_sort_~#dst~0#1.base|) (bvult |#StackHeapBarrier| |ULTIMATE.start_gl_sort_~#dst~0#1.base|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv12 32)) (= (_ bv3 32) |~#gl_list~0.base|))} SUMMARY for call gl_seek_max_#t~mem16#1.base, gl_seek_max_#t~mem16#1.offset := read~$Pointer$(~#gl_list~0.base, ~#gl_list~0.offset, 4bv32); srcloc: L596 {13706#(and (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |ULTIMATE.start_gl_seek_max_#t~mem16#1.base| |#StackHeapBarrier|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))) (= (select |#length| |ULTIMATE.start_gl_seek_max_#t~mem16#1.base|) (_ bv12 32)) (= (_ bv4 32) |ULTIMATE.start_gl_seek_max_#t~mem16#1.offset|))} is VALID [2022-02-20 23:45:52,051 INFO L290 TraceCheckUtils]: 35: Hoare triple {13706#(and (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |ULTIMATE.start_gl_seek_max_#t~mem16#1.base| |#StackHeapBarrier|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))) (= (select |#length| |ULTIMATE.start_gl_seek_max_#t~mem16#1.base|) (_ bv12 32)) (= (_ bv4 32) |ULTIMATE.start_gl_seek_max_#t~mem16#1.offset|))} gl_seek_max_~max_pos~0#1.base, gl_seek_max_~max_pos~0#1.offset := gl_seek_max_#t~mem16#1.base, gl_seek_max_#t~mem16#1.offset;havoc gl_seek_max_#t~mem16#1.base, gl_seek_max_#t~mem16#1.offset; {13710#(and (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |ULTIMATE.start_gl_seek_max_~max_pos~0#1.base| |#StackHeapBarrier|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))) (= (select |#length| |ULTIMATE.start_gl_seek_max_~max_pos~0#1.base|) (_ bv12 32)) (= (_ bv4 32) |ULTIMATE.start_gl_seek_max_~max_pos~0#1.offset|))} is VALID [2022-02-20 23:45:52,052 INFO L272 TraceCheckUtils]: 36: Hoare triple {13710#(and (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |ULTIMATE.start_gl_seek_max_~max_pos~0#1.base| |#StackHeapBarrier|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))) (= (select |#length| |ULTIMATE.start_gl_seek_max_~max_pos~0#1.base|) (_ bv12 32)) (= (_ bv4 32) |ULTIMATE.start_gl_seek_max_~max_pos~0#1.offset|))} call gl_seek_max_#t~ret17#1 := val_from_node(gl_seek_max_~max_pos~0#1.base, gl_seek_max_~max_pos~0#1.offset); {13714#(and (= (select |#length| |val_from_node_#in~head.base|) (_ bv12 32)) (= (_ bv4 32) |val_from_node_#in~head.offset|) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |val_from_node_#in~head.base| |#StackHeapBarrier|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))))} is VALID [2022-02-20 23:45:52,052 INFO L290 TraceCheckUtils]: 37: Hoare triple {13714#(and (= (select |#length| |val_from_node_#in~head.base|) (_ bv12 32)) (= (_ bv4 32) |val_from_node_#in~head.offset|) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult |val_from_node_#in~head.base| |#StackHeapBarrier|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))))} ~head.base, ~head.offset := #in~head.base, #in~head.offset;~entry~0.base, ~entry~0.offset := ~head.base, ~bvsub32(~head.offset, 4bv32); {13718#(and (= (select |#length| val_from_node_~entry~0.base) (_ bv12 32)) (= (_ bv4 32) (bvadd (_ bv4 32) val_from_node_~entry~0.offset)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult val_from_node_~entry~0.base |#StackHeapBarrier|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))))} is VALID [2022-02-20 23:45:52,053 INFO L290 TraceCheckUtils]: 38: Hoare triple {13718#(and (= (select |#length| val_from_node_~entry~0.base) (_ bv12 32)) (= (_ bv4 32) (bvadd (_ bv4 32) val_from_node_~entry~0.offset)) (exists ((|#StackHeapBarrier| (_ BitVec 32))) (and (bvult val_from_node_~entry~0.base |#StackHeapBarrier|) (not (= |#StackHeapBarrier| (_ bv4294967295 32))))))} assume !((~bvule32(~bvadd32(4bv32, ~entry~0.offset), #length[~entry~0.base]) && ~bvule32(~entry~0.offset, ~bvadd32(4bv32, ~entry~0.offset))) && ~bvule32(0bv32, ~entry~0.offset)); {13416#false} is VALID [2022-02-20 23:45:52,053 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 0 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:45:52,053 INFO L328 TraceCheckSpWp]: Computing backward predicates...