./Ultimate.py --spec ../sv-benchmarks/c/properties/valid-memcleanup.prp --file ../sv-benchmarks/c/heap-manipulation/bubble_sort_linux-2.i --full-output -ea --architecture 32bit -------------------------------------------------------------------------------- Checking for memory safety (memcleanup) 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/heap-manipulation/bubble_sort_linux-2.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-MemCleanup-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-memcleanup) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 3b13662719be51a1d3330a7f40f7706daa8c7b2d4044bc92f854095c09c7c129 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:36:30,429 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:36:30,431 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:36:30,460 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:36:30,461 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:36:30,464 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:36:30,466 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:36:30,471 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:36:30,472 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:36:30,473 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:36:30,474 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:36:30,475 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:36:30,475 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:36:30,480 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:36:30,481 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:36:30,483 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:36:30,484 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:36:30,486 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:36:30,487 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:36:30,491 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:36:30,494 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:36:30,495 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:36:30,496 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:36:30,497 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:36:30,499 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:36:30,500 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:36:30,500 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:36:30,502 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:36:30,502 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:36:30,503 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:36:30,503 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:36:30,504 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:36:30,505 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:36:30,506 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:36:30,506 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:36:30,507 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:36:30,507 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:36:30,507 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:36:30,508 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:36:30,508 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:36:30,509 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:36:30,509 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-MemCleanup-32bit-Automizer_Default.epf [2022-02-20 23:36:30,535 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:36:30,535 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:36:30,536 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:36:30,536 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:36:30,537 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:36:30,537 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:36:30,537 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:36:30,538 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:36:30,538 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:36:30,538 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:36:30,539 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:36:30,539 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:36:30,539 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:36:30,539 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:36:30,539 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:36:30,539 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:36:30,540 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:36:30,540 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:36:30,540 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:36:30,540 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:36:30,540 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:36:30,540 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:36:30,541 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:36:30,541 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:36:30,541 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:36:30,541 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:36:30,541 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:36:30,541 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 23:36:30,542 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 23:36:30,542 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-memcleanup) ) 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 -> 3b13662719be51a1d3330a7f40f7706daa8c7b2d4044bc92f854095c09c7c129 [2022-02-20 23:36:30,737 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:36:30,756 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:36:30,758 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:36:30,759 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:36:30,760 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:36:30,761 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/heap-manipulation/bubble_sort_linux-2.i [2022-02-20 23:36:30,832 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/3d6830c58/81ef61ae64294cc5812e65b24af58f54/FLAGa9042ee46 [2022-02-20 23:36:31,287 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:36:31,288 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/heap-manipulation/bubble_sort_linux-2.i [2022-02-20 23:36:31,305 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/3d6830c58/81ef61ae64294cc5812e65b24af58f54/FLAGa9042ee46 [2022-02-20 23:36:31,615 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/3d6830c58/81ef61ae64294cc5812e65b24af58f54 [2022-02-20 23:36:31,617 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:36:31,617 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:36:31,619 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:36:31,619 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:36:31,622 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:36:31,623 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:36:31" (1/1) ... [2022-02-20 23:36:31,625 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@19bbd627 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:36:31, skipping insertion in model container [2022-02-20 23:36:31,625 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:36:31" (1/1) ... [2022-02-20 23:36:31,630 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:36:31,653 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:36:31,921 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/heap-manipulation/bubble_sort_linux-2.i[33822,33835] [2022-02-20 23:36:31,945 WARN L570 CHandler]: More than one settings change for restart is not yet implemented; using only the first one to be reported [2022-02-20 23:36:31,946 WARN L570 CHandler]: More than one settings change for restart is not yet implemented; using only the first one to be reported [2022-02-20 23:36:31,947 WARN L570 CHandler]: More than one settings change for restart is not yet implemented; using only the first one to be reported [2022-02-20 23:36:31,987 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:36:31,996 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:36:31,997 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@37990062 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:36:31, skipping insertion in model container [2022-02-20 23:36:31,997 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:36:31,997 INFO L184 ToolchainWalker]: Toolchain execution was canceled (user or tool) before executing de.uni_freiburg.informatik.ultimate.boogie.procedureinliner [2022-02-20 23:36:31,999 INFO L158 Benchmark]: Toolchain (without parser) took 380.87ms. Allocated memory is still 119.5MB. Free memory was 87.1MB in the beginning and 88.3MB in the end (delta: -1.3MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2022-02-20 23:36:32,000 INFO L158 Benchmark]: CDTParser took 0.18ms. Allocated memory is still 83.9MB. Free memory was 39.3MB in the beginning and 39.3MB in the end (delta: 84.0kB). There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 23:36:32,001 INFO L158 Benchmark]: CACSL2BoogieTranslator took 378.49ms. Allocated memory is still 119.5MB. Free memory was 87.1MB in the beginning and 88.6MB in the end (delta: -1.5MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2022-02-20 23:36:32,002 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.18ms. Allocated memory is still 83.9MB. Free memory was 39.3MB in the beginning and 39.3MB in the end (delta: 84.0kB). There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 378.49ms. Allocated memory is still 119.5MB. Free memory was 87.1MB in the beginning and 88.6MB in the end (delta: -1.5MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: - UnsupportedSyntaxResult [Line: 860]: 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/heap-manipulation/bubble_sort_linux-2.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-MemCleanup-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-memcleanup) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 3b13662719be51a1d3330a7f40f7706daa8c7b2d4044bc92f854095c09c7c129 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:36:33,366 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:36:33,369 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:36:33,406 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:36:33,407 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:36:33,409 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:36:33,410 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:36:33,414 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:36:33,416 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:36:33,420 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:36:33,421 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:36:33,423 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:36:33,425 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:36:33,427 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:36:33,428 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:36:33,430 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:36:33,431 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:36:33,431 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:36:33,433 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:36:33,437 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:36:33,439 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:36:33,439 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:36:33,440 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:36:33,442 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:36:33,447 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:36:33,447 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:36:33,447 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:36:33,449 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:36:33,449 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:36:33,450 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:36:33,450 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:36:33,450 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:36:33,452 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:36:33,452 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:36:33,453 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:36:33,453 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:36:33,454 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:36:33,454 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:36:33,454 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:36:33,455 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:36:33,456 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:36:33,459 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-MemCleanup-32bit-Automizer_Bitvector.epf [2022-02-20 23:36:33,487 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:36:33,488 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:36:33,489 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:36:33,489 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:36:33,489 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:36:33,490 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:36:33,491 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:36:33,491 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:36:33,491 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:36:33,491 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:36:33,492 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:36:33,492 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:36:33,492 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:36:33,492 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:36:33,492 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:36:33,493 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:36:33,493 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:36:33,493 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:36:33,493 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:36:33,493 INFO L138 SettingsManager]: * Use bitvectors instead of ints=true [2022-02-20 23:36:33,493 INFO L138 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2022-02-20 23:36:33,493 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:36:33,494 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:36:33,494 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:36:33,494 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:36:33,494 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:36:33,494 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:36:33,494 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:36:33,494 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:36:33,495 INFO L138 SettingsManager]: * Trace refinement strategy=WOLF [2022-02-20 23:36:33,495 INFO L138 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2022-02-20 23:36:33,495 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-02-20 23:36:33,495 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-memcleanup) ) 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 -> 3b13662719be51a1d3330a7f40f7706daa8c7b2d4044bc92f854095c09c7c129 [2022-02-20 23:36:33,764 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:36:33,784 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:36:33,785 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:36:33,786 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:36:33,787 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:36:33,789 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/heap-manipulation/bubble_sort_linux-2.i [2022-02-20 23:36:33,833 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/0f0a06fea/00b4edfb71404644ab2e584833a3b6fa/FLAG0d1e6344f [2022-02-20 23:36:34,182 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:36:34,183 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/heap-manipulation/bubble_sort_linux-2.i [2022-02-20 23:36:34,192 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/0f0a06fea/00b4edfb71404644ab2e584833a3b6fa/FLAG0d1e6344f [2022-02-20 23:36:34,562 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/0f0a06fea/00b4edfb71404644ab2e584833a3b6fa [2022-02-20 23:36:34,564 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:36:34,566 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:36:34,568 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:36:34,568 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:36:34,572 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:36:34,573 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:36:34" (1/1) ... [2022-02-20 23:36:34,574 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@28666efb and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:36:34, skipping insertion in model container [2022-02-20 23:36:34,574 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:36:34" (1/1) ... [2022-02-20 23:36:34,579 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:36:34,624 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:36:34,891 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/heap-manipulation/bubble_sort_linux-2.i[33822,33835] [2022-02-20 23:36:34,935 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:36:34,951 INFO L200 MainTranslator]: Restarting translation with changed settings: SettingsChange [mNewPreferredMemoryModel=HoenickeLindenmann_1ByteResolution] [2022-02-20 23:36:34,956 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:36:34,986 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/heap-manipulation/bubble_sort_linux-2.i[33822,33835] [2022-02-20 23:36:35,009 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:36:35,017 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 23:36:35,049 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/heap-manipulation/bubble_sort_linux-2.i[33822,33835] [2022-02-20 23:36:35,076 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:36:35,127 INFO L208 MainTranslator]: Completed translation [2022-02-20 23:36:35,128 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:36:35 WrapperNode [2022-02-20 23:36:35,128 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:36:35,129 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 23:36:35,129 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 23:36:35,130 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 23:36:35,134 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:36:35" (1/1) ... [2022-02-20 23:36:35,154 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:36:35" (1/1) ... [2022-02-20 23:36:35,175 INFO L137 Inliner]: procedures = 235, calls = 75, calls flagged for inlining = 10, calls inlined = 10, statements flattened = 116 [2022-02-20 23:36:35,176 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 23:36:35,176 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 23:36:35,176 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 23:36:35,177 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 23:36:35,182 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:36:35" (1/1) ... [2022-02-20 23:36:35,183 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:36:35" (1/1) ... [2022-02-20 23:36:35,186 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:36:35" (1/1) ... [2022-02-20 23:36:35,187 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:36:35" (1/1) ... [2022-02-20 23:36:35,202 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:36:35" (1/1) ... [2022-02-20 23:36:35,226 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:36:35" (1/1) ... [2022-02-20 23:36:35,228 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:36:35" (1/1) ... [2022-02-20 23:36:35,231 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 23:36:35,232 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 23:36:35,232 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 23:36:35,232 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 23:36:35,233 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:36:35" (1/1) ... [2022-02-20 23:36:35,246 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:36:35,254 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:36:35,263 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:36:35,289 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2022-02-20 23:36:35,290 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2022-02-20 23:36:35,290 INFO L130 BoogieDeclarations]: Found specification of procedure inspect [2022-02-20 23:36:35,290 INFO L138 BoogieDeclarations]: Found implementation of procedure inspect [2022-02-20 23:36:35,290 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 23:36:35,291 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2022-02-20 23:36:35,292 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~$Pointer$ [2022-02-20 23:36:35,292 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1 [2022-02-20 23:36:35,292 INFO L130 BoogieDeclarations]: Found specification of procedure val_from_node [2022-02-20 23:36:35,292 INFO L138 BoogieDeclarations]: Found implementation of procedure val_from_node [2022-02-20 23:36:35,292 INFO L130 BoogieDeclarations]: Found specification of procedure fail [2022-02-20 23:36:35,293 INFO L138 BoogieDeclarations]: Found implementation of procedure fail [2022-02-20 23:36:35,293 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2022-02-20 23:36:35,293 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 23:36:35,293 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2022-02-20 23:36:35,293 INFO L130 BoogieDeclarations]: Found specification of procedure list_add [2022-02-20 23:36:35,293 INFO L138 BoogieDeclarations]: Found implementation of procedure list_add [2022-02-20 23:36:35,293 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 23:36:35,294 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 23:36:35,295 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:36:35,434 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 23:36:35,435 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 23:36:36,074 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 23:36:36,080 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 23:36:36,081 INFO L299 CfgBuilder]: Removed 41 assume(true) statements. [2022-02-20 23:36:36,082 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:36:36 BoogieIcfgContainer [2022-02-20 23:36:36,082 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 23:36:36,084 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 23:36:36,084 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 23:36:36,086 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 23:36:36,086 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 11:36:34" (1/3) ... [2022-02-20 23:36:36,086 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@21dc5b62 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:36:36, skipping insertion in model container [2022-02-20 23:36:36,086 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:36:35" (2/3) ... [2022-02-20 23:36:36,087 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@21dc5b62 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:36:36, skipping insertion in model container [2022-02-20 23:36:36,087 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:36:36" (3/3) ... [2022-02-20 23:36:36,088 INFO L111 eAbstractionObserver]: Analyzing ICFG bubble_sort_linux-2.i [2022-02-20 23:36:36,091 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 23:36:36,091 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 71 error locations. [2022-02-20 23:36:36,118 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 23:36:36,123 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:36:36,123 INFO L340 AbstractCegarLoop]: Starting to check reachability of 71 error locations. [2022-02-20 23:36:36,144 INFO L276 IsEmpty]: Start isEmpty. Operand has 216 states, 117 states have (on average 2.1623931623931623) internal successors, (253), 206 states have internal predecessors, (253), 23 states have call successors, (23), 4 states have call predecessors, (23), 4 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-02-20 23:36:36,147 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 6 [2022-02-20 23:36:36,147 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:36:36,148 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1] [2022-02-20 23:36:36,148 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0REQUIRES_VIOLATION === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, failErr0ASSERT_VIOLATIONMEMORY_LEAK, inspectErr0REQUIRES_VIOLATION (and 67 more)] === [2022-02-20 23:36:36,152 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:36:36,152 INFO L85 PathProgramCache]: Analyzing trace with hash 378924727, now seen corresponding path program 1 times [2022-02-20 23:36:36,160 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:36:36,160 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [621358297] [2022-02-20 23:36:36,161 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:36:36,161 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:36:36,161 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:36:36,163 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:36:36,207 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:36:36,289 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:36:36,292 INFO L263 TraceCheckSpWp]: Trace formula consists of 34 conjuncts, 1 conjunts are in the unsatisfiable core [2022-02-20 23:36:36,300 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:36:36,302 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:36:36,338 INFO L290 TraceCheckUtils]: 0: Hoare triple {219#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(22bv32, 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); {219#true} is VALID [2022-02-20 23:36:36,338 INFO L290 TraceCheckUtils]: 1: Hoare triple {219#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~nondet51#1, gl_read_#t~nondet50#1; {219#true} is VALID [2022-02-20 23:36:36,339 INFO L290 TraceCheckUtils]: 2: Hoare triple {219#true} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet51#1;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset, gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset := #Ultimate.allocOnHeap(20bv32);gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset := gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset; {219#true} is VALID [2022-02-20 23:36:36,339 INFO L290 TraceCheckUtils]: 3: Hoare triple {219#true} assume gl_insert_~node~1#1.base == 0bv32 && gl_insert_~node~1#1.offset == 0bv32;assume false; {220#false} is VALID [2022-02-20 23:36:36,339 INFO L290 TraceCheckUtils]: 4: Hoare triple {220#false} assume !(1bv1 == #valid[gl_insert_~node~1#1.base]); {220#false} is VALID [2022-02-20 23:36:36,340 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:36:36,341 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:36:36,341 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:36:36,341 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [621358297] [2022-02-20 23:36:36,342 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [621358297] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:36:36,342 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:36:36,342 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:36:36,343 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2114068894] [2022-02-20 23:36:36,344 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:36:36,347 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:36:36,348 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:36:36,350 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:36:36,356 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:36:36,357 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-02-20 23:36:36,357 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:36:36,382 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-02-20 23:36:36,383 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 23:36:36,388 INFO L87 Difference]: Start difference. First operand has 216 states, 117 states have (on average 2.1623931623931623) internal successors, (253), 206 states have internal predecessors, (253), 23 states have call successors, (23), 4 states have call predecessors, (23), 4 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) 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:36:36,686 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:36,687 INFO L93 Difference]: Finished difference Result 212 states and 234 transitions. [2022-02-20 23:36:36,687 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-02-20 23:36:36,687 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:36:36,687 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:36:36,688 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:36:36,698 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 279 transitions. [2022-02-20 23:36:36,698 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:36:36,704 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 279 transitions. [2022-02-20 23:36:36,704 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 279 transitions. [2022-02-20 23:36:36,958 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 279 edges. 279 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:36:36,969 INFO L225 Difference]: With dead ends: 212 [2022-02-20 23:36:36,969 INFO L226 Difference]: Without dead ends: 210 [2022-02-20 23:36:36,970 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:36:36,973 INFO L933 BasicCegarLoop]: 234 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, 234 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:36:36,973 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 234 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:36:36,985 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 210 states. [2022-02-20 23:36:37,010 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 210 to 210. [2022-02-20 23:36:37,010 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:36:37,011 INFO L82 GeneralOperation]: Start isEquivalent. First operand 210 states. Second operand has 210 states, 115 states have (on average 1.7826086956521738) internal successors, (205), 199 states have internal predecessors, (205), 21 states have call successors, (21), 4 states have call predecessors, (21), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:36:37,012 INFO L74 IsIncluded]: Start isIncluded. First operand 210 states. Second operand has 210 states, 115 states have (on average 1.7826086956521738) internal successors, (205), 199 states have internal predecessors, (205), 21 states have call successors, (21), 4 states have call predecessors, (21), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:36:37,013 INFO L87 Difference]: Start difference. First operand 210 states. Second operand has 210 states, 115 states have (on average 1.7826086956521738) internal successors, (205), 199 states have internal predecessors, (205), 21 states have call successors, (21), 4 states have call predecessors, (21), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:36:37,022 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:37,022 INFO L93 Difference]: Finished difference Result 210 states and 232 transitions. [2022-02-20 23:36:37,022 INFO L276 IsEmpty]: Start isEmpty. Operand 210 states and 232 transitions. [2022-02-20 23:36:37,024 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:36:37,025 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:36:37,025 INFO L74 IsIncluded]: Start isIncluded. First operand has 210 states, 115 states have (on average 1.7826086956521738) internal successors, (205), 199 states have internal predecessors, (205), 21 states have call successors, (21), 4 states have call predecessors, (21), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 210 states. [2022-02-20 23:36:37,026 INFO L87 Difference]: Start difference. First operand has 210 states, 115 states have (on average 1.7826086956521738) internal successors, (205), 199 states have internal predecessors, (205), 21 states have call successors, (21), 4 states have call predecessors, (21), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 210 states. [2022-02-20 23:36:37,035 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:37,035 INFO L93 Difference]: Finished difference Result 210 states and 232 transitions. [2022-02-20 23:36:37,035 INFO L276 IsEmpty]: Start isEmpty. Operand 210 states and 232 transitions. [2022-02-20 23:36:37,037 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:36:37,037 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:36:37,037 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:36:37,037 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:36:37,038 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 210 states, 115 states have (on average 1.7826086956521738) internal successors, (205), 199 states have internal predecessors, (205), 21 states have call successors, (21), 4 states have call predecessors, (21), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:36:37,045 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 210 states to 210 states and 232 transitions. [2022-02-20 23:36:37,046 INFO L78 Accepts]: Start accepts. Automaton has 210 states and 232 transitions. Word has length 5 [2022-02-20 23:36:37,046 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:36:37,046 INFO L470 AbstractCegarLoop]: Abstraction has 210 states and 232 transitions. [2022-02-20 23:36:37,046 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:36:37,047 INFO L276 IsEmpty]: Start isEmpty. Operand 210 states and 232 transitions. [2022-02-20 23:36:37,047 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 6 [2022-02-20 23:36:37,047 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:36:37,047 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1] [2022-02-20 23:36:37,060 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (2)] Forceful destruction successful, exit code 0 [2022-02-20 23:36:37,248 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:36:37,248 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0REQUIRES_VIOLATION === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, failErr0ASSERT_VIOLATIONMEMORY_LEAK, inspectErr0REQUIRES_VIOLATION (and 67 more)] === [2022-02-20 23:36:37,249 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:36:37,249 INFO L85 PathProgramCache]: Analyzing trace with hash 378924789, now seen corresponding path program 1 times [2022-02-20 23:36:37,249 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:36:37,249 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1353137566] [2022-02-20 23:36:37,249 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:36:37,249 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:36:37,249 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:36:37,251 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:36:37,252 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:36:37,294 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:36:37,295 INFO L263 TraceCheckSpWp]: Trace formula consists of 34 conjuncts, 3 conjunts are in the unsatisfiable core [2022-02-20 23:36:37,314 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:36:37,315 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:36:37,376 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:36:37,400 INFO L290 TraceCheckUtils]: 0: Hoare triple {1077#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(22bv32, 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); {1077#true} is VALID [2022-02-20 23:36:37,400 INFO L290 TraceCheckUtils]: 1: Hoare triple {1077#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~nondet51#1, gl_read_#t~nondet50#1; {1077#true} is VALID [2022-02-20 23:36:37,402 INFO L290 TraceCheckUtils]: 2: Hoare triple {1077#true} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet51#1;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset, gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset := #Ultimate.allocOnHeap(20bv32);gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset := gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset; {1088#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|))} is VALID [2022-02-20 23:36:37,402 INFO L290 TraceCheckUtils]: 3: Hoare triple {1088#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|))} assume !(gl_insert_~node~1#1.base == 0bv32 && gl_insert_~node~1#1.offset == 0bv32); {1088#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|))} is VALID [2022-02-20 23:36:37,403 INFO L290 TraceCheckUtils]: 4: Hoare triple {1088#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|))} assume !(1bv1 == #valid[gl_insert_~node~1#1.base]); {1078#false} is VALID [2022-02-20 23:36:37,403 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:36:37,403 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:36:37,403 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:36:37,403 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1353137566] [2022-02-20 23:36:37,403 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1353137566] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:36:37,404 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:36:37,404 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:36:37,404 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1515640219] [2022-02-20 23:36:37,404 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:36:37,405 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:36:37,405 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:36:37,405 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:36:37,411 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:36:37,411 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:36:37,411 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:36:37,412 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:36:37,412 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:36:37,412 INFO L87 Difference]: Start difference. First operand 210 states and 232 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:36:38,008 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:38,008 INFO L93 Difference]: Finished difference Result 229 states and 251 transitions. [2022-02-20 23:36:38,008 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:36:38,009 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:36:38,009 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:36:38,009 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:36:38,017 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 254 transitions. [2022-02-20 23:36:38,017 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:36:38,021 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 254 transitions. [2022-02-20 23:36:38,021 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 254 transitions. [2022-02-20 23:36:38,279 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 254 edges. 254 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:36:38,283 INFO L225 Difference]: With dead ends: 229 [2022-02-20 23:36:38,283 INFO L226 Difference]: Without dead ends: 229 [2022-02-20 23:36:38,283 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:36:38,284 INFO L933 BasicCegarLoop]: 201 mSDtfsCounter, 69 mSDsluCounter, 113 mSDsCounter, 0 mSdLazyCounter, 88 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 75 SdHoareTripleChecker+Valid, 314 SdHoareTripleChecker+Invalid, 90 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 88 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:36:38,285 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [75 Valid, 314 Invalid, 90 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 88 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:36:38,286 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 229 states. [2022-02-20 23:36:38,302 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 229 to 207. [2022-02-20 23:36:38,303 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:36:38,304 INFO L82 GeneralOperation]: Start isEquivalent. First operand 229 states. Second operand has 207 states, 115 states have (on average 1.7565217391304349) internal successors, (202), 196 states have internal predecessors, (202), 21 states have call successors, (21), 4 states have call predecessors, (21), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:36:38,305 INFO L74 IsIncluded]: Start isIncluded. First operand 229 states. Second operand has 207 states, 115 states have (on average 1.7565217391304349) internal successors, (202), 196 states have internal predecessors, (202), 21 states have call successors, (21), 4 states have call predecessors, (21), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:36:38,306 INFO L87 Difference]: Start difference. First operand 229 states. Second operand has 207 states, 115 states have (on average 1.7565217391304349) internal successors, (202), 196 states have internal predecessors, (202), 21 states have call successors, (21), 4 states have call predecessors, (21), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:36:38,314 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:38,315 INFO L93 Difference]: Finished difference Result 229 states and 251 transitions. [2022-02-20 23:36:38,315 INFO L276 IsEmpty]: Start isEmpty. Operand 229 states and 251 transitions. [2022-02-20 23:36:38,319 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:36:38,319 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:36:38,321 INFO L74 IsIncluded]: Start isIncluded. First operand has 207 states, 115 states have (on average 1.7565217391304349) internal successors, (202), 196 states have internal predecessors, (202), 21 states have call successors, (21), 4 states have call predecessors, (21), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 229 states. [2022-02-20 23:36:38,321 INFO L87 Difference]: Start difference. First operand has 207 states, 115 states have (on average 1.7565217391304349) internal successors, (202), 196 states have internal predecessors, (202), 21 states have call successors, (21), 4 states have call predecessors, (21), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 229 states. [2022-02-20 23:36:38,332 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:38,333 INFO L93 Difference]: Finished difference Result 229 states and 251 transitions. [2022-02-20 23:36:38,333 INFO L276 IsEmpty]: Start isEmpty. Operand 229 states and 251 transitions. [2022-02-20 23:36:38,333 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:36:38,334 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:36:38,334 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:36:38,334 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:36:38,335 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 207 states, 115 states have (on average 1.7565217391304349) internal successors, (202), 196 states have internal predecessors, (202), 21 states have call successors, (21), 4 states have call predecessors, (21), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:36:38,341 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 207 states to 207 states and 229 transitions. [2022-02-20 23:36:38,342 INFO L78 Accepts]: Start accepts. Automaton has 207 states and 229 transitions. Word has length 5 [2022-02-20 23:36:38,342 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:36:38,342 INFO L470 AbstractCegarLoop]: Abstraction has 207 states and 229 transitions. [2022-02-20 23:36:38,342 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:36:38,343 INFO L276 IsEmpty]: Start isEmpty. Operand 207 states and 229 transitions. [2022-02-20 23:36:38,343 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 6 [2022-02-20 23:36:38,343 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:36:38,343 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1] [2022-02-20 23:36:38,353 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:36:38,549 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:36:38,552 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, failErr0ASSERT_VIOLATIONMEMORY_LEAK, inspectErr0REQUIRES_VIOLATION (and 67 more)] === [2022-02-20 23:36:38,552 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:36:38,552 INFO L85 PathProgramCache]: Analyzing trace with hash 378924790, now seen corresponding path program 1 times [2022-02-20 23:36:38,552 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:36:38,552 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1092670843] [2022-02-20 23:36:38,553 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:36:38,553 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:36:38,553 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:36:38,554 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:36:38,556 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:36:38,601 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:36:38,602 INFO L263 TraceCheckSpWp]: Trace formula consists of 34 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 23:36:38,606 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:36:38,606 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:36:38,620 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:36:38,635 INFO L290 TraceCheckUtils]: 0: Hoare triple {1988#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(22bv32, 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); {1988#true} is VALID [2022-02-20 23:36:38,636 INFO L290 TraceCheckUtils]: 1: Hoare triple {1988#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~nondet51#1, gl_read_#t~nondet50#1; {1988#true} is VALID [2022-02-20 23:36:38,637 INFO L290 TraceCheckUtils]: 2: Hoare triple {1988#true} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet51#1;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset, gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset := #Ultimate.allocOnHeap(20bv32);gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset := gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset; {1999#(and (= |ULTIMATE.start_gl_insert_~node~1#1.offset| (_ bv0 32)) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:36:38,637 INFO L290 TraceCheckUtils]: 3: Hoare triple {1999#(and (= |ULTIMATE.start_gl_insert_~node~1#1.offset| (_ bv0 32)) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)))} assume !(gl_insert_~node~1#1.base == 0bv32 && gl_insert_~node~1#1.offset == 0bv32); {1999#(and (= |ULTIMATE.start_gl_insert_~node~1#1.offset| (_ bv0 32)) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:36:38,638 INFO L290 TraceCheckUtils]: 4: Hoare triple {1999#(and (= |ULTIMATE.start_gl_insert_~node~1#1.offset| (_ bv0 32)) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)))} assume !((~bvule32(~bvadd32(4bv32, gl_insert_~node~1#1.offset), #length[gl_insert_~node~1#1.base]) && ~bvule32(gl_insert_~node~1#1.offset, ~bvadd32(4bv32, gl_insert_~node~1#1.offset))) && ~bvule32(0bv32, gl_insert_~node~1#1.offset)); {1989#false} is VALID [2022-02-20 23:36:38,638 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:36:38,638 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:36:38,639 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:36:38,639 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1092670843] [2022-02-20 23:36:38,639 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1092670843] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:36:38,639 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:36:38,639 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:36:38,639 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1365021396] [2022-02-20 23:36:38,639 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:36:38,640 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:36:38,640 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:36:38,640 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:36:38,645 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:36:38,646 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:36:38,646 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:36:38,646 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:36:38,646 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:36:38,647 INFO L87 Difference]: Start difference. First operand 207 states and 229 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:36:39,187 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:39,187 INFO L93 Difference]: Finished difference Result 205 states and 227 transitions. [2022-02-20 23:36:39,187 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:36:39,188 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:36:39,188 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:36:39,188 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:36:39,190 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 230 transitions. [2022-02-20 23:36:39,191 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:36:39,193 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 230 transitions. [2022-02-20 23:36:39,193 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 230 transitions. [2022-02-20 23:36:39,387 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 230 edges. 230 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:36:39,389 INFO L225 Difference]: With dead ends: 205 [2022-02-20 23:36:39,389 INFO L226 Difference]: Without dead ends: 205 [2022-02-20 23:36:39,390 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:36:39,390 INFO L933 BasicCegarLoop]: 204 mSDtfsCounter, 67 mSDsluCounter, 102 mSDsCounter, 0 mSdLazyCounter, 72 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 73 SdHoareTripleChecker+Valid, 306 SdHoareTripleChecker+Invalid, 74 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 72 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:36:39,391 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [73 Valid, 306 Invalid, 74 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 72 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:36:39,391 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 205 states. [2022-02-20 23:36:39,394 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 205 to 204. [2022-02-20 23:36:39,394 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:36:39,395 INFO L82 GeneralOperation]: Start isEquivalent. First operand 205 states. Second operand has 204 states, 115 states have (on average 1.7304347826086957) internal successors, (199), 193 states have internal predecessors, (199), 21 states have call successors, (21), 4 states have call predecessors, (21), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:36:39,395 INFO L74 IsIncluded]: Start isIncluded. First operand 205 states. Second operand has 204 states, 115 states have (on average 1.7304347826086957) internal successors, (199), 193 states have internal predecessors, (199), 21 states have call successors, (21), 4 states have call predecessors, (21), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:36:39,395 INFO L87 Difference]: Start difference. First operand 205 states. Second operand has 204 states, 115 states have (on average 1.7304347826086957) internal successors, (199), 193 states have internal predecessors, (199), 21 states have call successors, (21), 4 states have call predecessors, (21), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:36:39,404 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:39,404 INFO L93 Difference]: Finished difference Result 205 states and 227 transitions. [2022-02-20 23:36:39,404 INFO L276 IsEmpty]: Start isEmpty. Operand 205 states and 227 transitions. [2022-02-20 23:36:39,405 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:36:39,405 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:36:39,406 INFO L74 IsIncluded]: Start isIncluded. First operand has 204 states, 115 states have (on average 1.7304347826086957) internal successors, (199), 193 states have internal predecessors, (199), 21 states have call successors, (21), 4 states have call predecessors, (21), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 205 states. [2022-02-20 23:36:39,407 INFO L87 Difference]: Start difference. First operand has 204 states, 115 states have (on average 1.7304347826086957) internal successors, (199), 193 states have internal predecessors, (199), 21 states have call successors, (21), 4 states have call predecessors, (21), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 205 states. [2022-02-20 23:36:39,411 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:39,412 INFO L93 Difference]: Finished difference Result 205 states and 227 transitions. [2022-02-20 23:36:39,412 INFO L276 IsEmpty]: Start isEmpty. Operand 205 states and 227 transitions. [2022-02-20 23:36:39,413 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:36:39,413 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:36:39,413 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:36:39,413 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:36:39,414 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 204 states, 115 states have (on average 1.7304347826086957) internal successors, (199), 193 states have internal predecessors, (199), 21 states have call successors, (21), 4 states have call predecessors, (21), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:36:39,420 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 204 states to 204 states and 226 transitions. [2022-02-20 23:36:39,420 INFO L78 Accepts]: Start accepts. Automaton has 204 states and 226 transitions. Word has length 5 [2022-02-20 23:36:39,420 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:36:39,420 INFO L470 AbstractCegarLoop]: Abstraction has 204 states and 226 transitions. [2022-02-20 23:36:39,420 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:36:39,421 INFO L276 IsEmpty]: Start isEmpty. Operand 204 states and 226 transitions. [2022-02-20 23:36:39,421 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 9 [2022-02-20 23:36:39,421 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:36:39,421 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:36:39,431 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:36:39,629 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:36:39,630 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting list_addErr0REQUIRES_VIOLATION === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, failErr0ASSERT_VIOLATIONMEMORY_LEAK, inspectErr0REQUIRES_VIOLATION (and 67 more)] === [2022-02-20 23:36:39,630 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:36:39,631 INFO L85 PathProgramCache]: Analyzing trace with hash 1374843154, now seen corresponding path program 1 times [2022-02-20 23:36:39,631 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:36:39,631 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [742813769] [2022-02-20 23:36:39,631 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:36:39,631 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:36:39,632 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:36:39,633 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:36:39,634 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:36:39,694 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:36:39,697 INFO L263 TraceCheckSpWp]: Trace formula consists of 70 conjuncts, 7 conjunts are in the unsatisfiable core [2022-02-20 23:36:39,705 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:36:39,705 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:36:39,757 INFO L356 Elim1Store]: treesize reduction 12, result has 40.0 percent of original size [2022-02-20 23:36:39,758 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:36:39,806 INFO L290 TraceCheckUtils]: 0: Hoare triple {2824#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(22bv32, 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); {2829#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:36:39,807 INFO L290 TraceCheckUtils]: 1: Hoare triple {2829#(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~nondet51#1, gl_read_#t~nondet50#1; {2829#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:36:39,808 INFO L290 TraceCheckUtils]: 2: Hoare triple {2829#(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~nondet51#1;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset, gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset := #Ultimate.allocOnHeap(20bv32);gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset := gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset; {2829#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:36:39,808 INFO L290 TraceCheckUtils]: 3: Hoare triple {2829#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|))} assume !(gl_insert_~node~1#1.base == 0bv32 && gl_insert_~node~1#1.offset == 0bv32); {2829#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:36:39,809 INFO L290 TraceCheckUtils]: 4: Hoare triple {2829#(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~1#1.base, gl_insert_~node~1#1.offset, 4bv32); srcloc: L900-2 {2829#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:36:39,810 INFO L272 TraceCheckUtils]: 5: Hoare triple {2829#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|))} call list_add(gl_insert_~node~1#1.base, ~bvadd32(4bv32, gl_insert_~node~1#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {2845#(and (= |list_add_#in~head#1.base| (_ bv3 32)) (= (select |#valid| (_ bv3 32)) (_ bv1 1)))} is VALID [2022-02-20 23:36:39,810 INFO L290 TraceCheckUtils]: 6: Hoare triple {2845#(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; {2849#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= |list_add_~head#1.base| (_ bv3 32)))} is VALID [2022-02-20 23:36:39,811 INFO L290 TraceCheckUtils]: 7: Hoare triple {2849#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= |list_add_~head#1.base| (_ bv3 32)))} assume !(1bv1 == #valid[~head#1.base]); {2825#false} is VALID [2022-02-20 23:36:39,811 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:36:39,811 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:36:39,811 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:36:39,811 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [742813769] [2022-02-20 23:36:39,812 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [742813769] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:36:39,812 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:36:39,812 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:36:39,812 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [667204004] [2022-02-20 23:36:39,812 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:36:39,812 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:36:39,813 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:36:39,813 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:36:39,821 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:36:39,821 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:36:39,821 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:36:39,822 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:36:39,822 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:36:39,822 INFO L87 Difference]: Start difference. First operand 204 states and 226 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:36:41,037 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:41,037 INFO L93 Difference]: Finished difference Result 241 states and 262 transitions. [2022-02-20 23:36:41,037 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:36:41,038 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:36:41,038 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:36:41,038 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:36:41,040 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 266 transitions. [2022-02-20 23:36:41,040 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:36:41,042 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 266 transitions. [2022-02-20 23:36:41,043 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 266 transitions. [2022-02-20 23:36:41,275 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:36:41,278 INFO L225 Difference]: With dead ends: 241 [2022-02-20 23:36:41,278 INFO L226 Difference]: Without dead ends: 241 [2022-02-20 23:36:41,279 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:36:41,279 INFO L933 BasicCegarLoop]: 149 mSDtfsCounter, 269 mSDsluCounter, 250 mSDsCounter, 0 mSdLazyCounter, 296 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 270 SdHoareTripleChecker+Valid, 399 SdHoareTripleChecker+Invalid, 299 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 296 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:36:41,280 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [270 Valid, 399 Invalid, 299 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 296 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-02-20 23:36:41,280 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 241 states. [2022-02-20 23:36:41,283 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 241 to 218. [2022-02-20 23:36:41,283 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:36:41,284 INFO L82 GeneralOperation]: Start isEquivalent. First operand 241 states. Second operand has 218 states, 129 states have (on average 1.751937984496124) internal successors, (226), 206 states have internal predecessors, (226), 21 states have call successors, (21), 5 states have call predecessors, (21), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:36:41,284 INFO L74 IsIncluded]: Start isIncluded. First operand 241 states. Second operand has 218 states, 129 states have (on average 1.751937984496124) internal successors, (226), 206 states have internal predecessors, (226), 21 states have call successors, (21), 5 states have call predecessors, (21), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:36:41,285 INFO L87 Difference]: Start difference. First operand 241 states. Second operand has 218 states, 129 states have (on average 1.751937984496124) internal successors, (226), 206 states have internal predecessors, (226), 21 states have call successors, (21), 5 states have call predecessors, (21), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:36:41,289 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:41,290 INFO L93 Difference]: Finished difference Result 241 states and 262 transitions. [2022-02-20 23:36:41,290 INFO L276 IsEmpty]: Start isEmpty. Operand 241 states and 262 transitions. [2022-02-20 23:36:41,290 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:36:41,290 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:36:41,291 INFO L74 IsIncluded]: Start isIncluded. First operand has 218 states, 129 states have (on average 1.751937984496124) internal successors, (226), 206 states have internal predecessors, (226), 21 states have call successors, (21), 5 states have call predecessors, (21), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 241 states. [2022-02-20 23:36:41,291 INFO L87 Difference]: Start difference. First operand has 218 states, 129 states have (on average 1.751937984496124) internal successors, (226), 206 states have internal predecessors, (226), 21 states have call successors, (21), 5 states have call predecessors, (21), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 241 states. [2022-02-20 23:36:41,299 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:41,300 INFO L93 Difference]: Finished difference Result 241 states and 262 transitions. [2022-02-20 23:36:41,300 INFO L276 IsEmpty]: Start isEmpty. Operand 241 states and 262 transitions. [2022-02-20 23:36:41,300 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:36:41,300 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:36:41,301 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:36:41,301 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:36:41,302 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 218 states, 129 states have (on average 1.751937984496124) internal successors, (226), 206 states have internal predecessors, (226), 21 states have call successors, (21), 5 states have call predecessors, (21), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:36:41,307 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 218 states to 218 states and 253 transitions. [2022-02-20 23:36:41,307 INFO L78 Accepts]: Start accepts. Automaton has 218 states and 253 transitions. Word has length 8 [2022-02-20 23:36:41,307 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:36:41,307 INFO L470 AbstractCegarLoop]: Abstraction has 218 states and 253 transitions. [2022-02-20 23:36:41,307 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:36:41,308 INFO L276 IsEmpty]: Start isEmpty. Operand 218 states and 253 transitions. [2022-02-20 23:36:41,308 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 9 [2022-02-20 23:36:41,308 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:36:41,308 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:36:41,321 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (5)] Forceful destruction successful, exit code 0 [2022-02-20 23:36:41,518 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:36:41,518 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting list_addErr1REQUIRES_VIOLATION === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, failErr0ASSERT_VIOLATIONMEMORY_LEAK, inspectErr0REQUIRES_VIOLATION (and 67 more)] === [2022-02-20 23:36:41,519 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:36:41,519 INFO L85 PathProgramCache]: Analyzing trace with hash 1374843155, now seen corresponding path program 1 times [2022-02-20 23:36:41,519 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:36:41,519 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1086437664] [2022-02-20 23:36:41,519 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:36:41,519 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:36:41,519 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:36:41,520 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:36:41,521 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:36:41,584 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:36:41,588 INFO L263 TraceCheckSpWp]: Trace formula consists of 70 conjuncts, 11 conjunts are in the unsatisfiable core [2022-02-20 23:36:41,597 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:36:41,598 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:36:41,667 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:36:41,668 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:36:41,735 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(22bv32, 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 (= (_ 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:36:41,736 INFO L290 TraceCheckUtils]: 1: Hoare triple {3802#(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~nondet51#1, gl_read_#t~nondet50#1; {3802#(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:36:41,737 INFO L290 TraceCheckUtils]: 2: Hoare triple {3802#(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~nondet51#1;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset, gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset := #Ultimate.allocOnHeap(20bv32);gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset := gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset; {3809#(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:36:41,738 INFO L290 TraceCheckUtils]: 3: Hoare triple {3809#(and (= (_ bv8 32) (select |#length| (_ bv3 32))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} assume !(gl_insert_~node~1#1.base == 0bv32 && gl_insert_~node~1#1.offset == 0bv32); {3809#(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:36:41,739 INFO L290 TraceCheckUtils]: 4: Hoare triple {3809#(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~1#1.base, gl_insert_~node~1#1.offset, 4bv32); srcloc: L900-2 {3809#(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:36:41,740 INFO L272 TraceCheckUtils]: 5: Hoare triple {3809#(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~1#1.base, ~bvadd32(4bv32, gl_insert_~node~1#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {3819#(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:36:41,740 INFO L290 TraceCheckUtils]: 6: Hoare triple {3819#(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; {3823#(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:36:41,741 INFO L290 TraceCheckUtils]: 7: Hoare triple {3823#(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)); {3798#false} is VALID [2022-02-20 23:36:41,741 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:36:41,742 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:36:41,742 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:36:41,743 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1086437664] [2022-02-20 23:36:41,743 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1086437664] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:36:41,744 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:36:41,744 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:36:41,744 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2089046071] [2022-02-20 23:36:41,744 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:36:41,744 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:36:41,744 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:36:41,745 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:36:41,753 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:36:41,754 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:36:41,754 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:36:41,754 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:36:41,754 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:36:41,755 INFO L87 Difference]: Start difference. First operand 218 states and 253 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:36:43,353 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:43,354 INFO L93 Difference]: Finished difference Result 222 states and 246 transitions. [2022-02-20 23:36:43,354 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:36:43,354 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:36:43,354 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:36:43,354 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:36:43,356 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 245 transitions. [2022-02-20 23:36:43,356 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:36:43,358 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 245 transitions. [2022-02-20 23:36:43,358 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 245 transitions. [2022-02-20 23:36:43,600 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 245 edges. 245 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:36:43,617 INFO L225 Difference]: With dead ends: 222 [2022-02-20 23:36:43,617 INFO L226 Difference]: Without dead ends: 222 [2022-02-20 23:36:43,618 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:36:43,619 INFO L933 BasicCegarLoop]: 121 mSDtfsCounter, 472 mSDsluCounter, 189 mSDsCounter, 0 mSdLazyCounter, 354 mSolverCounterSat, 36 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 473 SdHoareTripleChecker+Valid, 310 SdHoareTripleChecker+Invalid, 390 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 36 IncrementalHoareTripleChecker+Valid, 354 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-02-20 23:36:43,619 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [473 Valid, 310 Invalid, 390 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [36 Valid, 354 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-02-20 23:36:43,620 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 222 states. [2022-02-20 23:36:43,623 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 222 to 210. [2022-02-20 23:36:43,623 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:36:43,624 INFO L82 GeneralOperation]: Start isEquivalent. First operand 222 states. Second operand has 210 states, 125 states have (on average 1.696) internal successors, (212), 198 states have internal predecessors, (212), 21 states have call successors, (21), 5 states have call predecessors, (21), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:36:43,624 INFO L74 IsIncluded]: Start isIncluded. First operand 222 states. Second operand has 210 states, 125 states have (on average 1.696) internal successors, (212), 198 states have internal predecessors, (212), 21 states have call successors, (21), 5 states have call predecessors, (21), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:36:43,624 INFO L87 Difference]: Start difference. First operand 222 states. Second operand has 210 states, 125 states have (on average 1.696) internal successors, (212), 198 states have internal predecessors, (212), 21 states have call successors, (21), 5 states have call predecessors, (21), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:36:43,632 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:43,633 INFO L93 Difference]: Finished difference Result 222 states and 246 transitions. [2022-02-20 23:36:43,633 INFO L276 IsEmpty]: Start isEmpty. Operand 222 states and 246 transitions. [2022-02-20 23:36:43,633 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:36:43,634 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:36:43,634 INFO L74 IsIncluded]: Start isIncluded. First operand has 210 states, 125 states have (on average 1.696) internal successors, (212), 198 states have internal predecessors, (212), 21 states have call successors, (21), 5 states have call predecessors, (21), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 222 states. [2022-02-20 23:36:43,634 INFO L87 Difference]: Start difference. First operand has 210 states, 125 states have (on average 1.696) internal successors, (212), 198 states have internal predecessors, (212), 21 states have call successors, (21), 5 states have call predecessors, (21), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 222 states. [2022-02-20 23:36:43,649 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:43,649 INFO L93 Difference]: Finished difference Result 222 states and 246 transitions. [2022-02-20 23:36:43,649 INFO L276 IsEmpty]: Start isEmpty. Operand 222 states and 246 transitions. [2022-02-20 23:36:43,649 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:36:43,650 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:36:43,650 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:36:43,650 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:36:43,650 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 210 states, 125 states have (on average 1.696) internal successors, (212), 198 states have internal predecessors, (212), 21 states have call successors, (21), 5 states have call predecessors, (21), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:36:43,653 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 210 states to 210 states and 239 transitions. [2022-02-20 23:36:43,653 INFO L78 Accepts]: Start accepts. Automaton has 210 states and 239 transitions. Word has length 8 [2022-02-20 23:36:43,653 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:36:43,653 INFO L470 AbstractCegarLoop]: Abstraction has 210 states and 239 transitions. [2022-02-20 23:36:43,653 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:36:43,654 INFO L276 IsEmpty]: Start isEmpty. Operand 210 states and 239 transitions. [2022-02-20 23:36:43,654 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 11 [2022-02-20 23:36:43,654 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:36:43,654 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:36:43,665 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:36:43,861 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:36:43,861 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting list_addErr2REQUIRES_VIOLATION === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, failErr0ASSERT_VIOLATIONMEMORY_LEAK, inspectErr0REQUIRES_VIOLATION (and 67 more)] === [2022-02-20 23:36:43,862 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:36:43,862 INFO L85 PathProgramCache]: Analyzing trace with hash -1625645901, now seen corresponding path program 1 times [2022-02-20 23:36:43,862 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:36:43,862 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [2075520924] [2022-02-20 23:36:43,862 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:36:43,862 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:36:43,862 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:36:43,863 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:36:43,865 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:36:43,931 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:36:43,934 INFO L263 TraceCheckSpWp]: Trace formula consists of 88 conjuncts, 17 conjunts are in the unsatisfiable core [2022-02-20 23:36:43,941 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:36:43,943 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:36:44,012 INFO L356 Elim1Store]: treesize reduction 13, result has 23.5 percent of original size [2022-02-20 23:36:44,012 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 17 treesize of output 15 [2022-02-20 23:36:44,071 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:36:44,135 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:36:44,167 INFO L290 TraceCheckUtils]: 0: Hoare triple {4706#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(22bv32, 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); {4711#(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:36:44,168 INFO L290 TraceCheckUtils]: 1: Hoare triple {4711#(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~nondet51#1, gl_read_#t~nondet50#1; {4711#(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:36:44,169 INFO L290 TraceCheckUtils]: 2: Hoare triple {4711#(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~nondet51#1;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset, gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset := #Ultimate.allocOnHeap(20bv32);gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset := gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset; {4718#(and (= |~#gl_list~0.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:36:44,169 INFO L290 TraceCheckUtils]: 3: Hoare triple {4718#(and (= |~#gl_list~0.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} assume !(gl_insert_~node~1#1.base == 0bv32 && gl_insert_~node~1#1.offset == 0bv32); {4718#(and (= |~#gl_list~0.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:36:44,172 INFO L290 TraceCheckUtils]: 4: Hoare triple {4718#(and (= |~#gl_list~0.base| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset, 4bv32); srcloc: L900-2 {4725#(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:36:44,173 INFO L272 TraceCheckUtils]: 5: Hoare triple {4725#(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~1#1.base, ~bvadd32(4bv32, gl_insert_~node~1#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {4729#(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:36:44,173 INFO L290 TraceCheckUtils]: 6: Hoare triple {4729#(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; {4733#(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:36:44,174 INFO L290 TraceCheckUtils]: 7: Hoare triple {4733#(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~mem46#1.base, #t~mem46#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L890 {4737#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= |list_add_#t~mem46#1.base| (_ bv3 32)))} is VALID [2022-02-20 23:36:44,175 INFO L290 TraceCheckUtils]: 8: Hoare triple {4737#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= |list_add_#t~mem46#1.base| (_ 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~mem46#1.base, #t~mem46#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; {4741#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= (_ bv3 32) |list_add___list_add_~next#1.base|))} is VALID [2022-02-20 23:36:44,175 INFO L290 TraceCheckUtils]: 9: Hoare triple {4741#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= (_ bv3 32) |list_add___list_add_~next#1.base|))} assume !(1bv1 == #valid[__list_add_~next#1.base]); {4707#false} is VALID [2022-02-20 23:36:44,175 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:36:44,175 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:36:44,175 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:36:44,175 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [2075520924] [2022-02-20 23:36:44,176 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [2075520924] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:36:44,176 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:36:44,176 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-20 23:36:44,176 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1644137812] [2022-02-20 23:36:44,176 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:36:44,176 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:36:44,177 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:36:44,177 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:36:44,189 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:36:44,189 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 23:36:44,189 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:36:44,190 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 23:36:44,190 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:36:44,190 INFO L87 Difference]: Start difference. First operand 210 states and 239 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:36:46,724 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:46,724 INFO L93 Difference]: Finished difference Result 231 states and 260 transitions. [2022-02-20 23:36:46,724 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-02-20 23:36:46,724 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:36:46,724 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:36:46,725 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:36:46,726 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 243 transitions. [2022-02-20 23:36:46,726 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:36:46,728 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 243 transitions. [2022-02-20 23:36:46,728 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 243 transitions. [2022-02-20 23:36:46,938 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 243 edges. 243 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:36:46,940 INFO L225 Difference]: With dead ends: 231 [2022-02-20 23:36:46,941 INFO L226 Difference]: Without dead ends: 231 [2022-02-20 23:36:46,941 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 15 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=59, Invalid=151, Unknown=0, NotChecked=0, Total=210 [2022-02-20 23:36:46,941 INFO L933 BasicCegarLoop]: 206 mSDtfsCounter, 36 mSDsluCounter, 1156 mSDsCounter, 0 mSdLazyCounter, 410 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 36 SdHoareTripleChecker+Valid, 1362 SdHoareTripleChecker+Invalid, 417 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 410 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-02-20 23:36:46,942 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [36 Valid, 1362 Invalid, 417 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 410 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-02-20 23:36:46,942 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 231 states. [2022-02-20 23:36:46,945 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 231 to 224. [2022-02-20 23:36:46,945 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:36:46,945 INFO L82 GeneralOperation]: Start isEquivalent. First operand 231 states. Second operand has 224 states, 137 states have (on average 1.686131386861314) internal successors, (231), 211 states have internal predecessors, (231), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:36:46,946 INFO L74 IsIncluded]: Start isIncluded. First operand 231 states. Second operand has 224 states, 137 states have (on average 1.686131386861314) internal successors, (231), 211 states have internal predecessors, (231), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:36:46,946 INFO L87 Difference]: Start difference. First operand 231 states. Second operand has 224 states, 137 states have (on average 1.686131386861314) internal successors, (231), 211 states have internal predecessors, (231), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:36:46,950 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:46,950 INFO L93 Difference]: Finished difference Result 231 states and 260 transitions. [2022-02-20 23:36:46,950 INFO L276 IsEmpty]: Start isEmpty. Operand 231 states and 260 transitions. [2022-02-20 23:36:46,951 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:36:46,951 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:36:46,951 INFO L74 IsIncluded]: Start isIncluded. First operand has 224 states, 137 states have (on average 1.686131386861314) internal successors, (231), 211 states have internal predecessors, (231), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 231 states. [2022-02-20 23:36:46,952 INFO L87 Difference]: Start difference. First operand has 224 states, 137 states have (on average 1.686131386861314) internal successors, (231), 211 states have internal predecessors, (231), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 231 states. [2022-02-20 23:36:46,956 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:46,956 INFO L93 Difference]: Finished difference Result 231 states and 260 transitions. [2022-02-20 23:36:46,956 INFO L276 IsEmpty]: Start isEmpty. Operand 231 states and 260 transitions. [2022-02-20 23:36:46,957 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:36:46,957 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:36:46,957 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:36:46,957 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:36:46,958 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 224 states, 137 states have (on average 1.686131386861314) internal successors, (231), 211 states have internal predecessors, (231), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:36:46,961 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 224 states to 224 states and 260 transitions. [2022-02-20 23:36:46,961 INFO L78 Accepts]: Start accepts. Automaton has 224 states and 260 transitions. Word has length 10 [2022-02-20 23:36:46,961 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:36:46,961 INFO L470 AbstractCegarLoop]: Abstraction has 224 states and 260 transitions. [2022-02-20 23:36:46,961 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:36:46,961 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 260 transitions. [2022-02-20 23:36:46,962 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 11 [2022-02-20 23:36:46,962 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:36:46,962 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:36:46,969 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (7)] Ended with exit code 0 [2022-02-20 23:36:47,168 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:36:47,169 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting list_addErr3REQUIRES_VIOLATION === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, failErr0ASSERT_VIOLATIONMEMORY_LEAK, inspectErr0REQUIRES_VIOLATION (and 67 more)] === [2022-02-20 23:36:47,169 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:36:47,169 INFO L85 PathProgramCache]: Analyzing trace with hash -1625645900, now seen corresponding path program 1 times [2022-02-20 23:36:47,169 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:36:47,169 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1951514111] [2022-02-20 23:36:47,169 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:36:47,170 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:36:47,170 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:36:47,170 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:36:47,174 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:36:47,244 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:36:47,248 INFO L263 TraceCheckSpWp]: Trace formula consists of 88 conjuncts, 25 conjunts are in the unsatisfiable core [2022-02-20 23:36:47,255 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:36:47,256 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:36:47,354 INFO L356 Elim1Store]: treesize reduction 11, result has 45.0 percent of original size [2022-02-20 23:36:47,354 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:36:47,368 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:36:47,368 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 12 treesize of output 12 [2022-02-20 23:36:47,450 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:36:47,462 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:36:47,575 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:36:47,592 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:36:47,632 INFO L290 TraceCheckUtils]: 0: Hoare triple {5673#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(22bv32, 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); {5678#(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:36:47,633 INFO L290 TraceCheckUtils]: 1: Hoare triple {5678#(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~nondet51#1, gl_read_#t~nondet50#1; {5678#(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:36:47,634 INFO L290 TraceCheckUtils]: 2: Hoare triple {5678#(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~nondet51#1;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset, gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset := #Ultimate.allocOnHeap(20bv32);gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset := gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset; {5685#(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|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:36:47,635 INFO L290 TraceCheckUtils]: 3: Hoare triple {5685#(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|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} assume !(gl_insert_~node~1#1.base == 0bv32 && gl_insert_~node~1#1.offset == 0bv32); {5685#(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|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:36:47,638 INFO L290 TraceCheckUtils]: 4: Hoare triple {5685#(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|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset, 4bv32); srcloc: L900-2 {5692#(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:36:47,639 INFO L272 TraceCheckUtils]: 5: Hoare triple {5692#(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~1#1.base, ~bvadd32(4bv32, gl_insert_~node~1#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {5696#(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:36:47,640 INFO L290 TraceCheckUtils]: 6: Hoare triple {5696#(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; {5700#(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:36:47,640 INFO L290 TraceCheckUtils]: 7: Hoare triple {5700#(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~mem46#1.base, #t~mem46#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L890 {5704#(and (= |list_add_#t~mem46#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| (_ bv3 32))) (= |list_add_#t~mem46#1.base| (_ bv3 32)))} is VALID [2022-02-20 23:36:47,641 INFO L290 TraceCheckUtils]: 8: Hoare triple {5704#(and (= |list_add_#t~mem46#1.offset| (_ bv0 32)) (= (_ bv8 32) (select |#length| (_ bv3 32))) (= |list_add_#t~mem46#1.base| (_ 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~mem46#1.base, #t~mem46#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; {5708#(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:36:47,644 INFO L290 TraceCheckUtils]: 9: Hoare triple {5708#(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))); {5674#false} is VALID [2022-02-20 23:36:47,644 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:36:47,644 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:36:47,644 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:36:47,644 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1951514111] [2022-02-20 23:36:47,644 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1951514111] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:36:47,644 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:36:47,644 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-20 23:36:47,645 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1746349479] [2022-02-20 23:36:47,645 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:36:47,645 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:36:47,645 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:36:47,645 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:36:47,658 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:36:47,659 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 23:36:47,659 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:36:47,659 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 23:36:47,659 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:36:47,659 INFO L87 Difference]: Start difference. First operand 224 states and 260 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:36:50,585 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:50,585 INFO L93 Difference]: Finished difference Result 230 states and 259 transitions. [2022-02-20 23:36:50,586 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-02-20 23:36:50,586 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:36:50,586 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:36:50,586 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:36:50,588 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 242 transitions. [2022-02-20 23:36:50,588 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:36:50,589 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 242 transitions. [2022-02-20 23:36:50,589 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 242 transitions. [2022-02-20 23:36:50,793 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 242 edges. 242 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:36:50,796 INFO L225 Difference]: With dead ends: 230 [2022-02-20 23:36:50,796 INFO L226 Difference]: Without dead ends: 230 [2022-02-20 23:36:50,796 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:36:50,797 INFO L933 BasicCegarLoop]: 205 mSDtfsCounter, 47 mSDsluCounter, 913 mSDsCounter, 0 mSdLazyCounter, 434 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 47 SdHoareTripleChecker+Valid, 1118 SdHoareTripleChecker+Invalid, 455 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 434 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-02-20 23:36:50,797 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [47 Valid, 1118 Invalid, 455 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 434 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-02-20 23:36:50,798 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 230 states. [2022-02-20 23:36:50,800 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 230 to 224. [2022-02-20 23:36:50,800 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:36:50,800 INFO L82 GeneralOperation]: Start isEquivalent. First operand 230 states. Second operand has 224 states, 137 states have (on average 1.6788321167883211) internal successors, (230), 211 states have internal predecessors, (230), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:36:50,801 INFO L74 IsIncluded]: Start isIncluded. First operand 230 states. Second operand has 224 states, 137 states have (on average 1.6788321167883211) internal successors, (230), 211 states have internal predecessors, (230), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:36:50,801 INFO L87 Difference]: Start difference. First operand 230 states. Second operand has 224 states, 137 states have (on average 1.6788321167883211) internal successors, (230), 211 states have internal predecessors, (230), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:36:50,804 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:50,805 INFO L93 Difference]: Finished difference Result 230 states and 259 transitions. [2022-02-20 23:36:50,805 INFO L276 IsEmpty]: Start isEmpty. Operand 230 states and 259 transitions. [2022-02-20 23:36:50,805 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:36:50,805 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:36:50,806 INFO L74 IsIncluded]: Start isIncluded. First operand has 224 states, 137 states have (on average 1.6788321167883211) internal successors, (230), 211 states have internal predecessors, (230), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 230 states. [2022-02-20 23:36:50,806 INFO L87 Difference]: Start difference. First operand has 224 states, 137 states have (on average 1.6788321167883211) internal successors, (230), 211 states have internal predecessors, (230), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 230 states. [2022-02-20 23:36:50,809 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:50,810 INFO L93 Difference]: Finished difference Result 230 states and 259 transitions. [2022-02-20 23:36:50,810 INFO L276 IsEmpty]: Start isEmpty. Operand 230 states and 259 transitions. [2022-02-20 23:36:50,810 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:36:50,810 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:36:50,810 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:36:50,810 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:36:50,811 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 224 states, 137 states have (on average 1.6788321167883211) internal successors, (230), 211 states have internal predecessors, (230), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:36:50,814 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 224 states to 224 states and 259 transitions. [2022-02-20 23:36:50,814 INFO L78 Accepts]: Start accepts. Automaton has 224 states and 259 transitions. Word has length 10 [2022-02-20 23:36:50,814 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:36:50,814 INFO L470 AbstractCegarLoop]: Abstraction has 224 states and 259 transitions. [2022-02-20 23:36:50,814 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:36:50,815 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 259 transitions. [2022-02-20 23:36:50,815 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2022-02-20 23:36:50,815 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:36:50,815 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:36:50,822 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:36:51,022 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:36:51,023 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting list_addErr4REQUIRES_VIOLATION === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, failErr0ASSERT_VIOLATIONMEMORY_LEAK, inspectErr0REQUIRES_VIOLATION (and 67 more)] === [2022-02-20 23:36:51,023 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:36:51,023 INFO L85 PathProgramCache]: Analyzing trace with hash 1144584946, now seen corresponding path program 1 times [2022-02-20 23:36:51,023 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:36:51,023 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1120267664] [2022-02-20 23:36:51,023 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:36:51,023 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:36:51,024 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:36:51,024 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:36:51,026 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:36:51,080 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:36:51,083 INFO L263 TraceCheckSpWp]: Trace formula consists of 101 conjuncts, 7 conjunts are in the unsatisfiable core [2022-02-20 23:36:51,089 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:36:51,089 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:36:51,097 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:36:51,135 INFO L290 TraceCheckUtils]: 0: Hoare triple {6637#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(22bv32, 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); {6637#true} is VALID [2022-02-20 23:36:51,136 INFO L290 TraceCheckUtils]: 1: Hoare triple {6637#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~nondet51#1, gl_read_#t~nondet50#1; {6637#true} is VALID [2022-02-20 23:36:51,136 INFO L290 TraceCheckUtils]: 2: Hoare triple {6637#true} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet51#1;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset, gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset := #Ultimate.allocOnHeap(20bv32);gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset := gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset; {6648#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|))} is VALID [2022-02-20 23:36:51,137 INFO L290 TraceCheckUtils]: 3: Hoare triple {6648#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|))} assume !(gl_insert_~node~1#1.base == 0bv32 && gl_insert_~node~1#1.offset == 0bv32); {6648#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|))} is VALID [2022-02-20 23:36:51,138 INFO L290 TraceCheckUtils]: 4: Hoare triple {6648#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset, 4bv32); srcloc: L900-2 {6648#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|))} is VALID [2022-02-20 23:36:51,146 INFO L272 TraceCheckUtils]: 5: Hoare triple {6648#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|))} call list_add(gl_insert_~node~1#1.base, ~bvadd32(4bv32, gl_insert_~node~1#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {6658#(= (select |#valid| |list_add_#in~new#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:36:51,146 INFO L290 TraceCheckUtils]: 6: Hoare triple {6658#(= (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; {6662#(= (select |#valid| |list_add_~new#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:36:51,147 INFO L290 TraceCheckUtils]: 7: Hoare triple {6662#(= (select |#valid| |list_add_~new#1.base|) (_ bv1 1))} SUMMARY for call #t~mem46#1.base, #t~mem46#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L890 {6662#(= (select |#valid| |list_add_~new#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:36:51,147 INFO L290 TraceCheckUtils]: 8: Hoare triple {6662#(= (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~mem46#1.base, #t~mem46#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; {6669#(= (select |#valid| |list_add___list_add_~new#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:36:51,148 INFO L290 TraceCheckUtils]: 9: Hoare triple {6669#(= (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: L878 {6669#(= (select |#valid| |list_add___list_add_~new#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:36:51,148 INFO L290 TraceCheckUtils]: 10: Hoare triple {6669#(= (select |#valid| |list_add___list_add_~new#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[__list_add_~new#1.base]); {6638#false} is VALID [2022-02-20 23:36:51,148 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:36:51,148 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:36:51,148 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:36:51,148 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1120267664] [2022-02-20 23:36:51,148 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1120267664] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:36:51,148 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:36:51,148 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:36:51,148 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1541443536] [2022-02-20 23:36:51,148 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:36:51,149 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:36:51,149 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:36:51,149 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:36:51,163 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:36:51,163 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:36:51,163 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:36:51,164 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:36:51,164 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:36:51,164 INFO L87 Difference]: Start difference. First operand 224 states and 259 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:36:52,618 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:52,618 INFO L93 Difference]: Finished difference Result 245 states and 270 transitions. [2022-02-20 23:36:52,618 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:36:52,618 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:36:52,618 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:36:52,619 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:36:52,620 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 256 transitions. [2022-02-20 23:36:52,620 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:36:52,621 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 256 transitions. [2022-02-20 23:36:52,622 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 256 transitions. [2022-02-20 23:36:52,828 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 256 edges. 256 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:36:52,831 INFO L225 Difference]: With dead ends: 245 [2022-02-20 23:36:52,831 INFO L226 Difference]: Without dead ends: 245 [2022-02-20 23:36:52,831 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:36:52,831 INFO L933 BasicCegarLoop]: 185 mSDtfsCounter, 105 mSDsluCounter, 518 mSDsCounter, 0 mSdLazyCounter, 340 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 111 SdHoareTripleChecker+Valid, 703 SdHoareTripleChecker+Invalid, 343 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 340 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:36:52,832 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [111 Valid, 703 Invalid, 343 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 340 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-02-20 23:36:52,832 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 245 states. [2022-02-20 23:36:52,834 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 245 to 223. [2022-02-20 23:36:52,834 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:36:52,835 INFO L82 GeneralOperation]: Start isEquivalent. First operand 245 states. Second operand has 223 states, 137 states have (on average 1.6423357664233578) internal successors, (225), 210 states have internal predecessors, (225), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:36:52,835 INFO L74 IsIncluded]: Start isIncluded. First operand 245 states. Second operand has 223 states, 137 states have (on average 1.6423357664233578) internal successors, (225), 210 states have internal predecessors, (225), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:36:52,836 INFO L87 Difference]: Start difference. First operand 245 states. Second operand has 223 states, 137 states have (on average 1.6423357664233578) internal successors, (225), 210 states have internal predecessors, (225), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:36:52,839 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:52,839 INFO L93 Difference]: Finished difference Result 245 states and 270 transitions. [2022-02-20 23:36:52,839 INFO L276 IsEmpty]: Start isEmpty. Operand 245 states and 270 transitions. [2022-02-20 23:36:52,840 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:36:52,840 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:36:52,840 INFO L74 IsIncluded]: Start isIncluded. First operand has 223 states, 137 states have (on average 1.6423357664233578) internal successors, (225), 210 states have internal predecessors, (225), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 245 states. [2022-02-20 23:36:52,841 INFO L87 Difference]: Start difference. First operand has 223 states, 137 states have (on average 1.6423357664233578) internal successors, (225), 210 states have internal predecessors, (225), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 245 states. [2022-02-20 23:36:52,844 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:52,844 INFO L93 Difference]: Finished difference Result 245 states and 270 transitions. [2022-02-20 23:36:52,844 INFO L276 IsEmpty]: Start isEmpty. Operand 245 states and 270 transitions. [2022-02-20 23:36:52,845 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:36:52,845 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:36:52,845 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:36:52,845 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:36:52,846 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 223 states, 137 states have (on average 1.6423357664233578) internal successors, (225), 210 states have internal predecessors, (225), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:36:52,848 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 223 states to 223 states and 254 transitions. [2022-02-20 23:36:52,849 INFO L78 Accepts]: Start accepts. Automaton has 223 states and 254 transitions. Word has length 11 [2022-02-20 23:36:52,849 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:36:52,849 INFO L470 AbstractCegarLoop]: Abstraction has 223 states and 254 transitions. [2022-02-20 23:36:52,849 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:36:52,849 INFO L276 IsEmpty]: Start isEmpty. Operand 223 states and 254 transitions. [2022-02-20 23:36:52,849 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2022-02-20 23:36:52,849 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:36:52,849 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:36:52,856 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (9)] Forceful destruction successful, exit code 0 [2022-02-20 23:36:53,056 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:36:53,057 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting list_addErr5REQUIRES_VIOLATION === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, failErr0ASSERT_VIOLATIONMEMORY_LEAK, inspectErr0REQUIRES_VIOLATION (and 67 more)] === [2022-02-20 23:36:53,057 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:36:53,057 INFO L85 PathProgramCache]: Analyzing trace with hash 1144584947, now seen corresponding path program 1 times [2022-02-20 23:36:53,057 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:36:53,057 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1202576985] [2022-02-20 23:36:53,057 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:36:53,057 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:36:53,057 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:36:53,058 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:36:53,059 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:36:53,116 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:36:53,119 INFO L263 TraceCheckSpWp]: Trace formula consists of 101 conjuncts, 12 conjunts are in the unsatisfiable core [2022-02-20 23:36:53,132 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:36:53,133 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:36:53,144 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:36:53,242 INFO L290 TraceCheckUtils]: 0: Hoare triple {7637#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(22bv32, 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); {7637#true} is VALID [2022-02-20 23:36:53,242 INFO L290 TraceCheckUtils]: 1: Hoare triple {7637#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~nondet51#1, gl_read_#t~nondet50#1; {7637#true} is VALID [2022-02-20 23:36:53,243 INFO L290 TraceCheckUtils]: 2: Hoare triple {7637#true} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet51#1;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset, gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset := #Ultimate.allocOnHeap(20bv32);gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset := gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset; {7648#(and (= |ULTIMATE.start_gl_insert_~node~1#1.offset| (_ bv0 32)) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:36:53,244 INFO L290 TraceCheckUtils]: 3: Hoare triple {7648#(and (= |ULTIMATE.start_gl_insert_~node~1#1.offset| (_ bv0 32)) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)))} assume !(gl_insert_~node~1#1.base == 0bv32 && gl_insert_~node~1#1.offset == 0bv32); {7648#(and (= |ULTIMATE.start_gl_insert_~node~1#1.offset| (_ bv0 32)) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:36:53,244 INFO L290 TraceCheckUtils]: 4: Hoare triple {7648#(and (= |ULTIMATE.start_gl_insert_~node~1#1.offset| (_ bv0 32)) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset, 4bv32); srcloc: L900-2 {7648#(and (= |ULTIMATE.start_gl_insert_~node~1#1.offset| (_ bv0 32)) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:36:53,245 INFO L272 TraceCheckUtils]: 5: Hoare triple {7648#(and (= |ULTIMATE.start_gl_insert_~node~1#1.offset| (_ bv0 32)) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)))} call list_add(gl_insert_~node~1#1.base, ~bvadd32(4bv32, gl_insert_~node~1#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {7658#(and (= (bvadd (_ bv4294967292 32) |list_add_#in~new#1.offset|) (_ bv0 32)) (= (_ bv20 32) (select |#length| |list_add_#in~new#1.base|)))} is VALID [2022-02-20 23:36:53,246 INFO L290 TraceCheckUtils]: 6: Hoare triple {7658#(and (= (bvadd (_ bv4294967292 32) |list_add_#in~new#1.offset|) (_ bv0 32)) (= (_ bv20 32) (select |#length| |list_add_#in~new#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; {7662#(and (= |list_add_~new#1.offset| (_ bv4 32)) (= (select |#length| |list_add_~new#1.base|) (_ bv20 32)))} is VALID [2022-02-20 23:36:53,246 INFO L290 TraceCheckUtils]: 7: Hoare triple {7662#(and (= |list_add_~new#1.offset| (_ bv4 32)) (= (select |#length| |list_add_~new#1.base|) (_ bv20 32)))} SUMMARY for call #t~mem46#1.base, #t~mem46#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L890 {7662#(and (= |list_add_~new#1.offset| (_ bv4 32)) (= (select |#length| |list_add_~new#1.base|) (_ bv20 32)))} is VALID [2022-02-20 23:36:53,247 INFO L290 TraceCheckUtils]: 8: Hoare triple {7662#(and (= |list_add_~new#1.offset| (_ bv4 32)) (= (select |#length| |list_add_~new#1.base|) (_ bv20 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~mem46#1.base, #t~mem46#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; {7669#(and (= (_ bv4 32) |list_add___list_add_~new#1.offset|) (= (select |#length| |list_add___list_add_~new#1.base|) (_ bv20 32)))} is VALID [2022-02-20 23:36:53,247 INFO L290 TraceCheckUtils]: 9: Hoare triple {7669#(and (= (_ bv4 32) |list_add___list_add_~new#1.offset|) (= (select |#length| |list_add___list_add_~new#1.base|) (_ bv20 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: L878 {7669#(and (= (_ bv4 32) |list_add___list_add_~new#1.offset|) (= (select |#length| |list_add___list_add_~new#1.base|) (_ bv20 32)))} is VALID [2022-02-20 23:36:53,248 INFO L290 TraceCheckUtils]: 10: Hoare triple {7669#(and (= (_ bv4 32) |list_add___list_add_~new#1.offset|) (= (select |#length| |list_add___list_add_~new#1.base|) (_ bv20 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)); {7638#false} is VALID [2022-02-20 23:36:53,248 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:36:53,248 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:36:53,248 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:36:53,248 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1202576985] [2022-02-20 23:36:53,248 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1202576985] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:36:53,248 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:36:53,248 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:36:53,248 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1183311884] [2022-02-20 23:36:53,248 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:36:53,249 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:36:53,249 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:36:53,249 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:36:53,263 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:36:53,263 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:36:53,263 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:36:53,264 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:36:53,264 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:36:53,264 INFO L87 Difference]: Start difference. First operand 223 states and 254 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:36:54,985 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:54,985 INFO L93 Difference]: Finished difference Result 227 states and 250 transitions. [2022-02-20 23:36:54,985 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:36:54,985 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:36:54,985 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:36:54,986 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:36:54,987 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 236 transitions. [2022-02-20 23:36:54,987 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:36:54,988 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 236 transitions. [2022-02-20 23:36:54,988 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 236 transitions. [2022-02-20 23:36:55,195 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 236 edges. 236 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:36:55,198 INFO L225 Difference]: With dead ends: 227 [2022-02-20 23:36:55,198 INFO L226 Difference]: Without dead ends: 227 [2022-02-20 23:36:55,198 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:36:55,198 INFO L933 BasicCegarLoop]: 191 mSDtfsCounter, 94 mSDsluCounter, 528 mSDsCounter, 0 mSdLazyCounter, 314 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 100 SdHoareTripleChecker+Valid, 719 SdHoareTripleChecker+Invalid, 315 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 314 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-02-20 23:36:55,199 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [100 Valid, 719 Invalid, 315 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 314 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-02-20 23:36:55,199 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 227 states. [2022-02-20 23:36:55,201 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 227 to 223. [2022-02-20 23:36:55,201 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:36:55,202 INFO L82 GeneralOperation]: Start isEquivalent. First operand 227 states. Second operand has 223 states, 137 states have (on average 1.6131386861313868) internal successors, (221), 210 states have internal predecessors, (221), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:36:55,202 INFO L74 IsIncluded]: Start isIncluded. First operand 227 states. Second operand has 223 states, 137 states have (on average 1.6131386861313868) internal successors, (221), 210 states have internal predecessors, (221), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:36:55,202 INFO L87 Difference]: Start difference. First operand 227 states. Second operand has 223 states, 137 states have (on average 1.6131386861313868) internal successors, (221), 210 states have internal predecessors, (221), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:36:55,205 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:55,205 INFO L93 Difference]: Finished difference Result 227 states and 250 transitions. [2022-02-20 23:36:55,205 INFO L276 IsEmpty]: Start isEmpty. Operand 227 states and 250 transitions. [2022-02-20 23:36:55,206 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:36:55,206 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:36:55,206 INFO L74 IsIncluded]: Start isIncluded. First operand has 223 states, 137 states have (on average 1.6131386861313868) internal successors, (221), 210 states have internal predecessors, (221), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 227 states. [2022-02-20 23:36:55,207 INFO L87 Difference]: Start difference. First operand has 223 states, 137 states have (on average 1.6131386861313868) internal successors, (221), 210 states have internal predecessors, (221), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 227 states. [2022-02-20 23:36:55,210 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:55,210 INFO L93 Difference]: Finished difference Result 227 states and 250 transitions. [2022-02-20 23:36:55,210 INFO L276 IsEmpty]: Start isEmpty. Operand 227 states and 250 transitions. [2022-02-20 23:36:55,211 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:36:55,211 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:36:55,211 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:36:55,211 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:36:55,212 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 223 states, 137 states have (on average 1.6131386861313868) internal successors, (221), 210 states have internal predecessors, (221), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:36:55,215 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 223 states to 223 states and 250 transitions. [2022-02-20 23:36:55,215 INFO L78 Accepts]: Start accepts. Automaton has 223 states and 250 transitions. Word has length 11 [2022-02-20 23:36:55,215 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:36:55,215 INFO L470 AbstractCegarLoop]: Abstraction has 223 states and 250 transitions. [2022-02-20 23:36:55,215 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:36:55,216 INFO L276 IsEmpty]: Start isEmpty. Operand 223 states and 250 transitions. [2022-02-20 23:36:55,216 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 14 [2022-02-20 23:36:55,216 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:36:55,216 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:36:55,235 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (10)] Ended with exit code 0 [2022-02-20 23:36:55,422 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:36:55,423 INFO L402 AbstractCegarLoop]: === Iteration 10 === Targeting list_addErr8REQUIRES_VIOLATION === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, failErr0ASSERT_VIOLATIONMEMORY_LEAK, inspectErr0REQUIRES_VIOLATION (and 67 more)] === [2022-02-20 23:36:55,423 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:36:55,423 INFO L85 PathProgramCache]: Analyzing trace with hash 434515829, now seen corresponding path program 1 times [2022-02-20 23:36:55,423 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:36:55,423 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [365482217] [2022-02-20 23:36:55,423 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:36:55,423 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:36:55,423 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:36:55,424 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:36:55,469 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:36:55,535 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:36:55,539 INFO L263 TraceCheckSpWp]: Trace formula consists of 127 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 23:36:55,549 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:36:55,550 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:36:55,586 INFO L290 TraceCheckUtils]: 0: Hoare triple {8583#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(22bv32, 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); {8583#true} is VALID [2022-02-20 23:36:55,586 INFO L290 TraceCheckUtils]: 1: Hoare triple {8583#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~nondet51#1, gl_read_#t~nondet50#1; {8583#true} is VALID [2022-02-20 23:36:55,586 INFO L290 TraceCheckUtils]: 2: Hoare triple {8583#true} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet51#1;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset, gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset := #Ultimate.allocOnHeap(20bv32);gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset := gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset; {8583#true} is VALID [2022-02-20 23:36:55,586 INFO L290 TraceCheckUtils]: 3: Hoare triple {8583#true} assume !(gl_insert_~node~1#1.base == 0bv32 && gl_insert_~node~1#1.offset == 0bv32); {8583#true} is VALID [2022-02-20 23:36:55,587 INFO L290 TraceCheckUtils]: 4: Hoare triple {8583#true} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset, 4bv32); srcloc: L900-2 {8583#true} is VALID [2022-02-20 23:36:55,587 INFO L272 TraceCheckUtils]: 5: Hoare triple {8583#true} call list_add(gl_insert_~node~1#1.base, ~bvadd32(4bv32, gl_insert_~node~1#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {8583#true} is VALID [2022-02-20 23:36:55,587 INFO L290 TraceCheckUtils]: 6: Hoare triple {8583#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; {8583#true} is VALID [2022-02-20 23:36:55,587 INFO L290 TraceCheckUtils]: 7: Hoare triple {8583#true} SUMMARY for call #t~mem46#1.base, #t~mem46#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L890 {8609#(= (select |#valid| |list_add_~head#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:36:55,588 INFO L290 TraceCheckUtils]: 8: Hoare triple {8609#(= (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~mem46#1.base, #t~mem46#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; {8613#(= (select |#valid| |list_add___list_add_~prev#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:36:55,588 INFO L290 TraceCheckUtils]: 9: Hoare triple {8613#(= (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: L878 {8613#(= (select |#valid| |list_add___list_add_~prev#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:36:55,589 INFO L290 TraceCheckUtils]: 10: Hoare triple {8613#(= (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: L878-1 {8613#(= (select |#valid| |list_add___list_add_~prev#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:36:55,589 INFO L290 TraceCheckUtils]: 11: Hoare triple {8613#(= (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: L879 {8613#(= (select |#valid| |list_add___list_add_~prev#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:36:55,589 INFO L290 TraceCheckUtils]: 12: Hoare triple {8613#(= (select |#valid| |list_add___list_add_~prev#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[__list_add_~prev#1.base]); {8584#false} is VALID [2022-02-20 23:36:55,589 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:36:55,590 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:36:55,590 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:36:55,590 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [365482217] [2022-02-20 23:36:55,590 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [365482217] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:36:55,590 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:36:55,590 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:36:55,591 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1582097770] [2022-02-20 23:36:55,591 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:36:55,591 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:36:55,591 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:36:55,591 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:36:55,607 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:36:55,608 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:36:55,608 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:36:55,608 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:36:55,608 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:36:55,608 INFO L87 Difference]: Start difference. First operand 223 states and 250 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:36:56,311 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:56,312 INFO L93 Difference]: Finished difference Result 222 states and 247 transitions. [2022-02-20 23:36:56,312 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:36:56,312 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:36:56,312 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:36:56,312 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:36:56,313 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 220 transitions. [2022-02-20 23:36:56,313 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:36:56,314 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 220 transitions. [2022-02-20 23:36:56,314 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 220 transitions. [2022-02-20 23:36:56,503 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 220 edges. 220 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:36:56,506 INFO L225 Difference]: With dead ends: 222 [2022-02-20 23:36:56,506 INFO L226 Difference]: Without dead ends: 222 [2022-02-20 23:36:56,506 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:36:56,506 INFO L933 BasicCegarLoop]: 211 mSDtfsCounter, 22 mSDsluCounter, 288 mSDsCounter, 0 mSdLazyCounter, 131 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 499 SdHoareTripleChecker+Invalid, 131 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 131 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:36:56,507 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [22 Valid, 499 Invalid, 131 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 131 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:36:56,507 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 222 states. [2022-02-20 23:36:56,509 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 222 to 222. [2022-02-20 23:36:56,509 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:36:56,509 INFO L82 GeneralOperation]: Start isEquivalent. First operand 222 states. Second operand has 222 states, 137 states have (on average 1.5912408759124088) internal successors, (218), 209 states have internal predecessors, (218), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:36:56,510 INFO L74 IsIncluded]: Start isIncluded. First operand 222 states. Second operand has 222 states, 137 states have (on average 1.5912408759124088) internal successors, (218), 209 states have internal predecessors, (218), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:36:56,510 INFO L87 Difference]: Start difference. First operand 222 states. Second operand has 222 states, 137 states have (on average 1.5912408759124088) internal successors, (218), 209 states have internal predecessors, (218), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:36:56,513 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:56,513 INFO L93 Difference]: Finished difference Result 222 states and 247 transitions. [2022-02-20 23:36:56,513 INFO L276 IsEmpty]: Start isEmpty. Operand 222 states and 247 transitions. [2022-02-20 23:36:56,514 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:36:56,514 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:36:56,514 INFO L74 IsIncluded]: Start isIncluded. First operand has 222 states, 137 states have (on average 1.5912408759124088) internal successors, (218), 209 states have internal predecessors, (218), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 222 states. [2022-02-20 23:36:56,515 INFO L87 Difference]: Start difference. First operand has 222 states, 137 states have (on average 1.5912408759124088) internal successors, (218), 209 states have internal predecessors, (218), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 222 states. [2022-02-20 23:36:56,518 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:56,518 INFO L93 Difference]: Finished difference Result 222 states and 247 transitions. [2022-02-20 23:36:56,518 INFO L276 IsEmpty]: Start isEmpty. Operand 222 states and 247 transitions. [2022-02-20 23:36:56,518 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:36:56,518 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:36:56,518 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:36:56,519 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:36:56,519 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 222 states, 137 states have (on average 1.5912408759124088) internal successors, (218), 209 states have internal predecessors, (218), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:36:56,521 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 222 states to 222 states and 247 transitions. [2022-02-20 23:36:56,522 INFO L78 Accepts]: Start accepts. Automaton has 222 states and 247 transitions. Word has length 13 [2022-02-20 23:36:56,522 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:36:56,522 INFO L470 AbstractCegarLoop]: Abstraction has 222 states and 247 transitions. [2022-02-20 23:36:56,522 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:36:56,522 INFO L276 IsEmpty]: Start isEmpty. Operand 222 states and 247 transitions. [2022-02-20 23:36:56,522 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 14 [2022-02-20 23:36:56,522 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:36:56,523 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:36:56,530 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:36:56,729 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:36:56,730 INFO L402 AbstractCegarLoop]: === Iteration 11 === Targeting list_addErr9REQUIRES_VIOLATION === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, failErr0ASSERT_VIOLATIONMEMORY_LEAK, inspectErr0REQUIRES_VIOLATION (and 67 more)] === [2022-02-20 23:36:56,730 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:36:56,730 INFO L85 PathProgramCache]: Analyzing trace with hash 434515830, now seen corresponding path program 1 times [2022-02-20 23:36:56,730 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:36:56,730 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [2034185669] [2022-02-20 23:36:56,731 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:36:56,731 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:36:56,731 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:36:56,732 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:36:56,733 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:36:56,805 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:36:56,809 INFO L263 TraceCheckSpWp]: Trace formula consists of 127 conjuncts, 9 conjunts are in the unsatisfiable core [2022-02-20 23:36:56,817 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:36:56,818 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:36:56,912 INFO L290 TraceCheckUtils]: 0: Hoare triple {9515#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(22bv32, 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); {9520#(= |~#gl_list~0.offset| (_ bv0 32))} is VALID [2022-02-20 23:36:56,912 INFO L290 TraceCheckUtils]: 1: Hoare triple {9520#(= |~#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~nondet51#1, gl_read_#t~nondet50#1; {9520#(= |~#gl_list~0.offset| (_ bv0 32))} is VALID [2022-02-20 23:36:56,913 INFO L290 TraceCheckUtils]: 2: Hoare triple {9520#(= |~#gl_list~0.offset| (_ bv0 32))} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet51#1;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset, gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset := #Ultimate.allocOnHeap(20bv32);gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset := gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset; {9520#(= |~#gl_list~0.offset| (_ bv0 32))} is VALID [2022-02-20 23:36:56,913 INFO L290 TraceCheckUtils]: 3: Hoare triple {9520#(= |~#gl_list~0.offset| (_ bv0 32))} assume !(gl_insert_~node~1#1.base == 0bv32 && gl_insert_~node~1#1.offset == 0bv32); {9520#(= |~#gl_list~0.offset| (_ bv0 32))} is VALID [2022-02-20 23:36:56,913 INFO L290 TraceCheckUtils]: 4: Hoare triple {9520#(= |~#gl_list~0.offset| (_ bv0 32))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset, 4bv32); srcloc: L900-2 {9520#(= |~#gl_list~0.offset| (_ bv0 32))} is VALID [2022-02-20 23:36:56,914 INFO L272 TraceCheckUtils]: 5: Hoare triple {9520#(= |~#gl_list~0.offset| (_ bv0 32))} call list_add(gl_insert_~node~1#1.base, ~bvadd32(4bv32, gl_insert_~node~1#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {9536#(= (_ bv0 32) |list_add_#in~head#1.offset|)} is VALID [2022-02-20 23:36:56,915 INFO L290 TraceCheckUtils]: 6: Hoare triple {9536#(= (_ 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; {9540#(= |list_add_~head#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:36:56,915 INFO L290 TraceCheckUtils]: 7: Hoare triple {9540#(= |list_add_~head#1.offset| (_ bv0 32))} SUMMARY for call #t~mem46#1.base, #t~mem46#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L890 {9544#(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:36:56,916 INFO L290 TraceCheckUtils]: 8: Hoare triple {9544#(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~mem46#1.base, #t~mem46#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; {9548#(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:36:56,916 INFO L290 TraceCheckUtils]: 9: Hoare triple {9548#(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: L878 {9548#(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:36:56,917 INFO L290 TraceCheckUtils]: 10: Hoare triple {9548#(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: L878-1 {9548#(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:36:56,917 INFO L290 TraceCheckUtils]: 11: Hoare triple {9548#(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: L879 {9548#(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:36:56,918 INFO L290 TraceCheckUtils]: 12: Hoare triple {9548#(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)); {9516#false} is VALID [2022-02-20 23:36:56,918 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:36:56,918 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:36:56,918 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:36:56,918 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [2034185669] [2022-02-20 23:36:56,918 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [2034185669] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:36:56,918 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:36:56,918 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:36:56,918 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1893108272] [2022-02-20 23:36:56,919 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:36:56,919 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:36:56,919 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:36:56,919 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:36:56,936 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:36:56,936 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 23:36:56,936 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:36:56,937 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 23:36:56,937 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=30, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:36:56,937 INFO L87 Difference]: Start difference. First operand 222 states and 247 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:36:58,194 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:58,194 INFO L93 Difference]: Finished difference Result 224 states and 245 transitions. [2022-02-20 23:36:58,194 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:36:58,195 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:36:58,195 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:36:58,195 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:36:58,197 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 231 transitions. [2022-02-20 23:36:58,197 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:36:58,198 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 231 transitions. [2022-02-20 23:36:58,198 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 231 transitions. [2022-02-20 23:36:58,407 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 231 edges. 231 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:36:58,410 INFO L225 Difference]: With dead ends: 224 [2022-02-20 23:36:58,410 INFO L226 Difference]: Without dead ends: 224 [2022-02-20 23:36:58,410 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:36:58,411 INFO L933 BasicCegarLoop]: 203 mSDtfsCounter, 259 mSDsluCounter, 565 mSDsCounter, 0 mSdLazyCounter, 108 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 260 SdHoareTripleChecker+Valid, 768 SdHoareTripleChecker+Invalid, 108 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 108 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:36:58,411 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [260 Valid, 768 Invalid, 108 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 108 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:36:58,411 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 224 states. [2022-02-20 23:36:58,413 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 224 to 222. [2022-02-20 23:36:58,413 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:36:58,414 INFO L82 GeneralOperation]: Start isEquivalent. First operand 224 states. Second operand has 222 states, 137 states have (on average 1.5766423357664234) internal successors, (216), 209 states have internal predecessors, (216), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:36:58,414 INFO L74 IsIncluded]: Start isIncluded. First operand 224 states. Second operand has 222 states, 137 states have (on average 1.5766423357664234) internal successors, (216), 209 states have internal predecessors, (216), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:36:58,414 INFO L87 Difference]: Start difference. First operand 224 states. Second operand has 222 states, 137 states have (on average 1.5766423357664234) internal successors, (216), 209 states have internal predecessors, (216), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:36:58,417 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:58,417 INFO L93 Difference]: Finished difference Result 224 states and 245 transitions. [2022-02-20 23:36:58,417 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 245 transitions. [2022-02-20 23:36:58,418 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:36:58,418 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:36:58,418 INFO L74 IsIncluded]: Start isIncluded. First operand has 222 states, 137 states have (on average 1.5766423357664234) internal successors, (216), 209 states have internal predecessors, (216), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 224 states. [2022-02-20 23:36:58,418 INFO L87 Difference]: Start difference. First operand has 222 states, 137 states have (on average 1.5766423357664234) internal successors, (216), 209 states have internal predecessors, (216), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 224 states. [2022-02-20 23:36:58,422 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:58,422 INFO L93 Difference]: Finished difference Result 224 states and 245 transitions. [2022-02-20 23:36:58,422 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 245 transitions. [2022-02-20 23:36:58,422 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:36:58,423 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:36:58,423 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:36:58,423 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:36:58,423 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 222 states, 137 states have (on average 1.5766423357664234) internal successors, (216), 209 states have internal predecessors, (216), 22 states have call successors, (22), 6 states have call predecessors, (22), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:36:58,426 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 222 states to 222 states and 245 transitions. [2022-02-20 23:36:58,426 INFO L78 Accepts]: Start accepts. Automaton has 222 states and 245 transitions. Word has length 13 [2022-02-20 23:36:58,426 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:36:58,426 INFO L470 AbstractCegarLoop]: Abstraction has 222 states and 245 transitions. [2022-02-20 23:36:58,427 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:36:58,427 INFO L276 IsEmpty]: Start isEmpty. Operand 222 states and 245 transitions. [2022-02-20 23:36:58,427 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-02-20 23:36:58,427 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:36:58,427 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:36:58,437 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (12)] Forceful destruction successful, exit code 0 [2022-02-20 23:36:58,634 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:36:58,635 INFO L402 AbstractCegarLoop]: === Iteration 12 === Targeting failErr0ASSERT_VIOLATIONMEMORY_LEAK === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, failErr0ASSERT_VIOLATIONMEMORY_LEAK, inspectErr0REQUIRES_VIOLATION (and 67 more)] === [2022-02-20 23:36:58,635 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:36:58,635 INFO L85 PathProgramCache]: Analyzing trace with hash 853908818, now seen corresponding path program 1 times [2022-02-20 23:36:58,635 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:36:58,635 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1436950379] [2022-02-20 23:36:58,635 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:36:58,635 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:36:58,636 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:36:58,637 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:36:58,639 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:36:58,730 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:36:58,736 INFO L263 TraceCheckSpWp]: Trace formula consists of 184 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 23:36:58,745 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:36:58,746 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:36:58,838 INFO L290 TraceCheckUtils]: 0: Hoare triple {10462#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(22bv32, 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); {10467#(= (_ bv3 32) |~#gl_list~0.base|)} is VALID [2022-02-20 23:36:58,839 INFO L290 TraceCheckUtils]: 1: Hoare triple {10467#(= (_ 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~nondet51#1, gl_read_#t~nondet50#1; {10467#(= (_ bv3 32) |~#gl_list~0.base|)} is VALID [2022-02-20 23:36:58,839 INFO L290 TraceCheckUtils]: 2: Hoare triple {10467#(= (_ bv3 32) |~#gl_list~0.base|)} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet51#1;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset, gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset := #Ultimate.allocOnHeap(20bv32);gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset := gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset; {10467#(= (_ bv3 32) |~#gl_list~0.base|)} is VALID [2022-02-20 23:36:58,839 INFO L290 TraceCheckUtils]: 3: Hoare triple {10467#(= (_ bv3 32) |~#gl_list~0.base|)} assume !(gl_insert_~node~1#1.base == 0bv32 && gl_insert_~node~1#1.offset == 0bv32); {10467#(= (_ bv3 32) |~#gl_list~0.base|)} is VALID [2022-02-20 23:36:58,840 INFO L290 TraceCheckUtils]: 4: Hoare triple {10467#(= (_ bv3 32) |~#gl_list~0.base|)} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset, 4bv32); srcloc: L900-2 {10467#(= (_ bv3 32) |~#gl_list~0.base|)} is VALID [2022-02-20 23:36:58,840 INFO L272 TraceCheckUtils]: 5: Hoare triple {10467#(= (_ bv3 32) |~#gl_list~0.base|)} call list_add(gl_insert_~node~1#1.base, ~bvadd32(4bv32, gl_insert_~node~1#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {10467#(= (_ bv3 32) |~#gl_list~0.base|)} is VALID [2022-02-20 23:36:58,841 INFO L290 TraceCheckUtils]: 6: Hoare triple {10467#(= (_ 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; {10467#(= (_ bv3 32) |~#gl_list~0.base|)} is VALID [2022-02-20 23:36:58,843 INFO L290 TraceCheckUtils]: 7: Hoare triple {10467#(= (_ bv3 32) |~#gl_list~0.base|)} SUMMARY for call #t~mem46#1.base, #t~mem46#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L890 {10467#(= (_ bv3 32) |~#gl_list~0.base|)} is VALID [2022-02-20 23:36:58,844 INFO L290 TraceCheckUtils]: 8: Hoare triple {10467#(= (_ bv3 32) |~#gl_list~0.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~mem46#1.base, #t~mem46#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; {10467#(= (_ bv3 32) |~#gl_list~0.base|)} is VALID [2022-02-20 23:36:58,844 INFO L290 TraceCheckUtils]: 9: Hoare triple {10467#(= (_ bv3 32) |~#gl_list~0.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: L878 {10467#(= (_ bv3 32) |~#gl_list~0.base|)} is VALID [2022-02-20 23:36:58,845 INFO L290 TraceCheckUtils]: 10: Hoare triple {10467#(= (_ bv3 32) |~#gl_list~0.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: L878-1 {10467#(= (_ bv3 32) |~#gl_list~0.base|)} is VALID [2022-02-20 23:36:58,845 INFO L290 TraceCheckUtils]: 11: Hoare triple {10467#(= (_ bv3 32) |~#gl_list~0.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: L879 {10467#(= (_ bv3 32) |~#gl_list~0.base|)} is VALID [2022-02-20 23:36:58,846 INFO L290 TraceCheckUtils]: 12: Hoare triple {10467#(= (_ bv3 32) |~#gl_list~0.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: L880 {10467#(= (_ bv3 32) |~#gl_list~0.base|)} is VALID [2022-02-20 23:36:58,846 INFO L290 TraceCheckUtils]: 13: Hoare triple {10467#(= (_ bv3 32) |~#gl_list~0.base|)} assume { :end_inline___list_add } true;havoc #t~mem46#1.base, #t~mem46#1.offset; {10467#(= (_ bv3 32) |~#gl_list~0.base|)} is VALID [2022-02-20 23:36:58,847 INFO L290 TraceCheckUtils]: 14: Hoare triple {10467#(= (_ bv3 32) |~#gl_list~0.base|)} assume true; {10467#(= (_ bv3 32) |~#gl_list~0.base|)} is VALID [2022-02-20 23:36:58,847 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {10467#(= (_ bv3 32) |~#gl_list~0.base|)} {10467#(= (_ bv3 32) |~#gl_list~0.base|)} #549#return; {10467#(= (_ bv3 32) |~#gl_list~0.base|)} is VALID [2022-02-20 23:36:58,848 INFO L290 TraceCheckUtils]: 16: Hoare triple {10467#(= (_ bv3 32) |~#gl_list~0.base|)} SUMMARY for call write~$Pointer$(gl_insert_~node~1#1.base, ~bvadd32(12bv32, gl_insert_~node~1#1.offset), gl_insert_~node~1#1.base, ~bvadd32(12bv32, gl_insert_~node~1#1.offset), 4bv32); srcloc: L904-2 {10467#(= (_ bv3 32) |~#gl_list~0.base|)} is VALID [2022-02-20 23:36:58,854 INFO L290 TraceCheckUtils]: 17: Hoare triple {10467#(= (_ bv3 32) |~#gl_list~0.base|)} SUMMARY for call write~$Pointer$(gl_insert_~node~1#1.base, ~bvadd32(12bv32, gl_insert_~node~1#1.offset), gl_insert_~node~1#1.base, ~bvadd32(12bv32, gl_insert_~node~1#1.offset), 4bv32); srcloc: L904 {10467#(= (_ bv3 32) |~#gl_list~0.base|)} is VALID [2022-02-20 23:36:58,854 INFO L290 TraceCheckUtils]: 18: Hoare triple {10467#(= (_ bv3 32) |~#gl_list~0.base|)} goto; {10467#(= (_ bv3 32) |~#gl_list~0.base|)} is VALID [2022-02-20 23:36:58,854 INFO L290 TraceCheckUtils]: 19: Hoare triple {10467#(= (_ bv3 32) |~#gl_list~0.base|)} assume { :end_inline_gl_insert } true;havoc gl_read_#t~nondet51#1; {10467#(= (_ bv3 32) |~#gl_list~0.base|)} is VALID [2022-02-20 23:36:58,855 INFO L290 TraceCheckUtils]: 20: Hoare triple {10467#(= (_ bv3 32) |~#gl_list~0.base|)} assume !(0bv32 != gl_read_#t~nondet50#1);havoc gl_read_#t~nondet50#1; {10467#(= (_ bv3 32) |~#gl_list~0.base|)} is VALID [2022-02-20 23:36:58,855 INFO L290 TraceCheckUtils]: 21: Hoare triple {10467#(= (_ bv3 32) |~#gl_list~0.base|)} assume { :end_inline_gl_read } true; {10467#(= (_ bv3 32) |~#gl_list~0.base|)} is VALID [2022-02-20 23:36:58,856 INFO L272 TraceCheckUtils]: 22: Hoare triple {10467#(= (_ bv3 32) |~#gl_list~0.base|)} call inspect(~#gl_list~0.base, ~#gl_list~0.offset); {10534#(= (_ bv3 32) |inspect_#in~head.base|)} is VALID [2022-02-20 23:36:58,856 INFO L290 TraceCheckUtils]: 23: Hoare triple {10534#(= (_ bv3 32) |inspect_#in~head.base|)} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {10538#(= inspect_~head.base (_ bv3 32))} is VALID [2022-02-20 23:36:58,856 INFO L290 TraceCheckUtils]: 24: Hoare triple {10538#(= inspect_~head.base (_ bv3 32))} assume ~head.base == 0bv32 && ~head.offset == 0bv32; {10463#false} is VALID [2022-02-20 23:36:58,857 INFO L272 TraceCheckUtils]: 25: Hoare triple {10463#false} call fail(); {10463#false} is VALID [2022-02-20 23:36:58,857 INFO L290 TraceCheckUtils]: 26: Hoare triple {10463#false} assume !false; {10463#false} is VALID [2022-02-20 23:36:58,857 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:36:58,857 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:36:58,857 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:36:58,857 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1436950379] [2022-02-20 23:36:58,857 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1436950379] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:36:58,858 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:36:58,858 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:36:58,858 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [443437927] [2022-02-20 23:36:58,858 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:36:58,858 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.6) internal successors, (23), 3 states have internal predecessors, (23), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 27 [2022-02-20 23:36:58,859 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:36:58,859 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.6) internal successors, (23), 3 states have internal predecessors, (23), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:36:58,885 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:36:58,885 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:36:58,885 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:36:58,886 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:36:58,886 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:36:58,886 INFO L87 Difference]: Start difference. First operand 222 states and 245 transitions. Second operand has 5 states, 5 states have (on average 4.6) internal successors, (23), 3 states have internal predecessors, (23), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:36:59,569 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:59,570 INFO L93 Difference]: Finished difference Result 221 states and 243 transitions. [2022-02-20 23:36:59,570 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:36:59,570 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.6) internal successors, (23), 3 states have internal predecessors, (23), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 27 [2022-02-20 23:36:59,570 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:36:59,570 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.6) internal successors, (23), 3 states have internal predecessors, (23), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:36:59,572 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 218 transitions. [2022-02-20 23:36:59,572 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.6) internal successors, (23), 3 states have internal predecessors, (23), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:36:59,573 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 218 transitions. [2022-02-20 23:36:59,573 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 218 transitions. [2022-02-20 23:36:59,758 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 218 edges. 218 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:36:59,760 INFO L225 Difference]: With dead ends: 221 [2022-02-20 23:36:59,760 INFO L226 Difference]: Without dead ends: 221 [2022-02-20 23:36:59,760 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 28 GetRequests, 23 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=25, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:36:59,761 INFO L933 BasicCegarLoop]: 192 mSDtfsCounter, 297 mSDsluCounter, 261 mSDsCounter, 0 mSdLazyCounter, 77 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 299 SdHoareTripleChecker+Valid, 453 SdHoareTripleChecker+Invalid, 92 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 77 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:36:59,761 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [299 Valid, 453 Invalid, 92 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 77 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:36:59,761 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 221 states. [2022-02-20 23:36:59,763 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 221 to 221. [2022-02-20 23:36:59,763 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:36:59,764 INFO L82 GeneralOperation]: Start isEquivalent. First operand 221 states. Second operand has 221 states, 137 states have (on average 1.5693430656934306) internal successors, (215), 208 states have internal predecessors, (215), 21 states have call successors, (21), 6 states have call predecessors, (21), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:36:59,764 INFO L74 IsIncluded]: Start isIncluded. First operand 221 states. Second operand has 221 states, 137 states have (on average 1.5693430656934306) internal successors, (215), 208 states have internal predecessors, (215), 21 states have call successors, (21), 6 states have call predecessors, (21), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:36:59,765 INFO L87 Difference]: Start difference. First operand 221 states. Second operand has 221 states, 137 states have (on average 1.5693430656934306) internal successors, (215), 208 states have internal predecessors, (215), 21 states have call successors, (21), 6 states have call predecessors, (21), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:36:59,771 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:59,771 INFO L93 Difference]: Finished difference Result 221 states and 243 transitions. [2022-02-20 23:36:59,771 INFO L276 IsEmpty]: Start isEmpty. Operand 221 states and 243 transitions. [2022-02-20 23:36:59,771 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:36:59,772 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:36:59,773 INFO L74 IsIncluded]: Start isIncluded. First operand has 221 states, 137 states have (on average 1.5693430656934306) internal successors, (215), 208 states have internal predecessors, (215), 21 states have call successors, (21), 6 states have call predecessors, (21), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 221 states. [2022-02-20 23:36:59,773 INFO L87 Difference]: Start difference. First operand has 221 states, 137 states have (on average 1.5693430656934306) internal successors, (215), 208 states have internal predecessors, (215), 21 states have call successors, (21), 6 states have call predecessors, (21), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 221 states. [2022-02-20 23:36:59,777 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:36:59,777 INFO L93 Difference]: Finished difference Result 221 states and 243 transitions. [2022-02-20 23:36:59,778 INFO L276 IsEmpty]: Start isEmpty. Operand 221 states and 243 transitions. [2022-02-20 23:36:59,778 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:36:59,778 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:36:59,778 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:36:59,778 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:36:59,779 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 221 states, 137 states have (on average 1.5693430656934306) internal successors, (215), 208 states have internal predecessors, (215), 21 states have call successors, (21), 6 states have call predecessors, (21), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:36:59,781 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 221 states to 221 states and 243 transitions. [2022-02-20 23:36:59,781 INFO L78 Accepts]: Start accepts. Automaton has 221 states and 243 transitions. Word has length 27 [2022-02-20 23:36:59,782 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:36:59,782 INFO L470 AbstractCegarLoop]: Abstraction has 221 states and 243 transitions. [2022-02-20 23:36:59,782 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.6) internal successors, (23), 3 states have internal predecessors, (23), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:36:59,782 INFO L276 IsEmpty]: Start isEmpty. Operand 221 states and 243 transitions. [2022-02-20 23:36:59,782 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-02-20 23:36:59,782 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:36:59,782 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:36:59,790 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:36:59,989 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:36:59,990 INFO L402 AbstractCegarLoop]: === Iteration 13 === Targeting inspectErr0REQUIRES_VIOLATION === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, failErr0ASSERT_VIOLATIONMEMORY_LEAK, inspectErr0REQUIRES_VIOLATION (and 67 more)] === [2022-02-20 23:36:59,990 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:36:59,990 INFO L85 PathProgramCache]: Analyzing trace with hash 853896473, now seen corresponding path program 1 times [2022-02-20 23:36:59,991 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:36:59,991 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1906793103] [2022-02-20 23:36:59,991 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:36:59,991 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:36:59,991 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:36:59,992 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:36:59,993 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:37:00,078 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:00,083 INFO L263 TraceCheckSpWp]: Trace formula consists of 181 conjuncts, 6 conjunts are in the unsatisfiable core [2022-02-20 23:37:00,094 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:00,095 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:37:00,197 INFO L290 TraceCheckUtils]: 0: Hoare triple {11435#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(22bv32, 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); {11435#true} is VALID [2022-02-20 23:37:00,198 INFO L290 TraceCheckUtils]: 1: Hoare triple {11435#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~nondet51#1, gl_read_#t~nondet50#1; {11435#true} is VALID [2022-02-20 23:37:00,198 INFO L290 TraceCheckUtils]: 2: Hoare triple {11435#true} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet51#1;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset, gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset := #Ultimate.allocOnHeap(20bv32);gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset := gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset; {11435#true} is VALID [2022-02-20 23:37:00,198 INFO L290 TraceCheckUtils]: 3: Hoare triple {11435#true} assume !(gl_insert_~node~1#1.base == 0bv32 && gl_insert_~node~1#1.offset == 0bv32); {11435#true} is VALID [2022-02-20 23:37:00,198 INFO L290 TraceCheckUtils]: 4: Hoare triple {11435#true} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset, 4bv32); srcloc: L900-2 {11435#true} is VALID [2022-02-20 23:37:00,199 INFO L272 TraceCheckUtils]: 5: Hoare triple {11435#true} call list_add(gl_insert_~node~1#1.base, ~bvadd32(4bv32, gl_insert_~node~1#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {11435#true} is VALID [2022-02-20 23:37:00,199 INFO L290 TraceCheckUtils]: 6: Hoare triple {11435#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; {11458#(= |list_add_#in~head#1.base| |list_add_~head#1.base|)} is VALID [2022-02-20 23:37:00,199 INFO L290 TraceCheckUtils]: 7: Hoare triple {11458#(= |list_add_#in~head#1.base| |list_add_~head#1.base|)} SUMMARY for call #t~mem46#1.base, #t~mem46#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L890 {11462#(= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:37:00,200 INFO L290 TraceCheckUtils]: 8: Hoare triple {11462#(= (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~mem46#1.base, #t~mem46#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; {11462#(= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:37:00,200 INFO L290 TraceCheckUtils]: 9: Hoare triple {11462#(= (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: L878 {11462#(= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:37:00,200 INFO L290 TraceCheckUtils]: 10: Hoare triple {11462#(= (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: L878-1 {11462#(= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:37:00,200 INFO L290 TraceCheckUtils]: 11: Hoare triple {11462#(= (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: L879 {11462#(= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:37:00,201 INFO L290 TraceCheckUtils]: 12: Hoare triple {11462#(= (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: L880 {11462#(= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:37:00,201 INFO L290 TraceCheckUtils]: 13: Hoare triple {11462#(= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1))} assume { :end_inline___list_add } true;havoc #t~mem46#1.base, #t~mem46#1.offset; {11462#(= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:37:00,201 INFO L290 TraceCheckUtils]: 14: Hoare triple {11462#(= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1))} assume true; {11462#(= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:37:00,202 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {11462#(= (select |#valid| |list_add_#in~head#1.base|) (_ bv1 1))} {11435#true} #549#return; {11487#(= (_ bv1 1) (select |#valid| |~#gl_list~0.base|))} is VALID [2022-02-20 23:37:00,202 INFO L290 TraceCheckUtils]: 16: Hoare triple {11487#(= (_ bv1 1) (select |#valid| |~#gl_list~0.base|))} SUMMARY for call write~$Pointer$(gl_insert_~node~1#1.base, ~bvadd32(12bv32, gl_insert_~node~1#1.offset), gl_insert_~node~1#1.base, ~bvadd32(12bv32, gl_insert_~node~1#1.offset), 4bv32); srcloc: L904-2 {11487#(= (_ bv1 1) (select |#valid| |~#gl_list~0.base|))} is VALID [2022-02-20 23:37:00,203 INFO L290 TraceCheckUtils]: 17: Hoare triple {11487#(= (_ bv1 1) (select |#valid| |~#gl_list~0.base|))} SUMMARY for call write~$Pointer$(gl_insert_~node~1#1.base, ~bvadd32(12bv32, gl_insert_~node~1#1.offset), gl_insert_~node~1#1.base, ~bvadd32(12bv32, gl_insert_~node~1#1.offset), 4bv32); srcloc: L904 {11487#(= (_ bv1 1) (select |#valid| |~#gl_list~0.base|))} is VALID [2022-02-20 23:37:00,203 INFO L290 TraceCheckUtils]: 18: Hoare triple {11487#(= (_ bv1 1) (select |#valid| |~#gl_list~0.base|))} goto; {11487#(= (_ bv1 1) (select |#valid| |~#gl_list~0.base|))} is VALID [2022-02-20 23:37:00,203 INFO L290 TraceCheckUtils]: 19: Hoare triple {11487#(= (_ bv1 1) (select |#valid| |~#gl_list~0.base|))} assume { :end_inline_gl_insert } true;havoc gl_read_#t~nondet51#1; {11487#(= (_ bv1 1) (select |#valid| |~#gl_list~0.base|))} is VALID [2022-02-20 23:37:00,204 INFO L290 TraceCheckUtils]: 20: Hoare triple {11487#(= (_ bv1 1) (select |#valid| |~#gl_list~0.base|))} assume !(0bv32 != gl_read_#t~nondet50#1);havoc gl_read_#t~nondet50#1; {11487#(= (_ bv1 1) (select |#valid| |~#gl_list~0.base|))} is VALID [2022-02-20 23:37:00,204 INFO L290 TraceCheckUtils]: 21: Hoare triple {11487#(= (_ bv1 1) (select |#valid| |~#gl_list~0.base|))} assume { :end_inline_gl_read } true; {11487#(= (_ bv1 1) (select |#valid| |~#gl_list~0.base|))} is VALID [2022-02-20 23:37:00,204 INFO L272 TraceCheckUtils]: 22: Hoare triple {11487#(= (_ bv1 1) (select |#valid| |~#gl_list~0.base|))} call inspect(~#gl_list~0.base, ~#gl_list~0.offset); {11509#(= (select |#valid| |inspect_#in~head.base|) (_ bv1 1))} is VALID [2022-02-20 23:37:00,205 INFO L290 TraceCheckUtils]: 23: Hoare triple {11509#(= (select |#valid| |inspect_#in~head.base|) (_ bv1 1))} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {11513#(= (select |#valid| inspect_~head.base) (_ bv1 1))} is VALID [2022-02-20 23:37:00,205 INFO L290 TraceCheckUtils]: 24: Hoare triple {11513#(= (select |#valid| inspect_~head.base) (_ bv1 1))} assume !(~head.base == 0bv32 && ~head.offset == 0bv32); {11513#(= (select |#valid| inspect_~head.base) (_ bv1 1))} is VALID [2022-02-20 23:37:00,205 INFO L290 TraceCheckUtils]: 25: Hoare triple {11513#(= (select |#valid| inspect_~head.base) (_ bv1 1))} goto; {11513#(= (select |#valid| inspect_~head.base) (_ bv1 1))} is VALID [2022-02-20 23:37:00,206 INFO L290 TraceCheckUtils]: 26: Hoare triple {11513#(= (select |#valid| inspect_~head.base) (_ bv1 1))} assume !(1bv1 == #valid[~head.base]); {11436#false} is VALID [2022-02-20 23:37:00,206 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:37:00,206 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:37:00,206 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:37:00,206 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1906793103] [2022-02-20 23:37:00,206 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1906793103] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:37:00,206 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:37:00,206 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-02-20 23:37:00,206 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1738242543] [2022-02-20 23:37:00,206 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:37:00,207 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 4.0) internal successors, (24), 6 states have internal predecessors, (24), 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 27 [2022-02-20 23:37:00,207 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:37:00,207 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 6 states have (on average 4.0) internal successors, (24), 6 states have internal predecessors, (24), 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:37:00,233 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:37:00,233 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 23:37:00,233 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:37:00,233 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 23:37:00,233 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:37:00,233 INFO L87 Difference]: Start difference. First operand 221 states and 243 transitions. Second operand has 7 states, 6 states have (on average 4.0) internal successors, (24), 6 states have internal predecessors, (24), 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:37:01,855 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:01,855 INFO L93 Difference]: Finished difference Result 216 states and 238 transitions. [2022-02-20 23:37:01,855 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-20 23:37:01,855 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 4.0) internal successors, (24), 6 states have internal predecessors, (24), 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 27 [2022-02-20 23:37:01,857 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:37:01,857 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 4.0) internal successors, (24), 6 states have internal predecessors, (24), 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:37:01,858 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 220 transitions. [2022-02-20 23:37:01,859 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 4.0) internal successors, (24), 6 states have internal predecessors, (24), 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:37:01,860 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 220 transitions. [2022-02-20 23:37:01,860 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 220 transitions. [2022-02-20 23:37:02,088 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 220 edges. 220 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:37:02,090 INFO L225 Difference]: With dead ends: 216 [2022-02-20 23:37:02,090 INFO L226 Difference]: Without dead ends: 216 [2022-02-20 23:37:02,091 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 31 GetRequests, 21 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2022-02-20 23:37:02,091 INFO L933 BasicCegarLoop]: 121 mSDtfsCounter, 381 mSDsluCounter, 303 mSDsCounter, 0 mSdLazyCounter, 428 mSolverCounterSat, 25 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 384 SdHoareTripleChecker+Valid, 424 SdHoareTripleChecker+Invalid, 453 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 25 IncrementalHoareTripleChecker+Valid, 428 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-02-20 23:37:02,091 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [384 Valid, 424 Invalid, 453 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [25 Valid, 428 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-02-20 23:37:02,092 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 216 states. [2022-02-20 23:37:02,094 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 216 to 216. [2022-02-20 23:37:02,094 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:37:02,094 INFO L82 GeneralOperation]: Start isEquivalent. First operand 216 states. Second operand has 216 states, 137 states have (on average 1.532846715328467) internal successors, (210), 203 states have internal predecessors, (210), 21 states have call successors, (21), 6 states have call predecessors, (21), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:37:02,094 INFO L74 IsIncluded]: Start isIncluded. First operand 216 states. Second operand has 216 states, 137 states have (on average 1.532846715328467) internal successors, (210), 203 states have internal predecessors, (210), 21 states have call successors, (21), 6 states have call predecessors, (21), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:37:02,095 INFO L87 Difference]: Start difference. First operand 216 states. Second operand has 216 states, 137 states have (on average 1.532846715328467) internal successors, (210), 203 states have internal predecessors, (210), 21 states have call successors, (21), 6 states have call predecessors, (21), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:37:02,097 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:02,098 INFO L93 Difference]: Finished difference Result 216 states and 238 transitions. [2022-02-20 23:37:02,098 INFO L276 IsEmpty]: Start isEmpty. Operand 216 states and 238 transitions. [2022-02-20 23:37:02,098 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:37:02,098 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:37:02,099 INFO L74 IsIncluded]: Start isIncluded. First operand has 216 states, 137 states have (on average 1.532846715328467) internal successors, (210), 203 states have internal predecessors, (210), 21 states have call successors, (21), 6 states have call predecessors, (21), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 216 states. [2022-02-20 23:37:02,099 INFO L87 Difference]: Start difference. First operand has 216 states, 137 states have (on average 1.532846715328467) internal successors, (210), 203 states have internal predecessors, (210), 21 states have call successors, (21), 6 states have call predecessors, (21), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 216 states. [2022-02-20 23:37:02,102 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:02,102 INFO L93 Difference]: Finished difference Result 216 states and 238 transitions. [2022-02-20 23:37:02,102 INFO L276 IsEmpty]: Start isEmpty. Operand 216 states and 238 transitions. [2022-02-20 23:37:02,102 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:37:02,102 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:37:02,103 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:37:02,103 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:37:02,103 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 216 states, 137 states have (on average 1.532846715328467) internal successors, (210), 203 states have internal predecessors, (210), 21 states have call successors, (21), 6 states have call predecessors, (21), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:37:02,105 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 216 states to 216 states and 238 transitions. [2022-02-20 23:37:02,106 INFO L78 Accepts]: Start accepts. Automaton has 216 states and 238 transitions. Word has length 27 [2022-02-20 23:37:02,106 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:37:02,106 INFO L470 AbstractCegarLoop]: Abstraction has 216 states and 238 transitions. [2022-02-20 23:37:02,106 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 6 states have (on average 4.0) internal successors, (24), 6 states have internal predecessors, (24), 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:37:02,106 INFO L276 IsEmpty]: Start isEmpty. Operand 216 states and 238 transitions. [2022-02-20 23:37:02,106 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-02-20 23:37:02,107 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:37:02,107 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:37:02,130 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:37:02,314 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:37:02,314 INFO L402 AbstractCegarLoop]: === Iteration 14 === Targeting inspectErr1REQUIRES_VIOLATION === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, failErr0ASSERT_VIOLATIONMEMORY_LEAK, inspectErr0REQUIRES_VIOLATION (and 67 more)] === [2022-02-20 23:37:02,315 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:37:02,315 INFO L85 PathProgramCache]: Analyzing trace with hash 853896474, now seen corresponding path program 1 times [2022-02-20 23:37:02,315 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:37:02,315 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [827572766] [2022-02-20 23:37:02,315 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:37:02,315 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:37:02,315 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:37:02,316 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:37:02,318 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:37:02,412 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:02,417 INFO L263 TraceCheckSpWp]: Trace formula consists of 181 conjuncts, 11 conjunts are in the unsatisfiable core [2022-02-20 23:37:02,423 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:02,424 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:37:02,648 INFO L290 TraceCheckUtils]: 0: Hoare triple {12396#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(22bv32, 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); {12401#(= |~#gl_list~0.offset| (_ bv0 32))} is VALID [2022-02-20 23:37:02,649 INFO L290 TraceCheckUtils]: 1: Hoare triple {12401#(= |~#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~nondet51#1, gl_read_#t~nondet50#1; {12401#(= |~#gl_list~0.offset| (_ bv0 32))} is VALID [2022-02-20 23:37:02,649 INFO L290 TraceCheckUtils]: 2: Hoare triple {12401#(= |~#gl_list~0.offset| (_ bv0 32))} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet51#1;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset, gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset := #Ultimate.allocOnHeap(20bv32);gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset := gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset; {12401#(= |~#gl_list~0.offset| (_ bv0 32))} is VALID [2022-02-20 23:37:02,649 INFO L290 TraceCheckUtils]: 3: Hoare triple {12401#(= |~#gl_list~0.offset| (_ bv0 32))} assume !(gl_insert_~node~1#1.base == 0bv32 && gl_insert_~node~1#1.offset == 0bv32); {12401#(= |~#gl_list~0.offset| (_ bv0 32))} is VALID [2022-02-20 23:37:02,650 INFO L290 TraceCheckUtils]: 4: Hoare triple {12401#(= |~#gl_list~0.offset| (_ bv0 32))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset, 4bv32); srcloc: L900-2 {12401#(= |~#gl_list~0.offset| (_ bv0 32))} is VALID [2022-02-20 23:37:02,650 INFO L272 TraceCheckUtils]: 5: Hoare triple {12401#(= |~#gl_list~0.offset| (_ bv0 32))} call list_add(gl_insert_~node~1#1.base, ~bvadd32(4bv32, gl_insert_~node~1#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {12401#(= |~#gl_list~0.offset| (_ bv0 32))} is VALID [2022-02-20 23:37:02,651 INFO L290 TraceCheckUtils]: 6: Hoare triple {12401#(= |~#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; {12420#(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:37:02,651 INFO L290 TraceCheckUtils]: 7: Hoare triple {12420#(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~mem46#1.base, #t~mem46#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L890 {12424#(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:37:02,652 INFO L290 TraceCheckUtils]: 8: Hoare triple {12424#(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~mem46#1.base, #t~mem46#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; {12424#(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:37:02,652 INFO L290 TraceCheckUtils]: 9: Hoare triple {12424#(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: L878 {12424#(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:37:02,653 INFO L290 TraceCheckUtils]: 10: Hoare triple {12424#(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: L878-1 {12424#(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:37:02,653 INFO L290 TraceCheckUtils]: 11: Hoare triple {12424#(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: L879 {12424#(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:37:02,654 INFO L290 TraceCheckUtils]: 12: Hoare triple {12424#(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: L880 {12424#(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:37:02,654 INFO L290 TraceCheckUtils]: 13: Hoare triple {12424#(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~mem46#1.base, #t~mem46#1.offset; {12424#(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:37:02,655 INFO L290 TraceCheckUtils]: 14: Hoare triple {12424#(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; {12424#(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:37:02,656 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {12424#(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|)))} {12401#(= |~#gl_list~0.offset| (_ bv0 32))} #549#return; {12449#(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:37:02,656 INFO L290 TraceCheckUtils]: 16: Hoare triple {12449#(and (bvule (bvadd (_ bv4 32) |~#gl_list~0.offset|) (select |#length| |~#gl_list~0.base|)) (= |~#gl_list~0.offset| (_ bv0 32)))} SUMMARY for call write~$Pointer$(gl_insert_~node~1#1.base, ~bvadd32(12bv32, gl_insert_~node~1#1.offset), gl_insert_~node~1#1.base, ~bvadd32(12bv32, gl_insert_~node~1#1.offset), 4bv32); srcloc: L904-2 {12449#(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:37:02,657 INFO L290 TraceCheckUtils]: 17: Hoare triple {12449#(and (bvule (bvadd (_ bv4 32) |~#gl_list~0.offset|) (select |#length| |~#gl_list~0.base|)) (= |~#gl_list~0.offset| (_ bv0 32)))} SUMMARY for call write~$Pointer$(gl_insert_~node~1#1.base, ~bvadd32(12bv32, gl_insert_~node~1#1.offset), gl_insert_~node~1#1.base, ~bvadd32(12bv32, gl_insert_~node~1#1.offset), 4bv32); srcloc: L904 {12449#(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:37:02,657 INFO L290 TraceCheckUtils]: 18: Hoare triple {12449#(and (bvule (bvadd (_ bv4 32) |~#gl_list~0.offset|) (select |#length| |~#gl_list~0.base|)) (= |~#gl_list~0.offset| (_ bv0 32)))} goto; {12449#(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:37:02,657 INFO L290 TraceCheckUtils]: 19: Hoare triple {12449#(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~nondet51#1; {12449#(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:37:02,658 INFO L290 TraceCheckUtils]: 20: Hoare triple {12449#(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~nondet50#1);havoc gl_read_#t~nondet50#1; {12449#(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:37:02,658 INFO L290 TraceCheckUtils]: 21: Hoare triple {12449#(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; {12449#(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:37:02,659 INFO L272 TraceCheckUtils]: 22: Hoare triple {12449#(and (bvule (bvadd (_ bv4 32) |~#gl_list~0.offset|) (select |#length| |~#gl_list~0.base|)) (= |~#gl_list~0.offset| (_ bv0 32)))} call inspect(~#gl_list~0.base, ~#gl_list~0.offset); {12471#(and (= |inspect_#in~head.offset| (_ bv0 32)) (bvule (bvadd (_ bv4 32) |inspect_#in~head.offset|) (select |#length| |inspect_#in~head.base|)))} is VALID [2022-02-20 23:37:02,660 INFO L290 TraceCheckUtils]: 23: Hoare triple {12471#(and (= |inspect_#in~head.offset| (_ bv0 32)) (bvule (bvadd (_ bv4 32) |inspect_#in~head.offset|) (select |#length| |inspect_#in~head.base|)))} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {12475#(and (bvule (bvadd inspect_~head.offset (_ bv4 32)) (select |#length| inspect_~head.base)) (= inspect_~head.offset (_ bv0 32)))} is VALID [2022-02-20 23:37:02,660 INFO L290 TraceCheckUtils]: 24: Hoare triple {12475#(and (bvule (bvadd inspect_~head.offset (_ bv4 32)) (select |#length| inspect_~head.base)) (= inspect_~head.offset (_ bv0 32)))} assume !(~head.base == 0bv32 && ~head.offset == 0bv32); {12475#(and (bvule (bvadd inspect_~head.offset (_ bv4 32)) (select |#length| inspect_~head.base)) (= inspect_~head.offset (_ bv0 32)))} is VALID [2022-02-20 23:37:02,661 INFO L290 TraceCheckUtils]: 25: Hoare triple {12475#(and (bvule (bvadd inspect_~head.offset (_ bv4 32)) (select |#length| inspect_~head.base)) (= inspect_~head.offset (_ bv0 32)))} goto; {12475#(and (bvule (bvadd inspect_~head.offset (_ bv4 32)) (select |#length| inspect_~head.base)) (= inspect_~head.offset (_ bv0 32)))} is VALID [2022-02-20 23:37:02,661 INFO L290 TraceCheckUtils]: 26: Hoare triple {12475#(and (bvule (bvadd inspect_~head.offset (_ bv4 32)) (select |#length| inspect_~head.base)) (= inspect_~head.offset (_ bv0 32)))} assume !((~bvule32(~bvadd32(4bv32, ~head.offset), #length[~head.base]) && ~bvule32(~head.offset, ~bvadd32(4bv32, ~head.offset))) && ~bvule32(0bv32, ~head.offset)); {12397#false} is VALID [2022-02-20 23:37:02,661 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:37:02,661 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:37:02,661 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:37:02,661 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [827572766] [2022-02-20 23:37:02,661 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [827572766] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:37:02,661 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:37:02,661 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-02-20 23:37:02,662 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2039156877] [2022-02-20 23:37:02,662 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:37:02,662 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 3.4285714285714284) internal successors, (24), 6 states have internal predecessors, (24), 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 27 [2022-02-20 23:37:02,662 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:37:02,662 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 3.4285714285714284) internal successors, (24), 6 states have internal predecessors, (24), 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:37:02,707 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:37:02,707 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 23:37:02,707 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:37:02,708 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 23:37:02,708 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=40, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:37:02,708 INFO L87 Difference]: Start difference. First operand 216 states and 238 transitions. Second operand has 8 states, 7 states have (on average 3.4285714285714284) internal successors, (24), 6 states have internal predecessors, (24), 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:37:05,450 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:05,450 INFO L93 Difference]: Finished difference Result 215 states and 237 transitions. [2022-02-20 23:37:05,450 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-20 23:37:05,450 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 3.4285714285714284) internal successors, (24), 6 states have internal predecessors, (24), 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 27 [2022-02-20 23:37:05,450 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:37:05,451 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 3.4285714285714284) internal successors, (24), 6 states have internal predecessors, (24), 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:37:05,452 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 214 transitions. [2022-02-20 23:37:05,452 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 3.4285714285714284) internal successors, (24), 6 states have internal predecessors, (24), 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:37:05,453 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 214 transitions. [2022-02-20 23:37:05,453 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 214 transitions. [2022-02-20 23:37:05,697 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 214 edges. 214 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:37:05,699 INFO L225 Difference]: With dead ends: 215 [2022-02-20 23:37:05,699 INFO L226 Difference]: Without dead ends: 215 [2022-02-20 23:37:05,700 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 31 GetRequests, 20 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:37:05,700 INFO L933 BasicCegarLoop]: 133 mSDtfsCounter, 499 mSDsluCounter, 347 mSDsCounter, 0 mSdLazyCounter, 432 mSolverCounterSat, 43 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 502 SdHoareTripleChecker+Valid, 480 SdHoareTripleChecker+Invalid, 475 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 43 IncrementalHoareTripleChecker+Valid, 432 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:37:05,700 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [502 Valid, 480 Invalid, 475 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [43 Valid, 432 Invalid, 0 Unknown, 0 Unchecked, 1.0s Time] [2022-02-20 23:37:05,701 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 215 states. [2022-02-20 23:37:05,702 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 215 to 215. [2022-02-20 23:37:05,703 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:37:05,703 INFO L82 GeneralOperation]: Start isEquivalent. First operand 215 states. Second operand has 215 states, 137 states have (on average 1.5255474452554745) internal successors, (209), 202 states have internal predecessors, (209), 21 states have call successors, (21), 6 states have call predecessors, (21), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:37:05,703 INFO L74 IsIncluded]: Start isIncluded. First operand 215 states. Second operand has 215 states, 137 states have (on average 1.5255474452554745) internal successors, (209), 202 states have internal predecessors, (209), 21 states have call successors, (21), 6 states have call predecessors, (21), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:37:05,703 INFO L87 Difference]: Start difference. First operand 215 states. Second operand has 215 states, 137 states have (on average 1.5255474452554745) internal successors, (209), 202 states have internal predecessors, (209), 21 states have call successors, (21), 6 states have call predecessors, (21), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:37:05,706 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:05,706 INFO L93 Difference]: Finished difference Result 215 states and 237 transitions. [2022-02-20 23:37:05,706 INFO L276 IsEmpty]: Start isEmpty. Operand 215 states and 237 transitions. [2022-02-20 23:37:05,706 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:37:05,706 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:37:05,706 INFO L74 IsIncluded]: Start isIncluded. First operand has 215 states, 137 states have (on average 1.5255474452554745) internal successors, (209), 202 states have internal predecessors, (209), 21 states have call successors, (21), 6 states have call predecessors, (21), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 215 states. [2022-02-20 23:37:05,710 INFO L87 Difference]: Start difference. First operand has 215 states, 137 states have (on average 1.5255474452554745) internal successors, (209), 202 states have internal predecessors, (209), 21 states have call successors, (21), 6 states have call predecessors, (21), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 215 states. [2022-02-20 23:37:05,712 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:05,712 INFO L93 Difference]: Finished difference Result 215 states and 237 transitions. [2022-02-20 23:37:05,712 INFO L276 IsEmpty]: Start isEmpty. Operand 215 states and 237 transitions. [2022-02-20 23:37:05,713 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:37:05,713 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:37:05,713 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:37:05,713 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:37:05,714 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 215 states, 137 states have (on average 1.5255474452554745) internal successors, (209), 202 states have internal predecessors, (209), 21 states have call successors, (21), 6 states have call predecessors, (21), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:37:05,716 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 215 states to 215 states and 237 transitions. [2022-02-20 23:37:05,716 INFO L78 Accepts]: Start accepts. Automaton has 215 states and 237 transitions. Word has length 27 [2022-02-20 23:37:05,716 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:37:05,716 INFO L470 AbstractCegarLoop]: Abstraction has 215 states and 237 transitions. [2022-02-20 23:37:05,716 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 3.4285714285714284) internal successors, (24), 6 states have internal predecessors, (24), 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:37:05,716 INFO L276 IsEmpty]: Start isEmpty. Operand 215 states and 237 transitions. [2022-02-20 23:37:05,717 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2022-02-20 23:37:05,717 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:37:05,717 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] [2022-02-20 23:37:05,743 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:37:05,927 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:37:05,927 INFO L402 AbstractCegarLoop]: === Iteration 15 === Targeting failErr0ASSERT_VIOLATIONMEMORY_LEAK === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, failErr0ASSERT_VIOLATIONMEMORY_LEAK, inspectErr0REQUIRES_VIOLATION (and 67 more)] === [2022-02-20 23:37:05,928 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:37:05,928 INFO L85 PathProgramCache]: Analyzing trace with hash -661448180, now seen corresponding path program 1 times [2022-02-20 23:37:05,928 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:37:05,928 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [574710194] [2022-02-20 23:37:05,928 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:37:05,928 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:37:05,928 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:37:05,929 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:37:05,930 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (16)] Waiting until timeout for monitored process [2022-02-20 23:37:06,058 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:06,065 INFO L263 TraceCheckSpWp]: Trace formula consists of 192 conjuncts, 26 conjunts are in the unsatisfiable core [2022-02-20 23:37:06,074 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:06,075 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:37:06,112 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:37:06,113 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 12 treesize of output 12 [2022-02-20 23:37:06,268 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:37:06,337 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:37:06,361 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:37:06,363 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 19 treesize of output 22 [2022-02-20 23:37:06,466 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:37:06,466 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 16 treesize of output 11 [2022-02-20 23:37:06,487 INFO L290 TraceCheckUtils]: 0: Hoare triple {13354#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(22bv32, 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); {13359#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:37:06,487 INFO L290 TraceCheckUtils]: 1: Hoare triple {13359#(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~nondet51#1, gl_read_#t~nondet50#1; {13359#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:37:06,488 INFO L290 TraceCheckUtils]: 2: Hoare triple {13359#(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~nondet51#1;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset, gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset := #Ultimate.allocOnHeap(20bv32);gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset := gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset; {13366#(and (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:37:06,488 INFO L290 TraceCheckUtils]: 3: Hoare triple {13366#(and (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} assume !(gl_insert_~node~1#1.base == 0bv32 && gl_insert_~node~1#1.offset == 0bv32); {13366#(and (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:37:06,491 INFO L290 TraceCheckUtils]: 4: Hoare triple {13366#(and (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset, 4bv32); srcloc: L900-2 {13366#(and (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:37:06,493 INFO L272 TraceCheckUtils]: 5: Hoare triple {13366#(and (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} call list_add(gl_insert_~node~1#1.base, ~bvadd32(4bv32, gl_insert_~node~1#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {13376#(= (_ bv3 32) |~#gl_list~0.base|)} is VALID [2022-02-20 23:37:06,494 INFO L290 TraceCheckUtils]: 6: Hoare triple {13376#(= (_ 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; {13380#(and (= |list_add_~head#1.offset| |list_add_#in~head#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:37:06,495 INFO L290 TraceCheckUtils]: 7: Hoare triple {13380#(and (= |list_add_~head#1.offset| |list_add_#in~head#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~mem46#1.base, #t~mem46#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L890 {13380#(and (= |list_add_~head#1.offset| |list_add_#in~head#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:37:06,495 INFO L290 TraceCheckUtils]: 8: Hoare triple {13380#(and (= |list_add_~head#1.offset| |list_add_#in~head#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~mem46#1.base, #t~mem46#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; {13387#(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|) (= (_ 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:37:06,496 INFO L290 TraceCheckUtils]: 9: Hoare triple {13387#(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|) (= (_ 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: L878 {13387#(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|) (= (_ 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:37:06,496 INFO L290 TraceCheckUtils]: 10: Hoare triple {13387#(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|) (= (_ 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: L878-1 {13387#(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|) (= (_ 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:37:06,497 INFO L290 TraceCheckUtils]: 11: Hoare triple {13387#(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|) (= (_ 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: L879 {13387#(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|) (= (_ 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:37:06,499 INFO L290 TraceCheckUtils]: 12: Hoare triple {13387#(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|) (= (_ 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: L880 {13400#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:37:06,499 INFO L290 TraceCheckUtils]: 13: Hoare triple {13400#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= (_ bv3 32) |~#gl_list~0.base|))} assume { :end_inline___list_add } true;havoc #t~mem46#1.base, #t~mem46#1.offset; {13400#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:37:06,500 INFO L290 TraceCheckUtils]: 14: Hoare triple {13400#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= (_ bv3 32) |~#gl_list~0.base|))} assume true; {13400#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:37:06,501 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {13400#(and (= |list_add_#in~new#1.base| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)) (= (_ bv3 32) |~#gl_list~0.base|))} {13366#(and (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} #549#return; {13410#(and (= (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:37:06,502 INFO L290 TraceCheckUtils]: 16: Hoare triple {13410#(and (= (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} SUMMARY for call write~$Pointer$(gl_insert_~node~1#1.base, ~bvadd32(12bv32, gl_insert_~node~1#1.offset), gl_insert_~node~1#1.base, ~bvadd32(12bv32, gl_insert_~node~1#1.offset), 4bv32); srcloc: L904-2 {13410#(and (= (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:37:06,504 INFO L290 TraceCheckUtils]: 17: Hoare triple {13410#(and (= (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} SUMMARY for call write~$Pointer$(gl_insert_~node~1#1.base, ~bvadd32(12bv32, gl_insert_~node~1#1.offset), gl_insert_~node~1#1.base, ~bvadd32(12bv32, gl_insert_~node~1#1.offset), 4bv32); srcloc: L904 {13417#(and (not (= (_ bv3 32) (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:37:06,504 INFO L290 TraceCheckUtils]: 18: Hoare triple {13417#(and (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ bv3 32) |~#gl_list~0.base|))} goto; {13417#(and (not (= (_ bv3 32) (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:37:06,505 INFO L290 TraceCheckUtils]: 19: Hoare triple {13417#(and (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ bv3 32) |~#gl_list~0.base|))} assume { :end_inline_gl_insert } true;havoc gl_read_#t~nondet51#1; {13417#(and (not (= (_ bv3 32) (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:37:06,505 INFO L290 TraceCheckUtils]: 20: Hoare triple {13417#(and (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ bv3 32) |~#gl_list~0.base|))} assume !(0bv32 != gl_read_#t~nondet50#1);havoc gl_read_#t~nondet50#1; {13417#(and (not (= (_ bv3 32) (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:37:06,506 INFO L290 TraceCheckUtils]: 21: Hoare triple {13417#(and (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ bv3 32) |~#gl_list~0.base|))} assume { :end_inline_gl_read } true; {13417#(and (not (= (_ bv3 32) (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:37:06,509 INFO L272 TraceCheckUtils]: 22: Hoare triple {13417#(and (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ bv3 32) |~#gl_list~0.base|))} call inspect(~#gl_list~0.base, ~#gl_list~0.offset); {13433#(and (= (_ bv3 32) |inspect_#in~head.base|) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| (_ bv3 32)) |inspect_#in~head.offset|))))} is VALID [2022-02-20 23:37:06,510 INFO L290 TraceCheckUtils]: 23: Hoare triple {13433#(and (= (_ bv3 32) |inspect_#in~head.base|) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| (_ bv3 32)) |inspect_#in~head.offset|))))} ~head.base, ~head.offset := #in~head.base, #in~head.offset; {13437#(and (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| (_ bv3 32)) inspect_~head.offset))) (= inspect_~head.base (_ bv3 32)))} is VALID [2022-02-20 23:37:06,511 INFO L290 TraceCheckUtils]: 24: Hoare triple {13437#(and (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| (_ bv3 32)) inspect_~head.offset))) (= inspect_~head.base (_ bv3 32)))} assume !(~head.base == 0bv32 && ~head.offset == 0bv32); {13437#(and (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| (_ bv3 32)) inspect_~head.offset))) (= inspect_~head.base (_ bv3 32)))} is VALID [2022-02-20 23:37:06,511 INFO L290 TraceCheckUtils]: 25: Hoare triple {13437#(and (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| (_ bv3 32)) inspect_~head.offset))) (= inspect_~head.base (_ bv3 32)))} goto; {13437#(and (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| (_ bv3 32)) inspect_~head.offset))) (= inspect_~head.base (_ bv3 32)))} is VALID [2022-02-20 23:37:06,512 INFO L290 TraceCheckUtils]: 26: Hoare triple {13437#(and (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| (_ bv3 32)) inspect_~head.offset))) (= inspect_~head.base (_ bv3 32)))} SUMMARY for call #t~mem31.base, #t~mem31.offset := read~$Pointer$(~head.base, ~head.offset, 4bv32); srcloc: L854-4 {13447#(and (not (= (_ bv3 32) |inspect_#t~mem31.base|)) (= inspect_~head.base (_ bv3 32)))} is VALID [2022-02-20 23:37:06,512 INFO L290 TraceCheckUtils]: 27: Hoare triple {13447#(and (not (= (_ bv3 32) |inspect_#t~mem31.base|)) (= inspect_~head.base (_ bv3 32)))} assume !(#t~mem31.base != ~head.base || #t~mem31.offset != ~head.offset);havoc #t~mem31.base, #t~mem31.offset; {13355#false} is VALID [2022-02-20 23:37:06,512 INFO L272 TraceCheckUtils]: 28: Hoare triple {13355#false} call fail(); {13355#false} is VALID [2022-02-20 23:37:06,512 INFO L290 TraceCheckUtils]: 29: Hoare triple {13355#false} assume !false; {13355#false} is VALID [2022-02-20 23:37:06,513 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:37:06,513 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:37:06,513 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:37:06,513 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [574710194] [2022-02-20 23:37:06,513 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [574710194] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:37:06,513 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:37:06,513 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-02-20 23:37:06,513 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1141033859] [2022-02-20 23:37:06,513 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:37:06,514 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 2.0) internal successors, (26), 10 states have internal predecessors, (26), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 30 [2022-02-20 23:37:06,514 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:37:06,514 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 2.0) internal successors, (26), 10 states have internal predecessors, (26), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:37:06,547 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:37:06,547 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-02-20 23:37:06,547 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:37:06,547 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-02-20 23:37:06,547 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=32, Invalid=124, Unknown=0, NotChecked=0, Total=156 [2022-02-20 23:37:06,548 INFO L87 Difference]: Start difference. First operand 215 states and 237 transitions. Second operand has 13 states, 13 states have (on average 2.0) internal successors, (26), 10 states have internal predecessors, (26), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:37:11,236 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:11,236 INFO L93 Difference]: Finished difference Result 360 states and 397 transitions. [2022-02-20 23:37:11,236 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-02-20 23:37:11,236 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 2.0) internal successors, (26), 10 states have internal predecessors, (26), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 30 [2022-02-20 23:37:11,236 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:37:11,236 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 2.0) internal successors, (26), 10 states have internal predecessors, (26), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:37:11,238 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 384 transitions. [2022-02-20 23:37:11,238 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 2.0) internal successors, (26), 10 states have internal predecessors, (26), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:37:11,240 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 384 transitions. [2022-02-20 23:37:11,240 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 384 transitions. [2022-02-20 23:37:11,599 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 384 edges. 384 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:37:11,605 INFO L225 Difference]: With dead ends: 360 [2022-02-20 23:37:11,605 INFO L226 Difference]: Without dead ends: 360 [2022-02-20 23:37:11,605 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 41 GetRequests, 18 SyntacticMatches, 0 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 90 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=127, Invalid=473, Unknown=0, NotChecked=0, Total=600 [2022-02-20 23:37:11,606 INFO L933 BasicCegarLoop]: 135 mSDtfsCounter, 734 mSDsluCounter, 830 mSDsCounter, 0 mSdLazyCounter, 986 mSolverCounterSat, 87 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 734 SdHoareTripleChecker+Valid, 965 SdHoareTripleChecker+Invalid, 1073 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 87 IncrementalHoareTripleChecker+Valid, 986 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.5s IncrementalHoareTripleChecker+Time [2022-02-20 23:37:11,606 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [734 Valid, 965 Invalid, 1073 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [87 Valid, 986 Invalid, 0 Unknown, 0 Unchecked, 1.5s Time] [2022-02-20 23:37:11,606 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 360 states. [2022-02-20 23:37:11,609 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 360 to 294. [2022-02-20 23:37:11,609 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:37:11,610 INFO L82 GeneralOperation]: Start isEquivalent. First operand 360 states. Second operand has 294 states, 211 states have (on average 1.5545023696682465) internal successors, (328), 277 states have internal predecessors, (328), 24 states have call successors, (24), 8 states have call predecessors, (24), 7 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:37:11,610 INFO L74 IsIncluded]: Start isIncluded. First operand 360 states. Second operand has 294 states, 211 states have (on average 1.5545023696682465) internal successors, (328), 277 states have internal predecessors, (328), 24 states have call successors, (24), 8 states have call predecessors, (24), 7 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:37:11,610 INFO L87 Difference]: Start difference. First operand 360 states. Second operand has 294 states, 211 states have (on average 1.5545023696682465) internal successors, (328), 277 states have internal predecessors, (328), 24 states have call successors, (24), 8 states have call predecessors, (24), 7 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:37:11,615 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:11,616 INFO L93 Difference]: Finished difference Result 360 states and 397 transitions. [2022-02-20 23:37:11,616 INFO L276 IsEmpty]: Start isEmpty. Operand 360 states and 397 transitions. [2022-02-20 23:37:11,616 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:37:11,616 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:37:11,617 INFO L74 IsIncluded]: Start isIncluded. First operand has 294 states, 211 states have (on average 1.5545023696682465) internal successors, (328), 277 states have internal predecessors, (328), 24 states have call successors, (24), 8 states have call predecessors, (24), 7 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) Second operand 360 states. [2022-02-20 23:37:11,617 INFO L87 Difference]: Start difference. First operand has 294 states, 211 states have (on average 1.5545023696682465) internal successors, (328), 277 states have internal predecessors, (328), 24 states have call successors, (24), 8 states have call predecessors, (24), 7 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) Second operand 360 states. [2022-02-20 23:37:11,622 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:11,622 INFO L93 Difference]: Finished difference Result 360 states and 397 transitions. [2022-02-20 23:37:11,623 INFO L276 IsEmpty]: Start isEmpty. Operand 360 states and 397 transitions. [2022-02-20 23:37:11,623 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:37:11,623 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:37:11,623 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:37:11,623 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:37:11,624 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 294 states, 211 states have (on average 1.5545023696682465) internal successors, (328), 277 states have internal predecessors, (328), 24 states have call successors, (24), 8 states have call predecessors, (24), 7 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:37:11,628 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 294 states to 294 states and 362 transitions. [2022-02-20 23:37:11,628 INFO L78 Accepts]: Start accepts. Automaton has 294 states and 362 transitions. Word has length 30 [2022-02-20 23:37:11,628 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:37:11,628 INFO L470 AbstractCegarLoop]: Abstraction has 294 states and 362 transitions. [2022-02-20 23:37:11,628 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 2.0) internal successors, (26), 10 states have internal predecessors, (26), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:37:11,628 INFO L276 IsEmpty]: Start isEmpty. Operand 294 states and 362 transitions. [2022-02-20 23:37:11,629 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-02-20 23:37:11,629 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:37:11,629 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:37:11,653 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (16)] Forceful destruction successful, exit code 0 [2022-02-20 23:37:11,837 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:37:11,837 INFO L402 AbstractCegarLoop]: === Iteration 16 === Targeting list_addErr2REQUIRES_VIOLATION === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, failErr0ASSERT_VIOLATIONMEMORY_LEAK, inspectErr0REQUIRES_VIOLATION (and 67 more)] === [2022-02-20 23:37:11,837 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:37:11,838 INFO L85 PathProgramCache]: Analyzing trace with hash -662300209, now seen corresponding path program 1 times [2022-02-20 23:37:11,838 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:37:11,838 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [874956781] [2022-02-20 23:37:11,838 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:37:11,838 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:37:11,838 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:37:11,839 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:37:11,839 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:37:12,022 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:12,032 INFO L263 TraceCheckSpWp]: Trace formula consists of 237 conjuncts, 37 conjunts are in the unsatisfiable core [2022-02-20 23:37:12,045 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:12,046 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:37:12,088 INFO L356 Elim1Store]: treesize reduction 15, result has 46.4 percent of original size [2022-02-20 23:37:12,089 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 18 treesize of output 25 [2022-02-20 23:37:12,579 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:37:12,798 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:37:12,832 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:37:12,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, 0 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 31 treesize of output 32 [2022-02-20 23:37:12,933 INFO L356 Elim1Store]: treesize reduction 42, result has 44.0 percent of original size [2022-02-20 23:37:12,933 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 4 case distinctions, treesize of input 34 treesize of output 55 [2022-02-20 23:37:13,033 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 36 treesize of output 34 [2022-02-20 23:37:13,377 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 37 treesize of output 21 [2022-02-20 23:37:13,511 INFO L290 TraceCheckUtils]: 0: Hoare triple {14854#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(22bv32, 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); {14859#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:37:13,511 INFO L290 TraceCheckUtils]: 1: Hoare triple {14859#(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~nondet51#1, gl_read_#t~nondet50#1; {14859#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:37:13,512 INFO L290 TraceCheckUtils]: 2: Hoare triple {14859#(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~nondet51#1;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset, gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset := #Ultimate.allocOnHeap(20bv32);gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset := gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset; {14866#(and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:37:13,513 INFO L290 TraceCheckUtils]: 3: Hoare triple {14866#(and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} assume !(gl_insert_~node~1#1.base == 0bv32 && gl_insert_~node~1#1.offset == 0bv32); {14866#(and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:37:13,514 INFO L290 TraceCheckUtils]: 4: Hoare triple {14866#(and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset, 4bv32); srcloc: L900-2 {14866#(and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:37:13,515 INFO L272 TraceCheckUtils]: 5: Hoare triple {14866#(and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} call list_add(gl_insert_~node~1#1.base, ~bvadd32(4bv32, gl_insert_~node~1#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {14876#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|) (_ bv1 1)) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|)))) (= (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:37:13,516 INFO L290 TraceCheckUtils]: 6: Hoare triple {14876#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|) (_ bv1 1)) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|)))) (= (bvneg (select |#valid| (_ bv3 32))) (_ 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; {14880#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|) (_ bv1 1)) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|)))) (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |list_add_#in~head#1.base| |list_add_~head#1.base|) (= (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add_#in~new#1.base| |list_add_~new#1.base|))} is VALID [2022-02-20 23:37:13,516 INFO L290 TraceCheckUtils]: 7: Hoare triple {14880#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|) (_ bv1 1)) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|)))) (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |list_add_#in~head#1.base| |list_add_~head#1.base|) (= (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|) (= |list_add_#in~new#1.base| |list_add_~new#1.base|))} SUMMARY for call #t~mem46#1.base, #t~mem46#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L890 {14884#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|) (_ bv1 1)) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|)))) (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |list_add_#in~head#1.base| |list_add_~head#1.base|) (= (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (= (_ 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:37:13,517 INFO L290 TraceCheckUtils]: 8: Hoare triple {14884#(and (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|) (_ bv1 1)) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|)))) (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |list_add_#in~head#1.base| |list_add_~head#1.base|) (= (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (= (_ 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~mem46#1.base, #t~mem46#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; {14888#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|) (_ bv1 1)) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|)))) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (= (_ 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:37:13,518 INFO L290 TraceCheckUtils]: 9: Hoare triple {14888#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|) (_ bv1 1)) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|)))) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (= (_ 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: L878 {14888#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|) (_ bv1 1)) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|)))) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (= (_ 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:37:13,519 INFO L290 TraceCheckUtils]: 10: Hoare triple {14888#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|) (_ bv1 1)) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|)))) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (= (_ 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: L878-1 {14888#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|) (_ bv1 1)) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|)))) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (= (_ 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:37:13,519 INFO L290 TraceCheckUtils]: 11: Hoare triple {14888#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|) (_ bv1 1)) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|)))) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (= (_ 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: L879 {14888#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|) (_ bv1 1)) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|)))) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (= (_ 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:37:13,521 INFO L290 TraceCheckUtils]: 12: Hoare triple {14888#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|) (_ bv1 1)) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|)))) (= |list_add___list_add_~prev#1.offset| |list_add_#in~head#1.offset|) (= (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (= (_ 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: L880 {14901#(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~1#1.base_BEFORE_CALL_4| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|) (_ bv1 1)) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|)))) (= (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:37:13,522 INFO L290 TraceCheckUtils]: 13: Hoare triple {14901#(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~1#1.base_BEFORE_CALL_4| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|) (_ bv1 1)) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|)))) (= (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|))} assume { :end_inline___list_add } true;havoc #t~mem46#1.base, #t~mem46#1.offset; {14901#(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~1#1.base_BEFORE_CALL_4| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|) (_ bv1 1)) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|)))) (= (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:37:13,522 INFO L290 TraceCheckUtils]: 14: Hoare triple {14901#(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~1#1.base_BEFORE_CALL_4| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|) (_ bv1 1)) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|)))) (= (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|))} assume true; {14901#(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~1#1.base_BEFORE_CALL_4| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|) (_ bv1 1)) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|)))) (= (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:37:13,524 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {14901#(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~1#1.base_BEFORE_CALL_4| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|) (_ bv1 1)) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_4|)))) (= (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|))} {14866#(and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} #549#return; {14911#(and (= (_ bv0 1) (bvadd (bvneg (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (_ bv1 1))) (= (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:37:13,526 INFO L290 TraceCheckUtils]: 16: Hoare triple {14911#(and (= (_ bv0 1) (bvadd (bvneg (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (_ bv1 1))) (= (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} SUMMARY for call write~$Pointer$(gl_insert_~node~1#1.base, ~bvadd32(12bv32, gl_insert_~node~1#1.offset), gl_insert_~node~1#1.base, ~bvadd32(12bv32, gl_insert_~node~1#1.offset), 4bv32); srcloc: L904-2 {14911#(and (= (_ bv0 1) (bvadd (bvneg (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (_ bv1 1))) (= (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:37:13,528 INFO L290 TraceCheckUtils]: 17: Hoare triple {14911#(and (= (_ bv0 1) (bvadd (bvneg (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (_ bv1 1))) (= (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} SUMMARY for call write~$Pointer$(gl_insert_~node~1#1.base, ~bvadd32(12bv32, gl_insert_~node~1#1.offset), gl_insert_~node~1#1.base, ~bvadd32(12bv32, gl_insert_~node~1#1.offset), 4bv32); srcloc: L904 {14918#(and (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ 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:37:13,529 INFO L290 TraceCheckUtils]: 18: Hoare triple {14918#(and (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ 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|))))))} goto; {14918#(and (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ 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:37:13,529 INFO L290 TraceCheckUtils]: 19: Hoare triple {14918#(and (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ 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~nondet51#1; {14918#(and (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ 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:37:13,530 INFO L290 TraceCheckUtils]: 20: Hoare triple {14918#(and (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ 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~nondet50#1);havoc gl_read_#t~nondet50#1; {14918#(and (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ 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:37:13,531 INFO L290 TraceCheckUtils]: 21: Hoare triple {14918#(and (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ 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~nondet51#1;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset, gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset := #Ultimate.allocOnHeap(20bv32);gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset := gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset; {14931#(and (= (bvadd (_ bv1 1) (bvneg (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))) (_ bv0 1)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (bvadd (bvneg (bvneg (bvneg (select |#valid| (_ bv3 32))))) (_ bv1 1)) (_ bv0 1)) (not (= (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:37:13,532 INFO L290 TraceCheckUtils]: 22: Hoare triple {14931#(and (= (bvadd (_ bv1 1) (bvneg (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))) (_ bv0 1)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (bvadd (bvneg (bvneg (bvneg (select |#valid| (_ bv3 32))))) (_ bv1 1)) (_ bv0 1)) (not (= (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} assume !(gl_insert_~node~1#1.base == 0bv32 && gl_insert_~node~1#1.offset == 0bv32); {14931#(and (= (bvadd (_ bv1 1) (bvneg (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))) (_ bv0 1)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (bvadd (bvneg (bvneg (bvneg (select |#valid| (_ bv3 32))))) (_ bv1 1)) (_ bv0 1)) (not (= (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:37:13,535 INFO L290 TraceCheckUtils]: 23: Hoare triple {14931#(and (= (bvadd (_ bv1 1) (bvneg (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))) (_ bv0 1)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (bvadd (bvneg (bvneg (bvneg (select |#valid| (_ bv3 32))))) (_ bv1 1)) (_ bv0 1)) (not (= (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset, 4bv32); srcloc: L900-2 {14938#(and (= (bvadd (_ bv1 1) (bvneg (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))) (_ bv0 1)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (bvadd (bvneg (bvneg (bvneg (select |#valid| (_ bv3 32))))) (_ bv1 1)) (_ bv0 1)) (= (_ bv3 32) |~#gl_list~0.base|) (exists ((|ULTIMATE.start_gl_insert_~node~1#1.base| (_ BitVec 32))) (and (not (= (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))))} is VALID [2022-02-20 23:37:13,536 INFO L272 TraceCheckUtils]: 24: Hoare triple {14938#(and (= (bvadd (_ bv1 1) (bvneg (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))) (_ bv0 1)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (bvadd (bvneg (bvneg (bvneg (select |#valid| (_ bv3 32))))) (_ bv1 1)) (_ bv0 1)) (= (_ bv3 32) |~#gl_list~0.base|) (exists ((|ULTIMATE.start_gl_insert_~node~1#1.base| (_ BitVec 32))) (and (not (= (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))))} call list_add(gl_insert_~node~1#1.base, ~bvadd32(4bv32, gl_insert_~node~1#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {14942#(and (= |list_add_#in~head#1.base| (_ bv3 32)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|))) (= (bvadd (bvneg (bvneg (bvneg (select |#valid| (_ bv3 32))))) (_ bv1 1)) (_ bv0 1)) (exists ((|ULTIMATE.start_gl_insert_~node~1#1.base| (_ BitVec 32))) (and (not (= (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))) (= (bvadd (bvneg (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:37:13,538 INFO L290 TraceCheckUtils]: 25: Hoare triple {14942#(and (= |list_add_#in~head#1.base| (_ bv3 32)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|))) (= (bvadd (bvneg (bvneg (bvneg (select |#valid| (_ bv3 32))))) (_ bv1 1)) (_ bv0 1)) (exists ((|ULTIMATE.start_gl_insert_~node~1#1.base| (_ BitVec 32))) (and (not (= (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))) (= (bvadd (bvneg (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))) (_ bv1 1)) (_ bv0 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; {14946#(and (= (bvadd (bvneg (bvneg (bvneg (select |#valid| (_ bv3 32))))) (_ bv1 1)) (_ bv0 1)) (= |list_add_~head#1.base| (_ bv3 32)) (exists ((|ULTIMATE.start_gl_insert_~node~1#1.base| (_ BitVec 32))) (and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (select (select |#memory_$Pointer$.base| (_ bv3 32)) |list_add_~head#1.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|)))) (not (= (select (select |#memory_$Pointer$.base| (_ bv3 32)) |list_add_~head#1.offset|) (_ bv3 32))) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| (_ bv3 32)) |list_add_~head#1.offset|)))))))} is VALID [2022-02-20 23:37:13,539 INFO L290 TraceCheckUtils]: 26: Hoare triple {14946#(and (= (bvadd (bvneg (bvneg (bvneg (select |#valid| (_ bv3 32))))) (_ bv1 1)) (_ bv0 1)) (= |list_add_~head#1.base| (_ bv3 32)) (exists ((|ULTIMATE.start_gl_insert_~node~1#1.base| (_ BitVec 32))) (and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (select (select |#memory_$Pointer$.base| (_ bv3 32)) |list_add_~head#1.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|)))) (not (= (select (select |#memory_$Pointer$.base| (_ bv3 32)) |list_add_~head#1.offset|) (_ bv3 32))) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| (_ bv3 32)) |list_add_~head#1.offset|)))))))} SUMMARY for call #t~mem46#1.base, #t~mem46#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L890 {14950#(and (= (bvadd (bvneg (bvneg (bvneg (select |#valid| (_ bv3 32))))) (_ bv1 1)) (_ bv0 1)) (exists ((|ULTIMATE.start_gl_insert_~node~1#1.base| (_ BitVec 32))) (and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= |list_add_#t~mem46#1.base| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))) (= (bvadd (bvneg (bvneg (select |#valid| |list_add_#t~mem46#1.base|))) (_ bv1 1)) (_ bv0 1)) (not (= |list_add_#t~mem46#1.base| (_ bv3 32))))} is VALID [2022-02-20 23:37:13,540 INFO L290 TraceCheckUtils]: 27: Hoare triple {14950#(and (= (bvadd (bvneg (bvneg (bvneg (select |#valid| (_ bv3 32))))) (_ bv1 1)) (_ bv0 1)) (exists ((|ULTIMATE.start_gl_insert_~node~1#1.base| (_ BitVec 32))) (and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= |list_add_#t~mem46#1.base| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))) (= (bvadd (bvneg (bvneg (select |#valid| |list_add_#t~mem46#1.base|))) (_ bv1 1)) (_ bv0 1)) (not (= |list_add_#t~mem46#1.base| (_ 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~mem46#1.base, #t~mem46#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; {14954#(and (= (bvadd (bvneg (bvneg (bvneg (select |#valid| (_ bv3 32))))) (_ bv1 1)) (_ bv0 1)) (= (bvadd (bvneg (bvneg (select |#valid| |list_add___list_add_~next#1.base|))) (_ bv1 1)) (_ bv0 1)) (exists ((|ULTIMATE.start_gl_insert_~node~1#1.base| (_ BitVec 32))) (and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= |ULTIMATE.start_gl_insert_~node~1#1.base| |list_add___list_add_~next#1.base|)))) (not (= (_ bv3 32) |list_add___list_add_~next#1.base|)))} is VALID [2022-02-20 23:37:13,541 INFO L290 TraceCheckUtils]: 28: Hoare triple {14954#(and (= (bvadd (bvneg (bvneg (bvneg (select |#valid| (_ bv3 32))))) (_ bv1 1)) (_ bv0 1)) (= (bvadd (bvneg (bvneg (select |#valid| |list_add___list_add_~next#1.base|))) (_ bv1 1)) (_ bv0 1)) (exists ((|ULTIMATE.start_gl_insert_~node~1#1.base| (_ BitVec 32))) (and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= |ULTIMATE.start_gl_insert_~node~1#1.base| |list_add___list_add_~next#1.base|)))) (not (= (_ bv3 32) |list_add___list_add_~next#1.base|)))} assume !(1bv1 == #valid[__list_add_~next#1.base]); {14855#false} is VALID [2022-02-20 23:37:13,542 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 3 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:37:13,542 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:37:13,646 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_493 (Array (_ BitVec 32) (_ BitVec 32)))) (= (select |c_#valid| (select (select (store |c_#memory_$Pointer$.base| |c_ULTIMATE.start_gl_insert_~node~1#1.base| v_ArrVal_493) |c_~#gl_list~0.base|) |c_~#gl_list~0.offset|)) (_ bv1 1))) is different from false [2022-02-20 23:37:13,671 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_493 (Array (_ BitVec 32) (_ BitVec 32))) (|v_ULTIMATE.start_gl_insert_~node~1#1.base_16| (_ BitVec 32))) (or (= (_ bv1 1) (select (store |c_#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_16| (_ bv1 1)) (select (select (store |c_#memory_$Pointer$.base| |v_ULTIMATE.start_gl_insert_~node~1#1.base_16| v_ArrVal_493) |c_~#gl_list~0.base|) |c_~#gl_list~0.offset|))) (not (= (bvneg (select |c_#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_16|)) (_ bv0 1))))) is different from false [2022-02-20 23:37:13,741 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_493 (Array (_ BitVec 32) (_ BitVec 32))) (|v_ULTIMATE.start_gl_insert_~node~1#1.base_16| (_ BitVec 32)) (v_ArrVal_491 (Array (_ BitVec 32) (_ BitVec 32)))) (or (not (= (bvneg (select |c_#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_16|)) (_ bv0 1))) (= (_ bv1 1) (select (store |c_#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_16| (_ bv1 1)) (select (select (store (store |c_#memory_$Pointer$.base| |c_ULTIMATE.start_gl_insert_~node~1#1.base| v_ArrVal_491) |v_ULTIMATE.start_gl_insert_~node~1#1.base_16| v_ArrVal_493) |c_~#gl_list~0.base|) |c_~#gl_list~0.offset|))))) is different from false [2022-02-20 23:37:13,951 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:37:13,952 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 26 treesize of output 27 [2022-02-20 23:37:13,967 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:37:13,971 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 40 treesize of output 32 [2022-02-20 23:37:13,974 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 12 [2022-02-20 23:37:14,052 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:37:14,052 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [874956781] [2022-02-20 23:37:14,053 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [874956781] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:37:14,053 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleCvc4 [1674259367] [2022-02-20 23:37:14,053 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:37:14,053 INFO L173 SolverBuilder]: Constructing external solver with command: cvc4 --incremental --print-success --lang smt [2022-02-20 23:37:14,053 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 [2022-02-20 23:37:14,054 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:37:14,055 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:37:14,439 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:14,445 INFO L263 TraceCheckSpWp]: Trace formula consists of 237 conjuncts, 38 conjunts are in the unsatisfiable core [2022-02-20 23:37:14,460 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:14,461 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:37:14,545 INFO L356 Elim1Store]: treesize reduction 30, result has 45.5 percent of original size [2022-02-20 23:37:14,545 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 4 case distinctions, treesize of input 23 treesize of output 40 [2022-02-20 23:37:15,366 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:37:15,727 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:37:15,758 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:37:15,762 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 39 treesize of output 38 [2022-02-20 23:37:15,944 INFO L356 Elim1Store]: treesize reduction 57, result has 44.1 percent of original size [2022-02-20 23:37:15,945 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 3 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 6 case distinctions, treesize of input 41 treesize of output 72 [2022-02-20 23:37:16,099 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 44 treesize of output 40 [2022-02-20 23:37:16,308 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 36 treesize of output 20 [2022-02-20 23:37:16,409 INFO L290 TraceCheckUtils]: 0: Hoare triple {14854#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(22bv32, 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); {15009#(and (= (_ bv1 1) (select |#valid| (_ bv1 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:37:16,409 INFO L290 TraceCheckUtils]: 1: Hoare triple {15009#(and (= (_ bv1 1) (select |#valid| (_ bv1 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~nondet51#1, gl_read_#t~nondet50#1; {15009#(and (= (_ bv1 1) (select |#valid| (_ bv1 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:37:16,411 INFO L290 TraceCheckUtils]: 2: Hoare triple {15009#(and (= (_ bv1 1) (select |#valid| (_ bv1 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~nondet51#1;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset, gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset := #Ultimate.allocOnHeap(20bv32);gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset := gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset; {15016#(and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= (bvadd (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (_ bv0 1)) (not (= (_ bv1 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:37:16,411 INFO L290 TraceCheckUtils]: 3: Hoare triple {15016#(and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= (bvadd (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (_ bv0 1)) (not (= (_ bv1 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} assume !(gl_insert_~node~1#1.base == 0bv32 && gl_insert_~node~1#1.offset == 0bv32); {15016#(and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= (bvadd (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (_ bv0 1)) (not (= (_ bv1 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:37:16,412 INFO L290 TraceCheckUtils]: 4: Hoare triple {15016#(and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= (bvadd (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (_ bv0 1)) (not (= (_ bv1 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset, 4bv32); srcloc: L900-2 {15016#(and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= (bvadd (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (_ bv0 1)) (not (= (_ bv1 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:37:16,414 INFO L272 TraceCheckUtils]: 5: Hoare triple {15016#(and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= (bvadd (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (_ bv0 1)) (not (= (_ bv1 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} call list_add(gl_insert_~node~1#1.base, ~bvadd32(4bv32, gl_insert_~node~1#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {15026#(and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ bv1 32))) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|)))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= (bvadd (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:37:16,415 INFO L290 TraceCheckUtils]: 6: Hoare triple {15026#(and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ bv1 32))) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|)))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= (bvadd (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (_ bv0 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; {15030#(and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ bv1 32))) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|)))) (= |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|) (= (bvadd (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (_ bv0 1)) (= |list_add_#in~new#1.base| |list_add_~new#1.base|))} is VALID [2022-02-20 23:37:16,416 INFO L290 TraceCheckUtils]: 7: Hoare triple {15030#(and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ bv1 32))) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|)))) (= |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|) (= (bvadd (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (_ bv0 1)) (= |list_add_#in~new#1.base| |list_add_~new#1.base|))} SUMMARY for call #t~mem46#1.base, #t~mem46#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L890 {15034#(and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ bv1 32))) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|)))) (= |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|) (= (bvadd (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (_ bv0 1)) (= |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:37:16,416 INFO L290 TraceCheckUtils]: 8: Hoare triple {15034#(and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ bv1 32))) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|)))) (= |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|) (= (bvadd (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (_ bv0 1)) (= |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~mem46#1.base, #t~mem46#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; {15038#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ bv1 32))) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|)))) (= |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|) (= (bvadd (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (_ bv0 1)) (= |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:37:16,417 INFO L290 TraceCheckUtils]: 9: Hoare triple {15038#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ bv1 32))) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|)))) (= |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|) (= (bvadd (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (_ bv0 1)) (= |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: L878 {15038#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ bv1 32))) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|)))) (= |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|) (= (bvadd (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (_ bv0 1)) (= |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:37:16,418 INFO L290 TraceCheckUtils]: 10: Hoare triple {15038#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ bv1 32))) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|)))) (= |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|) (= (bvadd (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (_ bv0 1)) (= |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: L878-1 {15038#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ bv1 32))) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|)))) (= |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|) (= (bvadd (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (_ bv0 1)) (= |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:37:16,419 INFO L290 TraceCheckUtils]: 11: Hoare triple {15038#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ bv1 32))) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|)))) (= |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|) (= (bvadd (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (_ bv0 1)) (= |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: L879 {15038#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ bv1 32))) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|)))) (= |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|) (= (bvadd (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (_ bv0 1)) (= |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:37:16,432 INFO L290 TraceCheckUtils]: 12: Hoare triple {15038#(and (= |list_add_#in~head#1.base| |list_add___list_add_~prev#1.base|) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ bv1 32))) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|)))) (= |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|) (= (bvadd (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (_ bv0 1)) (= |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: L880 {15051#(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)) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ bv1 32))) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|)))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= (bvadd (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:37:16,433 INFO L290 TraceCheckUtils]: 13: Hoare triple {15051#(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)) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ bv1 32))) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|)))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= (bvadd (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (_ bv0 1)))} assume { :end_inline___list_add } true;havoc #t~mem46#1.base, #t~mem46#1.offset; {15051#(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)) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ bv1 32))) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|)))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= (bvadd (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:37:16,434 INFO L290 TraceCheckUtils]: 14: Hoare triple {15051#(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)) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ bv1 32))) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|)))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= (bvadd (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (_ bv0 1)))} assume true; {15051#(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)) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ bv1 32))) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|)))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= (bvadd (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:37:16,435 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {15051#(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)) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ BitVec 32))) (and (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6| (_ bv1 32))) (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_6|)))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= (bvadd (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (_ bv0 1)))} {15016#(and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= (bvadd (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (_ bv0 1)) (not (= (_ bv1 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} #549#return; {15061#(and (= (_ bv0 1) (bvadd (bvneg (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (_ bv1 1))) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv1 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:37:16,439 INFO L290 TraceCheckUtils]: 16: Hoare triple {15061#(and (= (_ bv0 1) (bvadd (bvneg (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (_ bv1 1))) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv1 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} SUMMARY for call write~$Pointer$(gl_insert_~node~1#1.base, ~bvadd32(12bv32, gl_insert_~node~1#1.offset), gl_insert_~node~1#1.base, ~bvadd32(12bv32, gl_insert_~node~1#1.offset), 4bv32); srcloc: L904-2 {15061#(and (= (_ bv0 1) (bvadd (bvneg (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (_ bv1 1))) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv1 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:37:16,441 INFO L290 TraceCheckUtils]: 17: Hoare triple {15061#(and (= (_ bv0 1) (bvadd (bvneg (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (_ bv1 1))) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv1 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} SUMMARY for call write~$Pointer$(gl_insert_~node~1#1.base, ~bvadd32(12bv32, gl_insert_~node~1#1.offset), gl_insert_~node~1#1.base, ~bvadd32(12bv32, gl_insert_~node~1#1.offset), 4bv32); srcloc: L904 {15068#(and (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv1 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ 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:37:16,442 INFO L290 TraceCheckUtils]: 18: Hoare triple {15068#(and (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv1 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))))} goto; {15068#(and (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv1 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ 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:37:16,443 INFO L290 TraceCheckUtils]: 19: Hoare triple {15068#(and (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv1 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ 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~nondet51#1; {15068#(and (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv1 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ 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:37:16,443 INFO L290 TraceCheckUtils]: 20: Hoare triple {15068#(and (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv1 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ 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~nondet50#1);havoc gl_read_#t~nondet50#1; {15068#(and (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv1 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ 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:37:16,445 INFO L290 TraceCheckUtils]: 21: Hoare triple {15068#(and (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv1 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ 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~nondet51#1;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset, gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset := #Ultimate.allocOnHeap(20bv32);gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset := gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset; {15081#(and (= (bvadd (_ bv1 1) (bvneg (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))) (_ bv0 1)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= (bvadd (bvneg (bvneg (bvneg (select |#valid| (_ bv3 32))))) (_ bv1 1)) (_ bv0 1)) (not (= (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv1 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (not (= (_ bv1 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:37:16,446 INFO L290 TraceCheckUtils]: 22: Hoare triple {15081#(and (= (bvadd (_ bv1 1) (bvneg (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))) (_ bv0 1)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= (bvadd (bvneg (bvneg (bvneg (select |#valid| (_ bv3 32))))) (_ bv1 1)) (_ bv0 1)) (not (= (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv1 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (not (= (_ bv1 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} assume !(gl_insert_~node~1#1.base == 0bv32 && gl_insert_~node~1#1.offset == 0bv32); {15081#(and (= (bvadd (_ bv1 1) (bvneg (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))) (_ bv0 1)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= (bvadd (bvneg (bvneg (bvneg (select |#valid| (_ bv3 32))))) (_ bv1 1)) (_ bv0 1)) (not (= (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv1 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (not (= (_ bv1 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:37:16,449 INFO L290 TraceCheckUtils]: 23: Hoare triple {15081#(and (= (bvadd (_ bv1 1) (bvneg (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))))) (_ bv0 1)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= (bvadd (bvneg (bvneg (bvneg (select |#valid| (_ bv3 32))))) (_ bv1 1)) (_ bv0 1)) (not (= (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv1 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (not (= (_ bv1 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset, 4bv32); srcloc: L900-2 {15068#(and (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv1 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ 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:37:16,451 INFO L272 TraceCheckUtils]: 24: Hoare triple {15068#(and (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv1 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ 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~1#1.base, ~bvadd32(4bv32, gl_insert_~node~1#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {15091#(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)))) (= (_ bv0 32) |list_add_#in~head#1.offset|) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (not (= (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) (_ bv0 32)) (_ bv3 32))) (not (= (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) (_ bv0 32)) (_ bv1 32))))} is VALID [2022-02-20 23:37:16,452 INFO L290 TraceCheckUtils]: 25: Hoare triple {15091#(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)))) (= (_ bv0 32) |list_add_#in~head#1.offset|) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (not (= (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) (_ bv0 32)) (_ bv3 32))) (not (= (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) (_ bv0 32)) (_ bv1 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; {15095#(and (not (= (_ bv1 32) (select (select |#memory_$Pointer$.base| (_ bv3 32)) (_ bv0 32)))) (= (_ 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)))) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= |list_add_~head#1.base| (_ bv3 32)) (= |list_add_~head#1.offset| (_ bv0 32)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| (_ bv3 32)) (_ bv0 32)))))} is VALID [2022-02-20 23:37:16,453 INFO L290 TraceCheckUtils]: 26: Hoare triple {15095#(and (not (= (_ bv1 32) (select (select |#memory_$Pointer$.base| (_ bv3 32)) (_ bv0 32)))) (= (_ 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)))) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= |list_add_~head#1.base| (_ bv3 32)) (= |list_add_~head#1.offset| (_ bv0 32)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| (_ bv3 32)) (_ bv0 32)))))} SUMMARY for call #t~mem46#1.base, #t~mem46#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L890 {15099#(and (not (= |list_add_#t~mem46#1.base| (_ bv1 32))) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| |list_add_#t~mem46#1.base|)))) (not (= |list_add_#t~mem46#1.base| (_ bv3 32))))} is VALID [2022-02-20 23:37:16,453 INFO L290 TraceCheckUtils]: 27: Hoare triple {15099#(and (not (= |list_add_#t~mem46#1.base| (_ bv1 32))) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| (_ bv1 32)))) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| |list_add_#t~mem46#1.base|)))) (not (= |list_add_#t~mem46#1.base| (_ 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~mem46#1.base, #t~mem46#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; {15103#(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)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (not (= (_ bv1 32) |list_add___list_add_~next#1.base|)) (not (= (_ bv3 32) |list_add___list_add_~next#1.base|)))} is VALID [2022-02-20 23:37:16,454 INFO L290 TraceCheckUtils]: 28: Hoare triple {15103#(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)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (not (= (_ bv1 32) |list_add___list_add_~next#1.base|)) (not (= (_ bv3 32) |list_add___list_add_~next#1.base|)))} assume !(1bv1 == #valid[__list_add_~next#1.base]); {14855#false} is VALID [2022-02-20 23:37:16,454 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:37:16,454 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:37:16,557 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_571 (_ BitVec 1)) (|v_ULTIMATE.start_gl_insert_~node~1#1.base_18| (_ BitVec 32)) (v_ArrVal_572 (Array (_ BitVec 32) (_ BitVec 32)))) (or (not (= (_ bv0 1) (bvneg (select |c_#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_18|)))) (= (_ bv1 1) (select (store |c_#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_18| v_ArrVal_571) (select (select (store |c_#memory_$Pointer$.base| |v_ULTIMATE.start_gl_insert_~node~1#1.base_18| v_ArrVal_572) |c_~#gl_list~0.base|) |c_~#gl_list~0.offset|))))) is different from false [2022-02-20 23:37:16,610 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_570 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_571 (_ BitVec 1)) (|v_ULTIMATE.start_gl_insert_~node~1#1.base_18| (_ BitVec 32)) (v_ArrVal_572 (Array (_ BitVec 32) (_ BitVec 32)))) (or (= (_ bv1 1) (select (store |c_#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_18| v_ArrVal_571) (select (select (store (store |c_#memory_$Pointer$.base| |c_ULTIMATE.start_gl_insert_~node~1#1.base| v_ArrVal_570) |v_ULTIMATE.start_gl_insert_~node~1#1.base_18| v_ArrVal_572) |c_~#gl_list~0.base|) |c_~#gl_list~0.offset|))) (not (= (_ bv0 1) (bvneg (select |c_#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_18|)))))) is different from false [2022-02-20 23:37:16,789 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:37:16,789 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 26 treesize of output 27 [2022-02-20 23:37:16,793 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:37:16,796 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 40 treesize of output 32 [2022-02-20 23:37:16,799 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 12 [2022-02-20 23:37:19,058 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleCvc4 [1674259367] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:37:19,058 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:37:19,058 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 14] total 29 [2022-02-20 23:37:19,059 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1783103866] [2022-02-20 23:37:19,059 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:37:19,059 INFO L78 Accepts]: Start accepts. Automaton has has 31 states, 29 states have (on average 1.793103448275862) internal successors, (52), 26 states have internal predecessors, (52), 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 29 [2022-02-20 23:37:19,059 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:37:19,059 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 31 states, 29 states have (on average 1.793103448275862) internal successors, (52), 26 states have internal predecessors, (52), 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:37:19,151 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:37:19,151 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 31 states [2022-02-20 23:37:19,151 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:37:19,152 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 31 interpolants. [2022-02-20 23:37:19,152 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=200, Invalid=1294, Unknown=8, NotChecked=390, Total=1892 [2022-02-20 23:37:19,152 INFO L87 Difference]: Start difference. First operand 294 states and 362 transitions. Second operand has 31 states, 29 states have (on average 1.793103448275862) internal successors, (52), 26 states have internal predecessors, (52), 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:37:25,440 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:25,440 INFO L93 Difference]: Finished difference Result 384 states and 426 transitions. [2022-02-20 23:37:25,440 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-02-20 23:37:25,440 INFO L78 Accepts]: Start accepts. Automaton has has 31 states, 29 states have (on average 1.793103448275862) internal successors, (52), 26 states have internal predecessors, (52), 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 29 [2022-02-20 23:37:25,441 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:37:25,441 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 29 states have (on average 1.793103448275862) internal successors, (52), 26 states have internal predecessors, (52), 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:37:25,443 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 421 transitions. [2022-02-20 23:37:25,443 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 29 states have (on average 1.793103448275862) internal successors, (52), 26 states have internal predecessors, (52), 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:37:25,445 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 421 transitions. [2022-02-20 23:37:25,445 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states and 421 transitions. [2022-02-20 23:37:25,838 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 421 edges. 421 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:37:25,843 INFO L225 Difference]: With dead ends: 384 [2022-02-20 23:37:25,843 INFO L226 Difference]: Without dead ends: 384 [2022-02-20 23:37:25,844 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 93 GetRequests, 43 SyntacticMatches, 1 SemanticMatches, 49 ConstructedPredicates, 5 IntricatePredicates, 0 DeprecatedPredicates, 668 ImplicationChecksByTransitivity, 3.6s TimeCoverageRelationStatistics Valid=298, Invalid=1784, Unknown=8, NotChecked=460, Total=2550 [2022-02-20 23:37:25,844 INFO L933 BasicCegarLoop]: 159 mSDtfsCounter, 454 mSDsluCounter, 2158 mSDsCounter, 0 mSdLazyCounter, 666 mSolverCounterSat, 55 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 458 SdHoareTripleChecker+Valid, 2317 SdHoareTripleChecker+Invalid, 1739 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 55 IncrementalHoareTripleChecker+Valid, 666 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 1018 IncrementalHoareTripleChecker+Unchecked, 1.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:37:25,844 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [458 Valid, 2317 Invalid, 1739 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [55 Valid, 666 Invalid, 0 Unknown, 1018 Unchecked, 1.1s Time] [2022-02-20 23:37:25,844 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 384 states. [2022-02-20 23:37:25,848 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 384 to 294. [2022-02-20 23:37:25,848 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:37:25,848 INFO L82 GeneralOperation]: Start isEquivalent. First operand 384 states. Second operand has 294 states, 211 states have (on average 1.5497630331753554) internal successors, (327), 277 states have internal predecessors, (327), 24 states have call successors, (24), 8 states have call predecessors, (24), 7 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:37:25,849 INFO L74 IsIncluded]: Start isIncluded. First operand 384 states. Second operand has 294 states, 211 states have (on average 1.5497630331753554) internal successors, (327), 277 states have internal predecessors, (327), 24 states have call successors, (24), 8 states have call predecessors, (24), 7 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:37:25,849 INFO L87 Difference]: Start difference. First operand 384 states. Second operand has 294 states, 211 states have (on average 1.5497630331753554) internal successors, (327), 277 states have internal predecessors, (327), 24 states have call successors, (24), 8 states have call predecessors, (24), 7 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:37:25,854 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:25,854 INFO L93 Difference]: Finished difference Result 384 states and 426 transitions. [2022-02-20 23:37:25,854 INFO L276 IsEmpty]: Start isEmpty. Operand 384 states and 426 transitions. [2022-02-20 23:37:25,855 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:37:25,855 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:37:25,855 INFO L74 IsIncluded]: Start isIncluded. First operand has 294 states, 211 states have (on average 1.5497630331753554) internal successors, (327), 277 states have internal predecessors, (327), 24 states have call successors, (24), 8 states have call predecessors, (24), 7 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) Second operand 384 states. [2022-02-20 23:37:25,855 INFO L87 Difference]: Start difference. First operand has 294 states, 211 states have (on average 1.5497630331753554) internal successors, (327), 277 states have internal predecessors, (327), 24 states have call successors, (24), 8 states have call predecessors, (24), 7 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) Second operand 384 states. [2022-02-20 23:37:25,860 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:25,860 INFO L93 Difference]: Finished difference Result 384 states and 426 transitions. [2022-02-20 23:37:25,860 INFO L276 IsEmpty]: Start isEmpty. Operand 384 states and 426 transitions. [2022-02-20 23:37:25,861 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:37:25,861 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:37:25,861 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:37:25,861 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:37:25,862 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 294 states, 211 states have (on average 1.5497630331753554) internal successors, (327), 277 states have internal predecessors, (327), 24 states have call successors, (24), 8 states have call predecessors, (24), 7 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 23:37:25,866 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 294 states to 294 states and 361 transitions. [2022-02-20 23:37:25,866 INFO L78 Accepts]: Start accepts. Automaton has 294 states and 361 transitions. Word has length 29 [2022-02-20 23:37:25,866 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:37:25,867 INFO L470 AbstractCegarLoop]: Abstraction has 294 states and 361 transitions. [2022-02-20 23:37:25,867 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 31 states, 29 states have (on average 1.793103448275862) internal successors, (52), 26 states have internal predecessors, (52), 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:37:25,867 INFO L276 IsEmpty]: Start isEmpty. Operand 294 states and 361 transitions. [2022-02-20 23:37:25,868 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-02-20 23:37:25,868 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:37:25,869 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:37:25,883 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:37:26,080 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:37:26,277 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:37:26,277 INFO L402 AbstractCegarLoop]: === Iteration 17 === Targeting list_addErr3REQUIRES_VIOLATION === [val_from_nodeErr0REQUIRES_VIOLATION, val_from_nodeErr1REQUIRES_VIOLATION, failErr0ASSERT_VIOLATIONMEMORY_LEAK, inspectErr0REQUIRES_VIOLATION (and 67 more)] === [2022-02-20 23:37:26,277 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:37:26,277 INFO L85 PathProgramCache]: Analyzing trace with hash -662300208, now seen corresponding path program 1 times [2022-02-20 23:37:26,278 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:37:26,278 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1263608980] [2022-02-20 23:37:26,278 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:37:26,278 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:37:26,278 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:37:26,279 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:37:26,279 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:37:26,467 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:26,476 INFO L263 TraceCheckSpWp]: Trace formula consists of 237 conjuncts, 53 conjunts are in the unsatisfiable core [2022-02-20 23:37:26,491 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:26,493 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:37:26,524 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:37:26,524 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 12 treesize of output 12 [2022-02-20 23:37:26,529 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:37:26,998 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:37:27,003 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:37:27,216 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:37:27,224 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:37:27,256 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:37:27,256 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 38 treesize of output 37 [2022-02-20 23:37:27,266 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 18 treesize of output 20 [2022-02-20 23:37:27,396 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:37:27,396 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 14 treesize of output 14 [2022-02-20 23:37:27,414 INFO L356 Elim1Store]: treesize reduction 27, result has 25.0 percent of original size [2022-02-20 23:37:27,414 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 1 case distinctions, treesize of input 16 treesize of output 18 [2022-02-20 23:37:27,515 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:37:27,530 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:37:27,703 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 13 [2022-02-20 23:37:27,707 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:37:27,766 INFO L290 TraceCheckUtils]: 0: Hoare triple {16614#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(22bv32, 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); {16619#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:37:27,767 INFO L290 TraceCheckUtils]: 1: Hoare triple {16619#(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~nondet51#1, gl_read_#t~nondet50#1; {16619#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:37:27,768 INFO L290 TraceCheckUtils]: 2: Hoare triple {16619#(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~nondet51#1;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset, gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset := #Ultimate.allocOnHeap(20bv32);gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset := gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset; {16626#(and (= |ULTIMATE.start_gl_insert_~node~1#1.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:37:27,768 INFO L290 TraceCheckUtils]: 3: Hoare triple {16626#(and (= |ULTIMATE.start_gl_insert_~node~1#1.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} assume !(gl_insert_~node~1#1.base == 0bv32 && gl_insert_~node~1#1.offset == 0bv32); {16626#(and (= |ULTIMATE.start_gl_insert_~node~1#1.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:37:27,769 INFO L290 TraceCheckUtils]: 4: Hoare triple {16626#(and (= |ULTIMATE.start_gl_insert_~node~1#1.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset, 4bv32); srcloc: L900-2 {16626#(and (= |ULTIMATE.start_gl_insert_~node~1#1.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:37:27,770 INFO L272 TraceCheckUtils]: 5: Hoare triple {16626#(and (= |ULTIMATE.start_gl_insert_~node~1#1.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} call list_add(gl_insert_~node~1#1.base, ~bvadd32(4bv32, gl_insert_~node~1#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {16636#(and (= (_ bv3 32) |~#gl_list~0.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8| (_ BitVec 32))) (and (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|) (_ bv20 32)))))} is VALID [2022-02-20 23:37:27,771 INFO L290 TraceCheckUtils]: 6: Hoare triple {16636#(and (= (_ bv3 32) |~#gl_list~0.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8| (_ BitVec 32))) (and (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|) (_ bv20 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; {16640#(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|) (= (_ bv3 32) |~#gl_list~0.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8| (_ BitVec 32))) (and (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|) (_ bv20 32)))) (= |list_add_#in~new#1.base| |list_add_~new#1.base|))} is VALID [2022-02-20 23:37:27,771 INFO L290 TraceCheckUtils]: 7: Hoare triple {16640#(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|) (= (_ bv3 32) |~#gl_list~0.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8| (_ BitVec 32))) (and (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|) (_ bv20 32)))) (= |list_add_#in~new#1.base| |list_add_~new#1.base|))} SUMMARY for call #t~mem46#1.base, #t~mem46#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L890 {16644#(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|) (= (_ bv3 32) |~#gl_list~0.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8| (_ BitVec 32))) (and (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|) (_ bv20 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:37:27,772 INFO L290 TraceCheckUtils]: 8: Hoare triple {16644#(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|) (= (_ bv3 32) |~#gl_list~0.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8| (_ BitVec 32))) (and (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|) (_ bv20 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~mem46#1.base, #t~mem46#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; {16648#(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|) (= (_ bv3 32) |~#gl_list~0.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8| (_ BitVec 32))) (and (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|) (_ bv20 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:37:27,773 INFO L290 TraceCheckUtils]: 9: Hoare triple {16648#(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|) (= (_ bv3 32) |~#gl_list~0.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8| (_ BitVec 32))) (and (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|) (_ bv20 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: L878 {16648#(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|) (= (_ bv3 32) |~#gl_list~0.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8| (_ BitVec 32))) (and (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|) (_ bv20 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:37:27,773 INFO L290 TraceCheckUtils]: 10: Hoare triple {16648#(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|) (= (_ bv3 32) |~#gl_list~0.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8| (_ BitVec 32))) (and (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|) (_ bv20 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: L878-1 {16648#(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|) (= (_ bv3 32) |~#gl_list~0.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8| (_ BitVec 32))) (and (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|) (_ bv20 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:37:27,774 INFO L290 TraceCheckUtils]: 11: Hoare triple {16648#(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|) (= (_ bv3 32) |~#gl_list~0.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8| (_ BitVec 32))) (and (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|) (_ bv20 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: L879 {16648#(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|) (= (_ bv3 32) |~#gl_list~0.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8| (_ BitVec 32))) (and (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|) (_ bv20 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:37:27,777 INFO L290 TraceCheckUtils]: 12: Hoare triple {16648#(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|) (= (_ bv3 32) |~#gl_list~0.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8| (_ BitVec 32))) (and (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|) (_ bv20 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: L880 {16661#(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)) (= (_ bv3 32) |~#gl_list~0.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8| (_ BitVec 32))) (and (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|) (_ bv20 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:37:27,777 INFO L290 TraceCheckUtils]: 13: Hoare triple {16661#(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)) (= (_ bv3 32) |~#gl_list~0.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8| (_ BitVec 32))) (and (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|) (_ bv20 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~mem46#1.base, #t~mem46#1.offset; {16661#(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)) (= (_ bv3 32) |~#gl_list~0.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8| (_ BitVec 32))) (and (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|) (_ bv20 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:37:27,778 INFO L290 TraceCheckUtils]: 14: Hoare triple {16661#(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)) (= (_ bv3 32) |~#gl_list~0.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8| (_ BitVec 32))) (and (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|) (_ bv20 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; {16661#(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)) (= (_ bv3 32) |~#gl_list~0.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8| (_ BitVec 32))) (and (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|) (_ bv20 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:37:27,779 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {16661#(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)) (= (_ bv3 32) |~#gl_list~0.base|) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8| (_ BitVec 32))) (and (not (= (_ bv3 32) |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|)) (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_8|) (_ bv20 32)))) (= |list_add_#in~new#1.offset| (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} {16626#(and (= |ULTIMATE.start_gl_insert_~node~1#1.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} #549#return; {16671#(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 (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:37:27,781 INFO L290 TraceCheckUtils]: 16: Hoare triple {16671#(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 (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} SUMMARY for call write~$Pointer$(gl_insert_~node~1#1.base, ~bvadd32(12bv32, gl_insert_~node~1#1.offset), gl_insert_~node~1#1.base, ~bvadd32(12bv32, gl_insert_~node~1#1.offset), 4bv32); srcloc: L904-2 {16671#(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 (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:37:27,782 INFO L290 TraceCheckUtils]: 17: Hoare triple {16671#(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 (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} SUMMARY for call write~$Pointer$(gl_insert_~node~1#1.base, ~bvadd32(12bv32, gl_insert_~node~1#1.offset), gl_insert_~node~1#1.base, ~bvadd32(12bv32, gl_insert_~node~1#1.offset), 4bv32); srcloc: L904 {16678#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv20 32)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (bvadd (_ bv1 1) (select |#valid| |~#gl_list~0.base|)) (_ bv0 1)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:37:27,783 INFO L290 TraceCheckUtils]: 18: Hoare triple {16678#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv20 32)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (bvadd (_ bv1 1) (select |#valid| |~#gl_list~0.base|)) (_ bv0 1)) (= (_ bv3 32) |~#gl_list~0.base|))} goto; {16678#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv20 32)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (bvadd (_ bv1 1) (select |#valid| |~#gl_list~0.base|)) (_ bv0 1)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:37:27,784 INFO L290 TraceCheckUtils]: 19: Hoare triple {16678#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv20 32)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (bvadd (_ bv1 1) (select |#valid| |~#gl_list~0.base|)) (_ bv0 1)) (= (_ bv3 32) |~#gl_list~0.base|))} assume { :end_inline_gl_insert } true;havoc gl_read_#t~nondet51#1; {16678#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv20 32)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (bvadd (_ bv1 1) (select |#valid| |~#gl_list~0.base|)) (_ bv0 1)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:37:27,784 INFO L290 TraceCheckUtils]: 20: Hoare triple {16678#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv20 32)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (bvadd (_ bv1 1) (select |#valid| |~#gl_list~0.base|)) (_ bv0 1)) (= (_ bv3 32) |~#gl_list~0.base|))} assume !!(0bv32 != gl_read_#t~nondet50#1);havoc gl_read_#t~nondet50#1; {16678#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv20 32)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (bvadd (_ bv1 1) (select |#valid| |~#gl_list~0.base|)) (_ bv0 1)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:37:27,785 INFO L290 TraceCheckUtils]: 21: Hoare triple {16678#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv20 32)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (bvadd (_ bv1 1) (select |#valid| |~#gl_list~0.base|)) (_ bv0 1)) (= (_ bv3 32) |~#gl_list~0.base|))} assume { :begin_inline_gl_insert } true;gl_insert_#in~value#1 := gl_read_#t~nondet51#1;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset, gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset := #Ultimate.allocOnHeap(20bv32);gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset := gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset; {16691#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv20 32)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= |~#gl_list~0.base| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:37:27,786 INFO L290 TraceCheckUtils]: 22: Hoare triple {16691#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv20 32)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= |~#gl_list~0.base| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)))} assume !(gl_insert_~node~1#1.base == 0bv32 && gl_insert_~node~1#1.offset == 0bv32); {16691#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv20 32)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= |~#gl_list~0.base| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:37:27,789 INFO L290 TraceCheckUtils]: 23: Hoare triple {16691#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv20 32)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= |~#gl_list~0.base| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset, 4bv32); srcloc: L900-2 {16698#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv20 32)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= (_ bv3 32) (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:37:27,790 INFO L272 TraceCheckUtils]: 24: Hoare triple {16698#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv20 32)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= (_ bv3 32) (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~1#1.base, ~bvadd32(4bv32, gl_insert_~node~1#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {16702#(and (= |list_add_#in~head#1.base| (_ bv3 32)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |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|)) (_ bv20 32)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) |list_add_#in~head#1.offset|)))} is VALID [2022-02-20 23:37:27,791 INFO L290 TraceCheckUtils]: 25: Hoare triple {16702#(and (= |list_add_#in~head#1.base| (_ bv3 32)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |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|)) (_ bv20 32)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |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; {16706#(and (= (select |#length| (select (select |#memory_$Pointer$.base| (_ bv3 32)) |list_add_~head#1.offset|)) (_ bv20 32)) (= |list_add_~head#1.base| (_ bv3 32)) (not (= (select (select |#memory_$Pointer$.base| (_ bv3 32)) |list_add_~head#1.offset|) (_ bv3 32))) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| (_ bv3 32)) |list_add_~head#1.offset|)))} is VALID [2022-02-20 23:37:27,792 INFO L290 TraceCheckUtils]: 26: Hoare triple {16706#(and (= (select |#length| (select (select |#memory_$Pointer$.base| (_ bv3 32)) |list_add_~head#1.offset|)) (_ bv20 32)) (= |list_add_~head#1.base| (_ bv3 32)) (not (= (select (select |#memory_$Pointer$.base| (_ bv3 32)) |list_add_~head#1.offset|) (_ bv3 32))) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| (_ bv3 32)) |list_add_~head#1.offset|)))} SUMMARY for call #t~mem46#1.base, #t~mem46#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L890 {16710#(and (= (_ bv4 32) |list_add_#t~mem46#1.offset|) (not (= |list_add_#t~mem46#1.base| (_ bv3 32))) (= (select |#length| |list_add_#t~mem46#1.base|) (_ bv20 32)))} is VALID [2022-02-20 23:37:27,792 INFO L290 TraceCheckUtils]: 27: Hoare triple {16710#(and (= (_ bv4 32) |list_add_#t~mem46#1.offset|) (not (= |list_add_#t~mem46#1.base| (_ bv3 32))) (= (select |#length| |list_add_#t~mem46#1.base|) (_ bv20 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~mem46#1.base, #t~mem46#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; {16714#(and (= |list_add___list_add_~next#1.offset| (_ bv4 32)) (= (select |#length| |list_add___list_add_~next#1.base|) (_ bv20 32)) (not (= (_ bv3 32) |list_add___list_add_~next#1.base|)))} is VALID [2022-02-20 23:37:27,793 INFO L290 TraceCheckUtils]: 28: Hoare triple {16714#(and (= |list_add___list_add_~next#1.offset| (_ bv4 32)) (= (select |#length| |list_add___list_add_~next#1.base|) (_ bv20 32)) (not (= (_ 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))); {16615#false} is VALID [2022-02-20 23:37:27,793 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:37:27,793 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:37:28,158 WARN L838 $PredicateComparison]: unable to prove that (and (forall ((v_ArrVal_655 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_656 (Array (_ BitVec 32) (_ BitVec 32)))) (bvule (bvadd (_ bv8 32) (select (select (store |c_#memory_$Pointer$.offset| |c_ULTIMATE.start_gl_insert_~node~1#1.base| v_ArrVal_656) |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~1#1.base| v_ArrVal_655) |c_~#gl_list~0.base|) |c_~#gl_list~0.offset|)))) (forall ((v_ArrVal_656 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse0 (select (select (store |c_#memory_$Pointer$.offset| |c_ULTIMATE.start_gl_insert_~node~1#1.base| v_ArrVal_656) |c_~#gl_list~0.base|) |c_~#gl_list~0.offset|))) (bvule (bvadd (_ bv4 32) .cse0) (bvadd (_ bv8 32) .cse0))))) is different from false [2022-02-20 23:37:33,524 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:37:33,524 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 96 treesize of output 77 [2022-02-20 23:37:33,534 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:37:33,534 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 77 treesize of output 77 [2022-02-20 23:37:33,544 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:37:33,568 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 103 treesize of output 95 [2022-02-20 23:37:33,574 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:37:33,734 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 138 treesize of output 118 [2022-02-20 23:37:33,745 INFO L356 Elim1Store]: treesize reduction 5, result has 37.5 percent of original size [2022-02-20 23:37:33,745 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 19 treesize of output 18 [2022-02-20 23:37:33,763 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 107 treesize of output 103 [2022-02-20 23:37:33,770 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 103 treesize of output 99 [2022-02-20 23:37:33,776 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 99 treesize of output 95 [2022-02-20 23:37:34,285 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:37:34,285 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1263608980] [2022-02-20 23:37:34,285 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1263608980] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:37:34,285 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleCvc4 [596358632] [2022-02-20 23:37:34,285 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:37:34,285 INFO L173 SolverBuilder]: Constructing external solver with command: cvc4 --incremental --print-success --lang smt [2022-02-20 23:37:34,285 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 [2022-02-20 23:37:34,286 INFO L229 MonitoredProcess]: Starting monitored process 20 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:37:34,289 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (20)] Waiting until timeout for monitored process [2022-02-20 23:37:34,743 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:34,750 INFO L263 TraceCheckSpWp]: Trace formula consists of 237 conjuncts, 57 conjunts are in the unsatisfiable core [2022-02-20 23:37:34,764 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:34,765 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:37:34,861 INFO L356 Elim1Store]: treesize reduction 15, result has 46.4 percent of original size [2022-02-20 23:37:34,861 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 18 treesize of output 25 [2022-02-20 23:37:34,874 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:37:35,829 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:37:35,835 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:37:36,212 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:37:36,221 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:37:36,301 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:37:36,302 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 50 treesize of output 47 [2022-02-20 23:37:36,311 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 18 treesize of output 20 [2022-02-20 23:37:36,525 INFO L356 Elim1Store]: treesize reduction 19, result has 47.2 percent of original size [2022-02-20 23:37:36,526 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 1 case distinctions, treesize of input 16 treesize of output 26 [2022-02-20 23:37:36,552 INFO L356 Elim1Store]: treesize reduction 8, result has 61.9 percent of original size [2022-02-20 23:37:36,552 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 28 treesize of output 30 [2022-02-20 23:37:36,717 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 32 treesize of output 30 [2022-02-20 23:37:36,737 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 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:37:36,989 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 13 [2022-02-20 23:37:36,996 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:37:37,011 INFO L290 TraceCheckUtils]: 0: Hoare triple {16614#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(22bv32, 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); {16769#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:37:37,012 INFO L290 TraceCheckUtils]: 1: Hoare triple {16769#(and (= (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~nondet51#1, gl_read_#t~nondet50#1; {16769#(and (= (select |#valid| (_ bv3 32)) (_ bv1 1)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:37:37,013 INFO L290 TraceCheckUtils]: 2: Hoare triple {16769#(and (= (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~nondet51#1;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset, gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset := #Ultimate.allocOnHeap(20bv32);gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset := gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset; {16776#(and (= |ULTIMATE.start_gl_insert_~node~1#1.offset| (_ bv0 32)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:37:37,014 INFO L290 TraceCheckUtils]: 3: Hoare triple {16776#(and (= |ULTIMATE.start_gl_insert_~node~1#1.offset| (_ bv0 32)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} assume !(gl_insert_~node~1#1.base == 0bv32 && gl_insert_~node~1#1.offset == 0bv32); {16776#(and (= |ULTIMATE.start_gl_insert_~node~1#1.offset| (_ bv0 32)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:37:37,014 INFO L290 TraceCheckUtils]: 4: Hoare triple {16776#(and (= |ULTIMATE.start_gl_insert_~node~1#1.offset| (_ bv0 32)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset, 4bv32); srcloc: L900-2 {16776#(and (= |ULTIMATE.start_gl_insert_~node~1#1.offset| (_ bv0 32)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:37:37,016 INFO L272 TraceCheckUtils]: 5: Hoare triple {16776#(and (= |ULTIMATE.start_gl_insert_~node~1#1.offset| (_ bv0 32)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} call list_add(gl_insert_~node~1#1.base, ~bvadd32(4bv32, gl_insert_~node~1#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {16786#(and (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv20 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ bv3 32))))) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:37:37,020 INFO L290 TraceCheckUtils]: 6: Hoare triple {16786#(and (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv20 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ bv3 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; {16790#(and (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv20 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ bv3 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:37:37,023 INFO L290 TraceCheckUtils]: 7: Hoare triple {16790#(and (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv20 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ bv3 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~mem46#1.base, #t~mem46#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L890 {16794#(and (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv20 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ bv3 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|) (= (select |#valid| |list_add_~head#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:37:37,025 INFO L290 TraceCheckUtils]: 8: Hoare triple {16794#(and (= |list_add_~head#1.offset| |list_add_#in~head#1.offset|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv20 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ bv3 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|) (= (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~mem46#1.base, #t~mem46#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; {16798#(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)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv20 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ bv3 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|) (= (select |#valid| |list_add___list_add_~prev#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:37:37,027 INFO L290 TraceCheckUtils]: 9: Hoare triple {16798#(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)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv20 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ bv3 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|) (= (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: L878 {16798#(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)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv20 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ bv3 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|) (= (select |#valid| |list_add___list_add_~prev#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:37:37,029 INFO L290 TraceCheckUtils]: 10: Hoare triple {16798#(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)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv20 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ bv3 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|) (= (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: L878-1 {16798#(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)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv20 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ bv3 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|) (= (select |#valid| |list_add___list_add_~prev#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:37:37,031 INFO L290 TraceCheckUtils]: 11: Hoare triple {16798#(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)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv20 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ bv3 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|) (= (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: L879 {16798#(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)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv20 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ bv3 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|) (= (select |#valid| |list_add___list_add_~prev#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:37:37,032 INFO L290 TraceCheckUtils]: 12: Hoare triple {16798#(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)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv20 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ bv3 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|) (= (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: L880 {16811#(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)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv20 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ bv3 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:37:37,033 INFO L290 TraceCheckUtils]: 13: Hoare triple {16811#(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)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv20 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ bv3 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~mem46#1.base, #t~mem46#1.offset; {16811#(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)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv20 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ bv3 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:37:37,034 INFO L290 TraceCheckUtils]: 14: Hoare triple {16811#(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)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv20 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ bv3 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; {16811#(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)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv20 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ bv3 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:37:37,035 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {16811#(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)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (exists ((|v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ BitVec 32))) (and (= (select |#length| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv20 32)) (= (select |#valid| |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10|) (_ bv1 1)) (not (= |v_ULTIMATE.start_gl_insert_~node~1#1.base_BEFORE_CALL_10| (_ bv3 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|)))} {16776#(and (= |ULTIMATE.start_gl_insert_~node~1#1.offset| (_ bv0 32)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (bvneg (select |#valid| (_ bv3 32))) (_ bv1 1)) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} #549#return; {16821#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (_ bv0 1) (bvadd (bvneg (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (_ bv1 1))) (= (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:37:37,037 INFO L290 TraceCheckUtils]: 16: Hoare triple {16821#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (_ bv0 1) (bvadd (bvneg (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (_ bv1 1))) (= (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} SUMMARY for call write~$Pointer$(gl_insert_~node~1#1.base, ~bvadd32(12bv32, gl_insert_~node~1#1.offset), gl_insert_~node~1#1.base, ~bvadd32(12bv32, gl_insert_~node~1#1.offset), 4bv32); srcloc: L904-2 {16821#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (_ bv0 1) (bvadd (bvneg (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (_ bv1 1))) (= (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:37:37,039 INFO L290 TraceCheckUtils]: 17: Hoare triple {16821#(and (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (= (_ bv0 1) (bvadd (bvneg (select |#valid| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (_ bv1 1))) (= (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ bv3 32) |~#gl_list~0.base|) (= (_ bv20 32) (select |#length| |ULTIMATE.start_gl_insert_~node~1#1.base|)) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} SUMMARY for call write~$Pointer$(gl_insert_~node~1#1.base, ~bvadd32(12bv32, gl_insert_~node~1#1.offset), gl_insert_~node~1#1.base, ~bvadd32(12bv32, gl_insert_~node~1#1.offset), 4bv32); srcloc: L904 {16828#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv20 32)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ 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:37:37,040 INFO L290 TraceCheckUtils]: 18: Hoare triple {16828#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv20 32)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ 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|))))))} goto; {16828#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv20 32)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ 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:37:37,040 INFO L290 TraceCheckUtils]: 19: Hoare triple {16828#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv20 32)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ 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~nondet51#1; {16828#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv20 32)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ 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:37:37,040 INFO L290 TraceCheckUtils]: 20: Hoare triple {16828#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv20 32)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ 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~nondet50#1);havoc gl_read_#t~nondet50#1; {16828#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv20 32)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ 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:37:37,042 INFO L290 TraceCheckUtils]: 21: Hoare triple {16828#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv20 32)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (bvneg (select |#valid| (_ bv3 32)))) (_ bv1 1))) (= (_ 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~nondet51#1;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset, gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset;gl_insert_~value#1 := gl_insert_#in~value#1;call gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset := #Ultimate.allocOnHeap(20bv32);gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset := gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset;havoc gl_insert_#t~malloc49#1.base, gl_insert_#t~malloc49#1.offset; {16841#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv20 32)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (not (= (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:37:37,042 INFO L290 TraceCheckUtils]: 22: Hoare triple {16841#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv20 32)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (not (= (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} assume !(gl_insert_~node~1#1.base == 0bv32 && gl_insert_~node~1#1.offset == 0bv32); {16841#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv20 32)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (not (= (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} is VALID [2022-02-20 23:37:37,045 INFO L290 TraceCheckUtils]: 23: Hoare triple {16841#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv20 32)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (not (= (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|) |ULTIMATE.start_gl_insert_~node~1#1.base|)) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|) (not (= (_ bv3 32) |ULTIMATE.start_gl_insert_~node~1#1.base|)))} SUMMARY for call write~intINTTYPE4(gl_insert_~value#1, gl_insert_~node~1#1.base, gl_insert_~node~1#1.offset, 4bv32); srcloc: L900-2 {16848#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv20 32)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} is VALID [2022-02-20 23:37:37,046 INFO L272 TraceCheckUtils]: 24: Hoare triple {16848#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (_ bv20 32)) (= (_ bv4 32) (select (select |#memory_$Pointer$.offset| |~#gl_list~0.base|) |~#gl_list~0.offset|)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| |~#gl_list~0.base|) |~#gl_list~0.offset|))) (= |~#gl_list~0.offset| (_ bv0 32)) (= (_ bv3 32) |~#gl_list~0.base|))} call list_add(gl_insert_~node~1#1.base, ~bvadd32(4bv32, gl_insert_~node~1#1.offset), ~#gl_list~0.base, ~#gl_list~0.offset); {16852#(and (= |list_add_#in~head#1.base| (_ bv3 32)) (= (_ bv0 32) |list_add_#in~head#1.offset|) (not (= (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) (_ bv0 32)) (_ bv3 32))) (= (select |#length| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) (_ bv0 32))) (_ bv20 32)) (= (select (select |#memory_$Pointer$.offset| |list_add_#in~head#1.base|) (_ bv0 32)) (_ bv4 32)))} is VALID [2022-02-20 23:37:37,047 INFO L290 TraceCheckUtils]: 25: Hoare triple {16852#(and (= |list_add_#in~head#1.base| (_ bv3 32)) (= (_ bv0 32) |list_add_#in~head#1.offset|) (not (= (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) (_ bv0 32)) (_ bv3 32))) (= (select |#length| (select (select |#memory_$Pointer$.base| |list_add_#in~head#1.base|) (_ bv0 32))) (_ bv20 32)) (= (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; {16856#(and (= (select |#length| (select (select |#memory_$Pointer$.base| (_ bv3 32)) (_ bv0 32))) (_ bv20 32)) (= (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)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| (_ bv3 32)) (_ bv0 32)))))} is VALID [2022-02-20 23:37:37,047 INFO L290 TraceCheckUtils]: 26: Hoare triple {16856#(and (= (select |#length| (select (select |#memory_$Pointer$.base| (_ bv3 32)) (_ bv0 32))) (_ bv20 32)) (= (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)) (not (= (_ bv3 32) (select (select |#memory_$Pointer$.base| (_ bv3 32)) (_ bv0 32)))))} SUMMARY for call #t~mem46#1.base, #t~mem46#1.offset := read~$Pointer$(~head#1.base, ~head#1.offset, 4bv32); srcloc: L890 {16710#(and (= (_ bv4 32) |list_add_#t~mem46#1.offset|) (not (= |list_add_#t~mem46#1.base| (_ bv3 32))) (= (select |#length| |list_add_#t~mem46#1.base|) (_ bv20 32)))} is VALID [2022-02-20 23:37:37,048 INFO L290 TraceCheckUtils]: 27: Hoare triple {16710#(and (= (_ bv4 32) |list_add_#t~mem46#1.offset|) (not (= |list_add_#t~mem46#1.base| (_ bv3 32))) (= (select |#length| |list_add_#t~mem46#1.base|) (_ bv20 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~mem46#1.base, #t~mem46#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; {16714#(and (= |list_add___list_add_~next#1.offset| (_ bv4 32)) (= (select |#length| |list_add___list_add_~next#1.base|) (_ bv20 32)) (not (= (_ bv3 32) |list_add___list_add_~next#1.base|)))} is VALID [2022-02-20 23:37:37,048 INFO L290 TraceCheckUtils]: 28: Hoare triple {16714#(and (= |list_add___list_add_~next#1.offset| (_ bv4 32)) (= (select |#length| |list_add___list_add_~next#1.base|) (_ bv20 32)) (not (= (_ 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))); {16615#false} is VALID [2022-02-20 23:37:37,049 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:37:37,049 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:37:37,134 WARN L838 $PredicateComparison]: unable to prove that (and (forall ((v_ArrVal_745 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse0 (select (select (store |c_#memory_$Pointer$.offset| |c_ULTIMATE.start_gl_insert_~node~1#1.base| v_ArrVal_745) |c_~#gl_list~0.base|) |c_~#gl_list~0.offset|))) (bvule (bvadd (_ bv4 32) .cse0) (bvadd (_ bv8 32) .cse0)))) (forall ((v_ArrVal_744 (Array (_ BitVec 32) (_ BitVec 32))) (v_ArrVal_745 (Array (_ BitVec 32) (_ BitVec 32)))) (bvule (bvadd (_ bv8 32) (select (select (store |c_#memory_$Pointer$.offset| |c_ULTIMATE.start_gl_insert_~node~1#1.base| v_ArrVal_745) |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~1#1.base| v_ArrVal_744) |c_~#gl_list~0.base|) |c_~#gl_list~0.offset|))))) is different from false